Artificial Intelligence
Public Member Functions | Public Attributes | Static Public Attributes | Protected Member Functions | Protected Attributes | Private Member Functions | Private Attributes

GamePipe::AIAgentManager Class Reference

#include <AIAgentManager.h>

List of all members.

Public Member Functions

 AIAgentManager ()
 ~AIAgentManager ()
void addAgent (AIAgent *)
AIAgentgetAgent (Ogre::String)
std::list< AIAgent * >::iterator getAgentIterator ()
std::vector< int > getTypes ()
void initialize ()
bool isDebug ()
bool reassignAgentType (AIAgent *, unsigned long)
void reloadLua ()
bool removeAgent (Ogre::String)
std::list< AIAgent * > searchByType (unsigned long, bool=false)
std::list< AIAgent * > searchByTypeAndLimit (unsigned long, Ogre::Vector3, Ogre::Real, bool=false)
std::list< AIAgent * > searchByLimit (Ogre::Vector3, Ogre::Real)
void setDebug (bool)
void setWorld (GraphWorld *)
void setWorld (GridWorld *)
void update (float)

Public Attributes

std::list< AIAgent * > m_all_agents

Static Public Attributes

static const unsigned long MAX_TYPES = 64

Protected Member Functions

void bindAI (AIAgent *)
void unbindAI (AIAgent *)

Protected Attributes

GridWorldm_gridWorld
GraphWorldm_graphWorld
std::map< unsigned long,
std::list< AIAgent * > > 
m_agents_list
bool m_debug

Private Member Functions

bool removeAgentFromList (std::list< AIAgent * >, AIAgent *)
void sortByDistance (std::vector< AIAgent * > &, Ogre::Vector3)

Private Attributes

Ogre::Vector3 m_position
std::vector< int > m_types

Constructor & Destructor Documentation

AIAgentManager::AIAgentManager ( )
GamePipe::AIAgentManager::~AIAgentManager ( )

Member Function Documentation

void AIAgentManager::addAgent ( AIAgent agent)
void AIAgentManager::bindAI ( AIAgent agent) [protected]
AIAgent* GamePipe::AIAgentManager::getAgent ( Ogre::String  )
std::list< AIAgent * >::iterator AIAgentManager::getAgentIterator ( )
std::vector< int > AIAgentManager::getTypes ( )
void AIAgentManager::initialize ( )
bool AIAgentManager::isDebug ( )
bool AIAgentManager::reassignAgentType ( AIAgent agent,
unsigned long  type 
)
void AIAgentManager::reloadLua ( )
bool AIAgentManager::removeAgent ( Ogre::String  name)
bool GamePipe::AIAgentManager::removeAgentFromList ( std::list< AIAgent * >  ,
AIAgent  
) [private]
std::list< AIAgent * > AIAgentManager::searchByLimit ( Ogre::Vector3  position,
Ogre::Real  distance 
)
std::list< AIAgent * > AIAgentManager::searchByType ( unsigned long  type,
bool  reverse = false 
)
std::list< AIAgent * > AIAgentManager::searchByTypeAndLimit ( unsigned long  type,
Ogre::Vector3  position,
Ogre::Real  distance,
bool  reverse = false 
)
void AIAgentManager::setDebug ( bool  debug)
void AIAgentManager::setWorld ( GraphWorld graphWorld)
void AIAgentManager::setWorld ( GridWorld gridWorld)
void AIAgentManager::sortByDistance ( std::vector< AIAgent * > &  agents,
Ogre::Vector3  position 
) [private]
void AIAgentManager::unbindAI ( AIAgent agent) [protected]
void AIAgentManager::update ( float  deltaTime)

Member Data Documentation

std::map<unsigned long, std::list<AIAgent*> > GamePipe::AIAgentManager::m_agents_list [protected]
Ogre::Vector3 GamePipe::AIAgentManager::m_position [private]
std::vector<int> GamePipe::AIAgentManager::m_types [private]
const unsigned long GamePipe::AIAgentManager::MAX_TYPES = 64 [static]

The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines