---
name: "SoAlarmSensor"
section: "3iv"
platform: "linux"
package: "inventor-doc"
version: "2.1.6+ds-2"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/SoAlarmSensor/3iv"
---

# SoAlarmSensor(3iv)

triggers a callback once sometime in the future

## NAME

SoAlarmSensor — triggers a callback once sometime in the future

## INHERITS FROM

SoSensor \> SoTimerQueueSensor \> SoAlarmSensor

## SYNOPSIS

**#include \<Inventor/sensors/SoAlarmSensor.h\>**

Methods from class SoAlarmSensor:

	**SoAlarmSensor()**\
 	**SoAlarmSensor(SoSensorCB \*func, void \*data)**\
 	**~SoAlarmSensor()**\
 **void**	**setTime(const SbTime &absTime)**\
 **void**	**setTimeFromNow(const SbTime &relTime)**\
 **const SbTime &**	**getTime() const**

Methods from class SoTimerQueueSensor:

**const SbTime &**	**getTriggerTime()**\
 **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

**This type of sensor can be used to schedule a one-time callback for some time in the future. The sensor is not guaranteed to be called at exactly that time, but will be called sometime after the specified** **time.**

## METHODS

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

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

**void**	**setTime(const SbTime &absTime)**\
 Sets the sensor to go off at the specified time. You *must* also call **schedule()** for the sensor to be triggered. If the sensor is already scheduled, it must be unscheduled and then rescheduled for the change in the trigger time to take effect.

**void**	**setTimeFromNow(const SbTime &relTime)**\
 Sets the sensor to go off the given amount of time from now. You *must* also call **schedule()** for the sensor to be triggered. If the sensor is already scheduled, it must be unscheduled and then rescheduled for the change in the trigger time to take effect.

**const SbTime &**	**getTime() const**\
 Returns the time at which the sensor is set to be triggered. This is similar to the **getTriggerTime** method, but returns the time even if the sensor has not yet been scheduled.

## SEE ALSO

**SoOneShotSensor, SoTimerSensor, SoTimerQueueSensor, SbTime**
