SoTimerSensor Class |
Sensor that triggers repeatedly at regular intervals.
Namespace: OIV.Inventor.Sensors
The SoTimerSensor type exposes the following members.
Name | Description | |
---|---|---|
![]() | SoTimerSensor | Default constructor. |
Name | Description | |
---|---|---|
![]() | Equals | (Inherited from Object.) |
![]() | GetBaseTime | Gets the base time. |
![]() | GetHashCode |
Overrides GetHashCode().
(Inherited from SoNetBase.) |
![]() | GetInterval | Gets the interval. |
![]() | GetTriggerTime | Returns the time at which this sensor is scheduled to be triggered. |
![]() | GetType | Gets the Type of the current instance. (Inherited from Object.) |
![]() | IsScheduled | Returns true if this sensor has been scheduled and is waiting in a sensor queue to be triggered. |
![]() | Schedule | (Inherited from SoSensor.) |
![]() | SetBaseTime | Sets the base time. |
![]() | SetInterval | Sets the interval. |
![]() | SetSensorCB(SoSensorSensorCB) | Obsolete.
Use Action property instead
Sets the delegate that is invoked when the sensor is triggered.
The function must take two arguments - user-supplied data (of type object)
and a reference to the sensor that is triggering the function (of type SoSensor).
(Inherited from SoSensor.) |
![]() | SetSensorCB(SoSensorSensorUserDataCB, Object) | Obsolete.
Use Action property instead
(Inherited from SoSensor.) |
![]() | ToString | Returns a string that represents the current object. (Inherited from Object.) |
![]() | Unschedule | (Inherited from SoSensor.) |
Timer sensors trigger their function at regular intervals. A base time may be specified, which causes the sensor to be triggered at multiples of the interval starting from the base time. The base time is an absolute time, as returned by SbTime.getTimeOfDay(). For example, a timer might be set up to call its function every second on the second by setting the base time to SbTime (0.0) and the interval to SbTime (1.0) . Timers are guaranteed to be triggered only once when the timer queue is processed, so if the application only processes the timer queue once every 5 seconds (because it is busy doing something else) the once-a-second sensor's function will only be called once every 5 seconds.
If no base time is set, then the function will be rescheduled from the present time using the interval value.
When a base time has been specified, SoTimers always schedule themselves to be triggered the next multiple of the interval time after the base time. For example, if the once-a-second sensor is triggered at time 2.9 (because the application way busy doing something at time 2.0 and didn't get around to processing the sensor queue for a while) it will reschedule itself to go off at time 3.0, not at time 3.9. On the other hand, if the base time had never been set, then the sensor would be scheduled for time 3.9.