Main Page | Modules | Class Hierarchy | Alphabetical List | Class List | File List | Class Members

SoSFTrigger Class Reference
[Field classes]

The SoSFTrigger class is the "void" class used for detecting field changes. More...

#include <Inventor/fields/SoSFTrigger.h>

Inheritance diagram for SoSFTrigger:

SoSField SoField List of all members.

Public Member Functions

void setValue (void)
void getValue (void) const
int operator== (const SoSFTrigger &trigger) const
int operator!= (const SoSFTrigger &trigger) const
virtual void startNotify (void)
virtual void notify (SoNotList *l)
virtual void touch (void)

Static Public Member Functions

void initClass (void)

Detailed Description

The SoSFTrigger class is the "void" class used for detecting field changes.

Connect this field to a master field (or engine output) to detect when the master field changes its value.

This is useful if you want to automatically trigger an update from the node or engine (or other field container) this field is part of whenever another field changes -- and you are not particularly interested in the actual value of the master field.

See also:
SoFieldSensor


Member Function Documentation

void SoSFTrigger::initClass void   )  [static]
 

Internal method called upon initialization of the library (from SoDB::init()) to set up the type system.

Reimplemented from SoSField.

void SoSFTrigger::setValue void   ) 
 

This field class does not actually contain any value, so we just triggers an update by calling touch() within this method.

void SoSFTrigger::getValue void   )  const
 

Field doesn't contain any value, so this method does nothing.

int SoSFTrigger::operator== const SoSFTrigger trigger  )  const
 

Since SoSFTrigger fields doesn't have any value, they are all equal. So this method always returns TRUE.

int SoSFTrigger::operator!= const SoSFTrigger trigger  )  const
 

Since SoSFTrigger fields doesn't have any value, they are all equal. So this method always returns FALSE.

void SoSFTrigger::startNotify void   )  [virtual]
 

Trigger a notification sequence.

At the end of a notification sequence, all "immediate" sensors (i.e. sensors set up with a zero priority) are triggered.

Reimplemented from SoField.

void SoSFTrigger::notify SoNotList l  )  [virtual]
 

Notify auditors that this field has changed.

Reimplemented from SoField.

void SoSFTrigger::touch void   )  [virtual]
 

Notify the field as well as the field's owner / container that it has been changed.

Touching a field which is part of any component (engine or node) in a scene graph will lead to a forced redraw. This is useful if you have been doing several updates to the field wrapped in a pair of enableNotify() calls to notify the field's auditors that its value has changed.

See also:
setValue(), enableNotify()

Reimplemented from SoField.


The documentation for this class was generated from the following files:
Generated on Tue Jul 27 23:53:07 2004 for Coin by doxygen 1.3.7