SoDataSensor(3IV)

SoDataSensor (SoDataSens) - abstract base class for sensors attached to parts of a scene

As shipped in IRIX 6.5.22. Added in IRIX 6.5.22.

NAME
     SoDataSensor (SoDataSens) - abstract base class for sensors attached to
     parts of a scene

INHERITS FROM
     SoSensor > SoDelayQueueSensor > SoDataSensor

SYNOPSIS
     #include <Inventor_c/sensors/SoDataSensor.h>

     typedef SoDataSensor  SoDataSens

          Functions from class SoDataSensor:

     void                SoDataSensSetDelCB(SoDataSens *this, SoSensorCB
                              *function, void *data)
     SoNode *            SoDataSensGetTrigNode(const SoDataSens *this)
     SoField *           SoDataSensGetTrigField(const SoDataSens *this)
     SoPath *            SoDataSensGetTrigPath(const SoDataSens *this)
     void                SoDataSensSetTrigPathFlag(SoDataSens *this, SbBool
                              flag)
     SbBool              SoDataSensGetTrigPathFlag(const SoDataSens *this)

          Functions from class SoDelayQueueSensor:

     void                SoDataSensSetPri(SoDataSens *this, uint32_t pri)
     uint32_t            SoDataSensGetPri(SoDataSens *this)
     uint32_t            SoDataSensGetDefaultPriority()
     void                SoDataSensSched(SoDataSens *this)
     void                SoDataSensUnsched(SoDataSens *this)
     SbBool              SoDataSensIsSched(SoDataSens *this)

          Functions from class SoSensor:

     void                SoDataSensSetFunc(SoDataSens *this, SoSensorCB
                              *callbackFunction)
     SoSensorCB *        SoDataSensGetFunc(const SoDataSens *this)
     void                SoDataSensSetData(SoDataSens *this, void
                              *callbackData)
     void *              SoDataSensGetData(const SoDataSens *this)


DESCRIPTION
     Data sensors detect changes to scene graph objects (paths, nodes, or
     fields) and trigger their callback function when the object changes.

     Data sensors provide a delete callback that is called just before the
     object the data sensor is attached to is deleted; note that the callback
     should not attempt to modify the object in any way, or core dumps may
     result.

     Priority zero data sensors also provide methods that can be called in the
     callback function to determine exactly which node, field, or path caused
     the sensor to be triggered.

FUNCTIONS
     void                SoDataSensSetDelCB(SoDataSens *this, SoSensorCB
                              *function, void *data)
          Sets a callback that will be called when the object the sensor is
          sensing is deleted.

     SoNode *            SoDataSensGetTrigNode(const SoDataSens *this)
     SoField *           SoDataSensGetTrigField(const SoDataSens *this)
          If this is a priority 0 data sensor, returns the node/field that was
          modified that caused this sensor to trigger. Returns NULL if the
          sensor was not triggered because a node/field changed (for example,
          if schedule() is called on the sensor) or if this sensor is not a
          priority 0 sensor. Note that because one change to the scene graph
          may cause multiple nodes or fields to be modified (because of
          field-to-field connections), the node or field returned may not be
          the only one that changed.

     SoPath *            SoDataSensGetTrigPath(const SoDataSens *this)
     void                SoDataSensSetTrigPathFlag(SoDataSens *this, SbBool
                              flag)
     SbBool              SoDataSensGetTrigPathFlag(const SoDataSens *this)
          If this is a priority 0 data sensor, returns a path to the node that
          caused this sensor to trigger. Because recreating the path to the
          node that changed is relatively expensive, setTriggerPathFlag(TRUE)
          must be called before the sensor is scheduled. If it is not called,
          or if the sensor wasn't triggered because a node changed, this
          returns NULL. NULL is also returned if this is not a priority 0
          sensor.


SEE ALSO
     SoNodeSensor, SoPathSensor, SoFieldSensor, SoDelayQueueSensor