# HBhvCondition

## Functions

| `HBhvCondition`
| `~HBhvCondition`
void | `SetTarget`
HBhvSensor * | `GetSensor`
void | `Register`
void | `UnRegister`
void | `Evaluate`
void | `Serialize`
void | `Serialize`
void * | `XMLCallback`

## Detailed Description

class HBhvCondition

  The HBhvCondition class is the base class for all condition types.

  Subclassed by HBhvConditionAnimation, HBhvConditionAnimationRunning, HBhvConditionMouse, HBhvConditionSensor, HBhvConditionSensorActive

  Public Functions

  HBhvCondition(const char *target, const char *hevent, bool invert, HBhvSensor *sensor)

    Constructs an HBhvCondition object.

    Parameters

      - target – The segment path of the target for this condition.

      - hevent – The event type.

      - invert – Pass true to invert the condition. In other words, this condition will return true if the condition evaluates to false and false if the condition evaluates to true.

      - sensor – A pointer to the HBhvSensor object that this condition belongs to.

  virtual ~HBhvCondition()
  virtual void SetTarget(const char *target)

    Sets a target for this condition.

    Parameters

      target – The segment path of the targetfor this condition.

  inline virtual HBhvSensor *GetSensor()
    Returns

      A pointer to the sensor object.

  inline virtual void Register()

    Registers the condition with event manager (if applicable)

  inline virtual void UnRegister()

    Unregisters condition from event manager (if applicable)

  virtual void Evaluate(bool &and_flag, bool &or_flag)

    Evaluates the condition.

    Parameters

      - and_flag – Result of evaluation

      - or_flag – Result of evaluation

  virtual void Serialize(HUtilityXMLGenerator *xmlgen, HUtilityXMLTag *xmlt)

    Writes XML data to a buffer.

  virtual void Serialize(HUtilityXMLGenerator *xmlgen)

    Writes XML data to a buffer.

  Public Static Functions

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

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