Alphabetical Class Index  Class Hierarchy   File Members   Compound Members   File List  

HBhvSensor Class Reference

The HBhvSensor class encapsulates an animation sensor. More...

#include <HBhvSensor.h>

List of all members.

Public Member Functions

void Activate (int delay=0)
void AddAction (HBhvAction *action)
void AddCondition (HBhvCondition *condition)
void DeActivate ()
bool Evaluate ()
HBhvBehaviorManagerGetBehaviorManager ()
bool GetCurrentlyActive ()
bool GetDefaultActive ()
const char * GetName ()
 HBhvSensor (const char *name, bool active, HBhvBehaviorManager *BehaviorManager)
void Serialize (HUtilityXMLGenerator *xmlgen)
void Tick ()

Static Public Member Functions

static void * XMLCallback (HUtilityXMLTag *xt, bool open, void *m_pExtraData)

Protected Attributes

struct vlist_s * m_ActionList
bool m_bCurrentlyActive
bool m_bDefaultActive
struct vlist_s * m_ConditionList
int m_Delay
char m_Name [256]
HBhvBehaviorManagerm_pBehaviorManager


Detailed Description

The HBhvSensor class encapsulates an animation sensor.

A HBhvSensor objects holds a list of conditions which are usually related to an object in the segment hierachy and actions that should be performed based on whether these conditions are met.


Constructor & Destructor Documentation

HBhvSensor::HBhvSensor ( const char *  name,
bool  active,
HBhvBehaviorManager BehaviorManager 
)

Constructs an HBhvSensor object.

Parameters:
name The name of the sensor.
active The activity state. Pass true if you want this sensor to be active by default.
BehaviorManager A pointer to the HBhvBehaviorManager object.


Member Function Documentation

void HBhvSensor::Activate ( int  delay = 0  ) 

This method activates the sensor. It fires the sensor activated event and registers the items in the conditions array.

Parameters:
delay The delay time in ticks before activation.

void HBhvSensor::AddAction ( HBhvAction action  ) 

Adds a new item to the action list.

Parameters:
action A pointer to the action object you want added.

void HBhvSensor::AddCondition ( HBhvCondition condition  ) 

Adds a new condition to the condition list.

Parameters:
condition A pointer to condition object to be added.

void HBhvSensor::DeActivate (  ) 

This method deactivates the sensor and unregisters all the items in the conditions array.

bool HBhvSensor::Evaluate (  ) 

Evaluates the sensor conditions. If the conditions are met, then the actions list is executed.

Returns:
True if the conditions are met to true or false if conditions are not met.

HBhvBehaviorManager* HBhvSensor::GetBehaviorManager (  )  [inline]

Returns:
A pointer to HBhvBehaviorManager object

bool HBhvSensor::GetCurrentlyActive (  )  [inline]

Returns:
True if the sensor is currently active or false if ensor is not currently active.

bool HBhvSensor::GetDefaultActive (  )  [inline]

Returns:
True if the sensor is active by default or false if the sensor is inactive by default.

const char* HBhvSensor::GetName (  )  [inline]

Returns:
A pointer to the name of the sensor.

void HBhvSensor::Serialize ( HUtilityXMLGenerator *  xmlgen  ) 

Writes XML data to a buffer.

void HBhvSensor::Tick (  ) 

Performs any time based sensor action.

static void* HBhvSensor::XMLCallback ( HUtilityXMLTag *  xt,
bool  open,
void *  m_pExtraData 
) [static]

This is XML read callback which parses XML data and then populates the member variables with the associated values.


Member Data Documentation

struct vlist_s* HBhvSensor::m_ActionList [read, protected]

The list of actions.

The value is true if the sensor is currently active or false if the sensor not active.

bool HBhvSensor::m_bDefaultActive [protected]

The value is true if the sensor is active by default, false if the sensor not active by default.

struct vlist_s* HBhvSensor::m_ConditionList [read, protected]

The list of conditions.

int HBhvSensor::m_Delay [protected]

The delay before the sensor activates.

char HBhvSensor::m_Name[256] [protected]

The sensor name

A pointer to behaviour manager for this sensor.


The documentation for this class was generated from the following file: