FastEcslent::Group Class Reference

#include <group.h>

List of all members.

Public Member Functions

 Group (Engine *eng, Identity id)
 Group (Engine *eng, Entity **ents, int nEntsInGroup, Identity id)
 Group (Engine *eng, Entity **ents, int nEntsInGroup, std::string name, Identity id)
void reset (Engine *eng)
void setName (std::string name)
void setMembers (Entity **ents, int nEntsInGroup)
void addMember (Entity *ent)
bool isMember (Entity *ent)
void setLeaderByIndex (int i)
EntitygetLeaderByIndex ()
void print ()
void resetAspect (GroupAspectType gat, GroupAspect *gasp)
void addAspect (GroupAspect *gasp)
int findAspect (GroupAspectType gat)
GroupAspectgetAspect (GroupAspectType index)
void init ()
void tick (double dt)
 Group (Engine *eng, Identity id)
 Group (Engine *eng, Entity **ents, int nEntsInGroup, Identity id)
 Group (Engine *eng, Entity **ents, int nEntsInGroup, std::string name, Identity id)
void reset (Engine *eng)
void setName (std::string name)
void setMembers (Entity **ents, int nEntsInGroup)
void addMember (Entity *ent)
bool isMember (Entity *ent)
void setLeaderByIndex (int i)
EntitygetLeaderByIndex ()
void print ()
void resetAspect (GroupAspectType gat, GroupAspect *gasp)
void addAspect (GroupAspect *gasp)
int findAspect (GroupAspectType gat)
GroupAspectgetAspect (GroupAspectType index)
void init ()
void tick (double dt)
 Group (Engine *eng, Identity id)
 Group (Engine *eng, Entity **ents, int nEntsInGroup, Identity id)
 Group (Engine *eng, Entity **ents, int nEntsInGroup, std::string name, Identity id)
void reset (Engine *eng)
void setName (std::string name)
void setMembers (Entity **ents, int nEntsInGroup)
void addMember (Entity *ent)
bool isMember (Entity *ent)
void setLeaderByIndex (int i)
EntitygetLeaderByIndex ()
void print ()
void resetAspect (GroupAspectType gat, GroupAspect *gasp)
void addAspect (GroupAspect *gasp)
int findAspect (GroupAspectType gat)
GroupAspectgetAspect (GroupAspectType index)
void init ()
void tick (double dt)
 Group (Engine *eng, Identity id)
 Group (Engine *eng, Entity **ents, int nEntsInGroup, Identity id)
 Group (Engine *eng, Entity **ents, int nEntsInGroup, std::string name, Identity id)
void reset (Engine *eng)
void setName (std::string name)
void setMembers (Entity **ents, int nEntsInGroup)
void addMember (Entity *ent)
bool isMember (Entity *ent)
void setLeaderByIndex (int i)
EntitygetLeaderByIndex ()
void print ()
void resetAspect (GroupAspectType gat, GroupAspect *gasp)
void addAspect (GroupAspect *gasp)
int findAspect (GroupAspectType gat)
GroupAspectgetAspect (GroupAspectType index)
void init ()
void tick (double dt)
 Group (Engine *eng, Identity id)
 Group (Engine *eng, Entity **ents, int nEntsInGroup, Identity id)
 Group (Engine *eng, Entity **ents, int nEntsInGroup, std::string name, Identity id)
void reset (Engine *eng)
void setName (std::string name)
void setMembers (Entity **ents, int nEntsInGroup)
void addMember (Entity *ent)
bool isMember (Entity *ent)
void setLeaderByIndex (int i)
EntitygetLeaderByIndex ()
void print ()
void resetAspect (GroupAspectType gat, GroupAspect *gasp)
void addAspect (GroupAspect *gasp)
int findAspect (GroupAspectType gat)
GroupAspectgetAspect (GroupAspectType index)
void init ()
void tick (double dt)

Public Attributes

Engineengine
Entitymembers [MaxEnts]
std::string groupName
int leaderIndex
int nEntitiesInGroup
Identity gid
std::deque< GroupAspect * > aspects
Engineengine
Entitymembers [MaxEnts]
std::deque< GroupAspect * > aspects
Engineengine
Entitymembers [MaxEnts]
std::deque< GroupAspect * > aspects
Engineengine
Entitymembers [MaxEnts]
std::deque< GroupAspect * > aspects
Engineengine
Entitymembers [MaxEnts]
std::deque< GroupAspect * > aspects

Private Member Functions

std::string createGroupName (Identity gid)
std::string createGroupName (Identity gid)
std::string createGroupName (Identity gid)
std::string createGroupName (Identity gid)
std::string createGroupName (Identity gid)


Detailed Description

Definition at line 26 of file group.h.


Constructor & Destructor Documentation

FastEcslent::Group::Group ( Engine eng,
FastEcslent::Identity  id 
)

Definition at line 59 of file group.cpp.

References createGroupName(), gid, groupName, and reset().

FastEcslent::Group::Group ( Engine eng,
Entity **  ents,
int  nEntsInGroup,
Identity  id 
)

Definition at line 66 of file group.cpp.

References createGroupName(), gid, groupName, reset(), and setMembers().

FastEcslent::Group::Group ( Engine eng,
Entity **  ents,
int  nEntsInGroup,
std::string  name,
Identity  id 
)

Definition at line 73 of file group.cpp.

References gid, groupName, reset(), and setMembers().

FastEcslent::Group::Group ( Engine eng,
Identity  id 
)

FastEcslent::Group::Group ( Engine eng,
Entity **  ents,
int  nEntsInGroup,
Identity  id 
)

FastEcslent::Group::Group ( Engine eng,
Entity **  ents,
int  nEntsInGroup,
std::string  name,
Identity  id 
)

FastEcslent::Group::Group ( Engine eng,
Identity  id 
)

FastEcslent::Group::Group ( Engine eng,
Entity **  ents,
int  nEntsInGroup,
Identity  id 
)

FastEcslent::Group::Group ( Engine eng,
Entity **  ents,
int  nEntsInGroup,
std::string  name,
Identity  id 
)

FastEcslent::Group::Group ( Engine eng,
Identity  id 
)

FastEcslent::Group::Group ( Engine eng,
Entity **  ents,
int  nEntsInGroup,
Identity  id 
)

FastEcslent::Group::Group ( Engine eng,
Entity **  ents,
int  nEntsInGroup,
std::string  name,
Identity  id 
)

FastEcslent::Group::Group ( Engine eng,
Identity  id 
)

FastEcslent::Group::Group ( Engine eng,
Entity **  ents,
int  nEntsInGroup,
Identity  id 
)

FastEcslent::Group::Group ( Engine eng,
Entity **  ents,
int  nEntsInGroup,
std::string  name,
Identity  id 
)


Member Function Documentation

std::string FastEcslent::Group::createGroupName ( Identity  gid  )  [private]

Definition at line 18 of file group.cpp.

References FastEcslent::Identity::id.

Referenced by Group().

void FastEcslent::Group::reset ( Engine eng  ) 

Definition at line 52 of file group.cpp.

References aspects, engine, leaderIndex, and nEntitiesInGroup.

Referenced by Group().

void FastEcslent::Group::setName ( std::string  name  ) 

Definition at line 24 of file group.cpp.

References groupName.

void FastEcslent::Group::setMembers ( Entity **  ents,
int  nEntsInGroup 
)

Definition at line 28 of file group.cpp.

References members, and nEntitiesInGroup.

Referenced by Group().

void FastEcslent::Group::addMember ( Entity ent  ) 

Definition at line 36 of file group.cpp.

References DEBUG, members, nEntitiesInGroup, and FastEcslent::Entity::uiname.

bool FastEcslent::Group::isMember ( Entity ent  ) 

Definition at line 43 of file group.cpp.

References FastEcslent::Entity::entityId, FastEcslent::Identity::id, and nEntitiesInGroup.

Referenced by FastEcslent::GroupMgr::findIfExists().

void FastEcslent::Group::setLeaderByIndex ( int  i  )  [inline]

Definition at line 54 of file group.h.

References leaderIndex, and nEntitiesInGroup.

Referenced by OgreGFX::UIMgr::CommandMove().

Entity* FastEcslent::Group::getLeaderByIndex (  )  [inline]

Definition at line 55 of file group.h.

References leaderIndex, and members.

void FastEcslent::Group::print (  ) 

Definition at line 93 of file group.cpp.

References DEBUG, gid, FastEcslent::Identity::id, members, nEntitiesInGroup, and FastEcslent::Entity::print().

Referenced by FastEcslent::GroupMgr::dumpAll(), and FastEcslent::GroupMgr::dumpOne().

void FastEcslent::Group::resetAspect ( GroupAspectType  gat,
FastEcslent::GroupAspect asp 
)

Definition at line 109 of file group.cpp.

References addAspect(), aspects, findAspect(), FastEcslent::GroupAspect::init(), and FastEcslent::NGROUPASPECTTYPES.

void FastEcslent::Group::addAspect ( FastEcslent::GroupAspect asp  ) 

Definition at line 134 of file group.cpp.

References aspects, and FastEcslent::GroupAspect::init().

Referenced by OgreGFX::UIMgr::CommandMove(), and resetAspect().

int FastEcslent::Group::findAspect ( GroupAspectType  gat  ) 

Definition at line 121 of file group.cpp.

References aspects.

Referenced by getAspect(), and resetAspect().

FastEcslent::GroupAspect * FastEcslent::Group::getAspect ( GroupAspectType  index  ) 

Definition at line 100 of file group.cpp.

References aspects, and findAspect().

void FastEcslent::Group::init ( void   ) 

Definition at line 80 of file group.cpp.

References aspects.

Referenced by FastEcslent::GroupMgr::init().

void FastEcslent::Group::tick ( double  dt  ) 

Definition at line 87 of file group.cpp.

References aspects.

Referenced by FastEcslent::GroupMgr::tick().

std::string FastEcslent::Group::createGroupName ( Identity  gid  )  [private]

void FastEcslent::Group::reset ( Engine eng  ) 

void FastEcslent::Group::setName ( std::string  name  ) 

void FastEcslent::Group::setMembers ( Entity **  ents,
int  nEntsInGroup 
)

void FastEcslent::Group::addMember ( Entity ent  ) 

bool FastEcslent::Group::isMember ( Entity ent  ) 

void FastEcslent::Group::setLeaderByIndex ( int  i  )  [inline]

Definition at line 54 of file group.h.

References leaderIndex, and nEntitiesInGroup.

Entity* FastEcslent::Group::getLeaderByIndex (  )  [inline]

Definition at line 55 of file group.h.

References leaderIndex, and members.

void FastEcslent::Group::print (  ) 

void FastEcslent::Group::resetAspect ( GroupAspectType  gat,
GroupAspect gasp 
)

void FastEcslent::Group::addAspect ( GroupAspect gasp  ) 

int FastEcslent::Group::findAspect ( GroupAspectType  gat  ) 

GroupAspect* FastEcslent::Group::getAspect ( GroupAspectType  index  ) 

void FastEcslent::Group::init (  ) 

void FastEcslent::Group::tick ( double  dt  ) 

std::string FastEcslent::Group::createGroupName ( Identity  gid  )  [private]

void FastEcslent::Group::reset ( Engine eng  ) 

void FastEcslent::Group::setName ( std::string  name  ) 

void FastEcslent::Group::setMembers ( Entity **  ents,
int  nEntsInGroup 
)

void FastEcslent::Group::addMember ( Entity ent  ) 

bool FastEcslent::Group::isMember ( Entity ent  ) 

void FastEcslent::Group::setLeaderByIndex ( int  i  )  [inline]

Definition at line 54 of file group.h.

References leaderIndex, and nEntitiesInGroup.

Entity* FastEcslent::Group::getLeaderByIndex (  )  [inline]

Definition at line 55 of file group.h.

References leaderIndex, and members.

void FastEcslent::Group::print (  ) 

void FastEcslent::Group::resetAspect ( GroupAspectType  gat,
GroupAspect gasp 
)

void FastEcslent::Group::addAspect ( GroupAspect gasp  ) 

int FastEcslent::Group::findAspect ( GroupAspectType  gat  ) 

GroupAspect* FastEcslent::Group::getAspect ( GroupAspectType  index  ) 

void FastEcslent::Group::init (  ) 

void FastEcslent::Group::tick ( double  dt  ) 

std::string FastEcslent::Group::createGroupName ( Identity  gid  )  [private]

void FastEcslent::Group::reset ( Engine eng  ) 

void FastEcslent::Group::setName ( std::string  name  ) 

void FastEcslent::Group::setMembers ( Entity **  ents,
int  nEntsInGroup 
)

void FastEcslent::Group::addMember ( Entity ent  ) 

bool FastEcslent::Group::isMember ( Entity ent  ) 

void FastEcslent::Group::setLeaderByIndex ( int  i  )  [inline]

Definition at line 54 of file group.h.

References leaderIndex, and nEntitiesInGroup.

Entity* FastEcslent::Group::getLeaderByIndex (  )  [inline]

Definition at line 55 of file group.h.

References leaderIndex, and members.

void FastEcslent::Group::print (  ) 

void FastEcslent::Group::resetAspect ( GroupAspectType  gat,
GroupAspect gasp 
)

void FastEcslent::Group::addAspect ( GroupAspect gasp  ) 

int FastEcslent::Group::findAspect ( GroupAspectType  gat  ) 

GroupAspect* FastEcslent::Group::getAspect ( GroupAspectType  index  ) 

void FastEcslent::Group::init (  ) 

void FastEcslent::Group::tick ( double  dt  ) 

std::string FastEcslent::Group::createGroupName ( Identity  gid  )  [private]

void FastEcslent::Group::reset ( Engine eng  ) 

void FastEcslent::Group::setName ( std::string  name  ) 

void FastEcslent::Group::setMembers ( Entity **  ents,
int  nEntsInGroup 
)

void FastEcslent::Group::addMember ( Entity ent  ) 

bool FastEcslent::Group::isMember ( Entity ent  ) 

void FastEcslent::Group::setLeaderByIndex ( int  i  )  [inline]

Definition at line 54 of file group.h.

References leaderIndex, and nEntitiesInGroup.

Entity* FastEcslent::Group::getLeaderByIndex (  )  [inline]

Definition at line 55 of file group.h.

References leaderIndex, and members.

void FastEcslent::Group::print (  ) 

void FastEcslent::Group::resetAspect ( GroupAspectType  gat,
GroupAspect gasp 
)

void FastEcslent::Group::addAspect ( GroupAspect gasp  ) 

int FastEcslent::Group::findAspect ( GroupAspectType  gat  ) 

GroupAspect* FastEcslent::Group::getAspect ( GroupAspectType  index  ) 

void FastEcslent::Group::init (  ) 

void FastEcslent::Group::tick ( double  dt  ) 


Member Data Documentation

Engine* FastEcslent::Group::engine

Definition at line 32 of file group.h.

Referenced by FastEcslent::Flock::init(), and reset().

Entity* FastEcslent::Group::members[MaxEnts]

Definition at line 33 of file group.h.

Referenced by addMember(), FastEcslent::Tactic::closestToTarget(), OgreGFX::UIMgr::CommandMove(), FastEcslent::GroupMgr::findIfExists(), getLeaderByIndex(), FastEcslent::Flock::init(), FastEcslent::Tactic::mostMassive(), print(), and setMembers().

std::string FastEcslent::Group::groupName

Definition at line 34 of file group.h.

Referenced by Group(), and setName().

int FastEcslent::Group::leaderIndex

Definition at line 36 of file group.h.

Referenced by FastEcslent::Tactic::changeLeadership(), getLeaderByIndex(), FastEcslent::Flock::init(), reset(), setLeaderByIndex(), and FastEcslent::Flock::tick().

int FastEcslent::Group::nEntitiesInGroup

Definition at line 37 of file group.h.

Referenced by addMember(), FastEcslent::Tactic::closestToTarget(), OgreGFX::UIMgr::CommandMove(), FastEcslent::GroupMgr::findIfExists(), FastEcslent::Flock::init(), isMember(), FastEcslent::Tactic::mostMassive(), print(), reset(), setLeaderByIndex(), and setMembers().

Identity FastEcslent::Group::gid

Definition at line 38 of file group.h.

Referenced by Group(), and print().

std::deque<GroupAspect*> FastEcslent::Group::aspects

Definition at line 39 of file group.h.

Referenced by addAspect(), findAspect(), getAspect(), init(), reset(), resetAspect(), and tick().

Engine* FastEcslent::Group::engine

Definition at line 32 of file group.h.

Entity* FastEcslent::Group::members[MaxEnts]

Definition at line 33 of file group.h.

std::deque<GroupAspect*> FastEcslent::Group::aspects

Definition at line 39 of file group.h.

Engine* FastEcslent::Group::engine

Definition at line 32 of file group.h.

Entity* FastEcslent::Group::members[MaxEnts]

Definition at line 33 of file group.h.

std::deque<GroupAspect*> FastEcslent::Group::aspects

Definition at line 39 of file group.h.

Engine* FastEcslent::Group::engine

Definition at line 32 of file group.h.

Entity* FastEcslent::Group::members[MaxEnts]

Definition at line 33 of file group.h.

std::deque<GroupAspect*> FastEcslent::Group::aspects

Definition at line 39 of file group.h.

Engine* FastEcslent::Group::engine

Definition at line 32 of file group.h.

Entity* FastEcslent::Group::members[MaxEnts]

Definition at line 33 of file group.h.

std::deque<GroupAspect*> FastEcslent::Group::aspects

Definition at line 39 of file group.h.


The documentation for this class was generated from the following files:
Generated on Fri Dec 13 14:54:21 2013 for FastECSLent by  doxygen 1.5.4