.TH "SoSFTrigger" 3 "Tue Jun 23 2026 23:48:38" "Version 4.0.10" "Coin" \" -*- nroff -*- .ad l .nh .SH NAME SoSFTrigger \- The \fBSoSFTrigger\fP class is the "void" class used for detecting field changes\&. .SH SYNOPSIS .br .PP .PP \fR#include \fP .PP Inherits \fBSoSField\fP\&. .SS "Public Member Functions" .in +1c .ti -1c .RI "virtual \fBSoType\fP \fBgetTypeId\fP (void) const" .br .ti -1c .RI "virtual void \fBcopyFrom\fP (const \fBSoField\fP &field)" .br .ti -1c .RI "const \fBSoSFTrigger\fP & \fBoperator=\fP (const \fBSoSFTrigger\fP &field)" .br .ti -1c .RI "virtual SbBool \fBisSame\fP (const \fBSoField\fP &field) const" .br .ti -1c .RI "void \fBsetValue\fP (void)" .br .ti -1c .RI "void \fBgetValue\fP (void) const" .br .ti -1c .RI "int \fBoperator==\fP (const \fBSoSFTrigger\fP &trigger) const" .br .ti -1c .RI "int \fBoperator!=\fP (const \fBSoSFTrigger\fP &trigger) const" .br .ti -1c .RI "virtual void \fBstartNotify\fP (void)" .br .ti -1c .RI "virtual void \fBnotify\fP (\fBSoNotList\fP *l)" .br .ti -1c .RI "virtual void \fBtouch\fP (void)" .br .in -1c Public Member Functions inherited from \fBSoSField\fP .in +1c .ti -1c .RI "virtual \fB~SoSField\fP ()" .br .in -1c Public Member Functions inherited from \fBSoField\fP .in +1c .ti -1c .RI "virtual \fB~SoField\fP ()" .br .ti -1c .RI "void \fBsetIgnored\fP (SbBool ignore)" .br .ti -1c .RI "SbBool \fBisIgnored\fP (void) const" .br .ti -1c .RI "void \fBsetDefault\fP (SbBool defaultVal)" .br .ti -1c .RI "SbBool \fBisDefault\fP (void) const" .br .ti -1c .RI "SbBool \fBisOfType\fP (const \fBSoType\fP type) const" .br .ti -1c .RI "void \fBenableConnection\fP (SbBool flag)" .br .ti -1c .RI "SbBool \fBisConnectionEnabled\fP (void) const" .br .ti -1c .RI "SbBool \fBconnectFrom\fP (\fBSoEngineOutput\fP *master, SbBool notnotify=FALSE, SbBool append=FALSE)" .br .ti -1c .RI "SbBool \fBappendConnection\fP (\fBSoEngineOutput\fP *master, SbBool notnotify=FALSE)" .br .ti -1c .RI "void \fBdisconnect\fP (\fBSoEngineOutput\fP *engineoutput)" .br .ti -1c .RI "SbBool \fBisConnectedFromEngine\fP (void) const" .br .ti -1c .RI "SbBool \fBgetConnectedEngine\fP (\fBSoEngineOutput\fP *&master) const" .br .ti -1c .RI "SbBool \fBconnectFrom\fP (\fBSoField\fP *master, SbBool notnotify=FALSE, SbBool append=FALSE)" .br .ti -1c .RI "SbBool \fBappendConnection\fP (\fBSoField\fP *master, SbBool notnotify=FALSE)" .br .ti -1c .RI "void \fBdisconnect\fP (\fBSoField\fP *field)" .br .ti -1c .RI "SbBool \fBisConnectedFromField\fP (void) const" .br .ti -1c .RI "SbBool \fBgetConnectedField\fP (\fBSoField\fP *&master) const" .br .ti -1c .RI "int \fBgetNumConnections\fP (void) const" .br .ti -1c .RI "int \fBgetForwardConnections\fP (\fBSoFieldList\fP &slavelist) const" .br .ti -1c .RI "int \fBgetConnections\fP (\fBSoFieldList\fP &masterlist) const" .br .ti -1c .RI "void \fBdisconnect\fP (void)" .br .ti -1c .RI "SbBool \fBisConnected\fP (void) const" .br .ti -1c .RI "void \fBsetContainer\fP (\fBSoFieldContainer\fP *cont)" .br .ti -1c .RI "\fBSoFieldContainer\fP * \fBgetContainer\fP (void) const" .br .ti -1c .RI "SbBool \fBset\fP (const char *valuestring)" .br .ti -1c .RI "void \fBget\fP (\fBSbString\fP &valuestring)" .br .ti -1c .RI "SbBool \fBshouldWrite\fP (void) const" .br .ti -1c .RI "SbBool \fBenableNotify\fP (SbBool on)" .br .ti -1c .RI "SbBool \fBisNotifyEnabled\fP (void) const" .br .ti -1c .RI "void \fBaddAuditor\fP (void *f, \fBSoNotRec::Type\fP type)" .br .ti -1c .RI "void \fBremoveAuditor\fP (void *f, \fBSoNotRec::Type\fP type)" .br .ti -1c .RI "int \fBoperator==\fP (const \fBSoField\fP &f) const" .br .ti -1c .RI "int \fBoperator!=\fP (const \fBSoField\fP &f) const" .br .ti -1c .RI "virtual void \fBconnectionStatusChanged\fP (int numconnections)" .br .ti -1c .RI "SbBool \fBisReadOnly\fP (void) const" .br .ti -1c .RI "virtual void \fBfixCopy\fP (SbBool copyconnections)" .br .ti -1c .RI "virtual SbBool \fBreferencesCopy\fP (void) const" .br .ti -1c .RI "void \fBcopyConnection\fP (const \fBSoField\fP *fromfield)" .br .ti -1c .RI "virtual SbBool \fBread\fP (\fBSoInput\fP *input, const \fBSbName\fP &name)" .br .ti -1c .RI "virtual void \fBwrite\fP (\fBSoOutput\fP *out, const \fBSbName\fP &name) const" .br .ti -1c .RI "virtual void \fBcountWriteRefs\fP (\fBSoOutput\fP *out) const" .br .ti -1c .RI "void \fBsetFieldType\fP (int type)" .br .ti -1c .RI "int \fBgetFieldType\fP (void) const" .br .ti -1c .RI "SbBool \fBgetDirty\fP (void) const" .br .ti -1c .RI "void \fBsetDirty\fP (SbBool dirty)" .br .ti -1c .RI "void \fBevaluate\fP (void) const" .br .in -1c .SS "Static Public Member Functions" .in +1c .ti -1c .RI "static void * \fBcreateInstance\fP (void)" .br .ti -1c .RI "static \fBSoType\fP \fBgetClassTypeId\fP (void)" .br .ti -1c .RI "static void \fBinitClass\fP (void)" .br .in -1c Static Public Member Functions inherited from \fBSoSField\fP .in +1c .ti -1c .RI "static void \fBinitClass\fP (void)" .br .ti -1c .RI "static \fBSoType\fP \fBgetClassTypeId\fP (void)" .br .ti -1c .RI "static void \fBatexit_cleanup\fP (void)" .br .in -1c Static Public Member Functions inherited from \fBSoField\fP .in +1c .ti -1c .RI "static void \fBinitClass\fP (void)" .br .ti -1c .RI "static void \fBinitClasses\fP (void)" .br .ti -1c .RI "static void \fBcleanupClass\fP (void)" .br .ti -1c .RI "static \fBSoType\fP \fBgetClassTypeId\fP (void)" .br .in -1c .SS "Additional Inherited Members" Public Types inherited from \fBSoField\fP .in +1c .ti -1c .RI "enum \fBFieldType\fP { \fBNORMAL_FIELD\fP = 0, \fBEVENTIN_FIELD\fP, \fBEVENTOUT_FIELD\fP, \fBEXPOSED_FIELD\fP }" .br .in -1c Protected Member Functions inherited from \fBSoSField\fP .in +1c .ti -1c .RI "\fBSoSField\fP (void)" .br .in -1c Protected Member Functions inherited from \fBSoField\fP .in +1c .ti -1c .RI "\fBSoField\fP (void)" .br .ti -1c .RI "void \fBvalueChanged\fP (SbBool resetdefault=TRUE)" .br .ti -1c .RI "virtual void \fBevaluateConnection\fP (void) const" .br .ti -1c .RI "virtual SbBool \fBreadConnection\fP (\fBSoInput\fP *in)" .br .ti -1c .RI "virtual void \fBwriteConnection\fP (\fBSoOutput\fP *out) const" .br .ti -1c .RI "SbBool \fBisDestructing\fP (void) const" .br .ti -1c .RI "virtual \fBSoNotRec\fP \fBcreateNotRec\fP (\fBSoBase\fP *cont)" .br .in -1c .SH "Detailed Description" .PP The \fBSoSFTrigger\fP 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\&. .PP 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\&. .PP \fBSee also\fP .RS 4 \fBSoFieldSensor\fP .RE .PP .SH "Member Function Documentation" .PP .SS "void * SoSFTrigger::createInstance (void )\fR [static]\fP" \fIThis API member is considered internal to the library, as it is not likely to be of interest to the application programmer\&.\fP .br .br Creates a new instance of the class type corresponding to the \fBSoType\fP object\&. .SS "\fBSoType\fP SoSFTrigger::getClassTypeId (void )\fR [static]\fP" This static method returns the \fBSoType\fP object associated with objects of this class\&. .SS "\fBSoType\fP SoSFTrigger::getTypeId (void ) const\fR [virtual]\fP" Returns the type identification of an object derived from a class inheriting \fBSoField\fP\&. This is used for runtime type checking and "downward" casting\&. .PP Implements \fBSoField\fP\&. .SS "void SoSFTrigger::copyFrom (const \fBSoField\fP & f)\fR [virtual]\fP" Copy value(s) from \fIf\fP into this field\&. \fIf\fP must be of the same type as this field\&. .PP Implements \fBSoField\fP\&. .SS "SbBool SoSFTrigger::isSame (const \fBSoField\fP & f) const\fR [virtual]\fP" Check for equal type and value(s)\&. .PP Implements \fBSoField\fP\&. .SS "void SoSFTrigger::initClass (void )\fR [static]\fP" Internal method called upon initialization of the library (from \fBSoDB::init()\fP) to set up the type system\&. .SS "void SoSFTrigger::setValue (void )" This field class does not actually contain any value, so we just trigger an update by calling \fBtouch()\fP within this method\&. .SS "void SoSFTrigger::getValue (void ) const" Field doesn't contain any value, so this method does nothing\&. .SS "int SoSFTrigger::operator== (const \fBSoSFTrigger\fP & trigger) const" Since \fBSoSFTrigger\fP fields doesn't have any value, they are all equal\&. So this method always returns \fRTRUE\fP\&. .SS "int SoSFTrigger::operator!= (const \fBSoSFTrigger\fP & trigger) const" Since \fBSoSFTrigger\fP fields doesn't have any value, they are all equal\&. So this method always returns \fRFALSE\fP\&. .SS "void SoSFTrigger::startNotify (void )\fR [virtual]\fP" Trigger a notification sequence\&. .PP At the end of a notification sequence, all "immediate" sensors (i\&.e\&. sensors set up with a zero priority) are triggered\&. .PP Reimplemented from \fBSoField\fP\&. .SS "void SoSFTrigger::notify (\fBSoNotList\fP * nlist)\fR [virtual]\fP" Notify auditors that this field has changed\&. .PP Reimplemented from \fBSoField\fP\&. .SS "void SoSFTrigger::touch (void )\fR [virtual]\fP" Notify the field as well as the field's owner / container that it has been changed\&. .PP 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 \fBenableNotify()\fP calls to notify the field's auditors that its value has changed\&. .PP \fBSee also\fP .RS 4 \fBsetValue()\fP, \fBenableNotify()\fP .RE .PP .PP Reimplemented from \fBSoField\fP\&. .SH "Author" .PP Generated automatically by Doxygen for Coin from the source code\&.