SoIdleSensor(3IV)

NAME
SoIdleSensor — sensor for one-time only callbacks when the application is idle

INHERITS FROM
SoSensor > SoDelayQueueSensor > SoIdleSensor

SYNOPSIS
#include <Inventor/sensors/SoIdleSensor.h>

Methods from class SoIdleSensor:

SoIdleSensor()

SoIdleSensor(SoSensorCB *func, void *data)

~SoIdleSensor()

Methods from class SoDelayQueueSensor:

void
setPriority(uint32_t pri)
uint32_t
getPriority()
static uint32_t
getDefaultPriority()
virtual void
schedule()
virtual void
unschedule()
virtual SbBool
isScheduled()

Methods from class SoSensor:

void
setFunction(SoSensorCB *callbackFunction)
SoSensorCB *
getFunction() const
void
setData(void *callbackData)
void *
getData() const

DESCRIPTION
An idle sensor is almost exactly like an SoOneShotSensor, except that it is only triggered when there are no timer queue sensors waiting to be triggered and there are no events waiting to be processed; that is, idle sensors will not be triggered if the delay queue is processed because the delay queue timeout expires. If the delay queue timeout is disabled (see SoDB::setDelaySensorTimeout().), idle and one-shot sensors are exactly the same.

Note that idle sensors do not reschedule themselves. Inventor 1 idle sensors were always scheduled; call schedule() in the callback function to duplicate that behavior.

See the SoOneShotSensor manual page for more information.

METHODS

SoIdleSensor()

SoIdleSensor(SoSensorCB *func, void *data)
Creation methods. The second method takes the callback function and data to be called when the sensor is triggered.

~SoIdleSensor()
Destroys the sensor, freeing up any memory associated with it after unscheduling it.

SEE ALSO
SoOneShotSensor, SoDelayQueueSensor