51#ifndef _SO_SENSOR_MANAGER_
52#define _SO_SENSOR_MANAGER_
62class SoSensorManagerThread;
115 int doSelect(
int nfds, fd_set *readfds, fd_set *writefds,
117 struct timeval *userTimeOut);
125 {
return s_ivDebugSensors;}
140 static void delayQTimeoutCB(
void *,
SoSensor *);
149 uint32_t delayQCount;
156 void (*changedFunc)(
void *);
157 void *changedFuncData;
160 void notifyChanged();
168 SoSensorManagerThread* m_pThreadSensorMgr;
169 static SoSensorManagerThread* s_pThreadSensorMgr;
172 static bool s_ivDebugSensors;
void processDelayQueue(SbBool isIdle)
void rescheduleTimer(SoTimerSensor *s)
static bool isIvDebugSensorsSet()
void setDelaySensorTimeout(const SbTime &t)
void removeTimerSensor(SoTimerQueueSensor *s)
int doSelect(int nfds, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, struct timeval *userTimeOut)
void setChangedCallback(void(*func)(void *), void *data)
void insertDelaySensor(SoDelayQueueSensor *s)
void insertTimerSensor(SoTimerQueueSensor *s)
SbBool isDelaySensorPending()
SbBool isTimerSensorPending(SbTime &tm)
void removeDelaySensor(SoDelayQueueSensor *s)
void removeRescheduledTimer(SoTimerQueueSensor *s)
const SbTime & getDelaySensorTimeout()
void processImmediateQueue()
bool insert(SoDeviceContextSharedGroup *sharedGroup, SoBaseContextCache *element)
bool remove(SoDeviceContextSharedGroup *sharedGroup, SoBaseContextCache *element)
Class for representation of a time.
Triggers a delegate once sometime in the future.
Abstract base class for sensors not dependent on time.
Abstract base class for Open Inventor sensors.
Abstract base class for sensors dependent on time.
Sensor that triggers repeatedly at regular intervals.