SOSFTRIGGER(3iv)
π SoSFTrigger β the field that goes "boom, everybody wake up" π
okay bestie, gather round, because we're about to talk about SoSFTrigger from the <Inventor/fields/SoSFTrigger.h> cinematic universe (that's manual section 3IV, iykyk). she's the queen of "just do it already" and honestly? iconic. π
β¨ INHERITS FROM β¨
SoField > SoSField > SoSFTrigger
the family tree is giving very much legacy royalty, no cap π
πΈ SYNOPSIS πΈ
#include <Inventor/fields/SoSFTrigger.h>
Methods from class SoSFTrigger:
void setValue()
void getValue()
int operator ==(const SoSFTrigger &t) const
int operator !=(const SoSFTrigger &t) const
Methods from class SoSField:
static SoType getClassTypeId()
Methods from class SoField:
void setIgnored(SbBool ignore)
SbBool isIgnored() const
SbBool isDefault() const
virtual SoType getTypeId() const
virtual SbBool isOfType(SoType type) const
SbBool set(const char *valueString)
void get(SbString &valueString)
void touch()
SbBool connectFrom(SoField *fromField)
SbBool connectFrom(SoEngineOutput *fromEngine)
void disconnect()
SbBool isConnected() const
SbBool isConnectedFromField() const
SbBool getConnectedField(SoField *&writingField) const
SbBool isConnectedFromEngine() const
SbBool getConnectedEngine(SoEngineOutput *&engineOutput)
const
void enableConnection(SbBool flag)
SbBool isConnectionEnabled() const
int getForwardConnections(SoFieldList &list) const
SoFieldContainer * getContainer() const
π¦ DESCRIPTION π¦
so this class is literally the start button. you use it to kick off or sync up a whole network of field connections. π¬
it's the "null" field β a field with no values. zero. zilch. she said "I don't do values, I do vibes." π
typically she gets used as the "start button" for engines that change over time. like, time-based engines need somebody to yell "GO" and that somebody is her.
Triggers can be connected from any other type of field, and she will notify any engines or nodes she's part of (or any other triggers she's connected to) whenever the value of the field is set β even if it is set to its current value β or the field is touch()'ed. so basically any little nudge gets a full notification rollout. she does not gatekeep. π«Ά
since they have no value, SoSFTriggers are not written to file. a node or engine containing an SoSFTrigger field will write only the field's name. periodt. π
π METHODS π
void setValue()β starts the notification process; this is equivalent to callingtouch(). it's the "hey bestie wake up" of method calls β¨void getValue()β forces any connected engines or fields to evaluate themselves. like dragging everyone out of bed for a group photo πΈint operator ==(const SoSFTrigger &t) constint operator !=(const SoSFTrigger &t) const
all trigger fields are equal; these methods always return TRUE and FALSE, respectively. not "usually", not "sometimes" β always. they have no drama, they're consistent, we love that for them π
π SEE ALSO π
SoSFBool, SoMFBool
lowkey the most emotionally stable field in the whole library and she has literally no value. not me taking notes. ππ
and that's the whole page bestie, from the SoSFTrigger(3IV) header energy down to the SoSFTrigger(3IV)() footer (version/date fields doing the classic empty-string slay, fr fr). now go touch() something. ππ¦π
π¦ where this page comes from
- debian bookworm: inventor-doc 2.1.5-10+dfsg-2 Β· LGPL-2.0-or-later
- debian trixie: inventor-doc 2.1.6+ds-2 Β· LGPL-2.0-or-later
- ubuntu jammy: inventor-doc 2.1.5-10-24
- ubuntu noble: inventor-doc 2.1.5-10+dfsg-2.1build2 Β· LGPL-2.0-or-later
- ubuntu questing: inventor-doc 2.1.6+ds-2
- ubuntu resolute: inventor-doc 2.1.6.1+ds-1 Β· LGPL-2.0-or-later
- ubuntu stonking: inventor-doc 2.1.6.1+ds-1 Β· LGPL-2.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms