SoSFNode(3)
π NAME π
SoSFNode β bestie, this class is literally just a container for a single node. One node. That's it. That's the whole vibe. π
π¦ SYNOPSIS π¦
#include <Inventor/fields/SoSFNode.h>
Inherits SoSField.
β¨ Public Member Functions β¨
virtual SoType getTypeId (void) constvirtual void copyFrom (const SoField &field)const SoSFNode & operator= (const SoSFNode &field)virtual SbBool isSame (const SoField &field) constSoNode * getValue (void) constvoid setValue (SoNode *newvalue)SoNode * operator= (SoNode *newvalue)int operator== (const SoSFNode &field) constint operator!= (const SoSFNode &field) constvirtual void fixCopy (SbBool copyconnections)virtual SbBool referencesCopy (void) const
π« Public Member Functions inherited from SoSField π«
virtual ~SoSField ()
π Public Member Functions inherited from SoField π
virtual ~SoField ()void setIgnored (SbBool ignore)SbBool isIgnored (void) constvoid setDefault (SbBool defaultVal)SbBool isDefault (void) constSbBool isOfType (const SoType type) constvoid enableConnection (SbBool flag)SbBool isConnectionEnabled (void) constSbBool connectFrom (SoEngineOutput *master, SbBool notnotify=FALSE, SbBool append=FALSE)SbBool appendConnection (SoEngineOutput *master, SbBool notnotify=FALSE)void disconnect (SoEngineOutput *engineoutput)SbBool isConnectedFromEngine (void) constSbBool getConnectedEngine (SoEngineOutput *&master) constSbBool connectFrom (SoField *master, SbBool notnotify=FALSE, SbBool append=FALSE)SbBool appendConnection (SoField *master, SbBool notnotify=FALSE)void disconnect (SoField *field)SbBool isConnectedFromField (void) constSbBool getConnectedField (SoField *&master) constint getNumConnections (void) constint getForwardConnections (SoFieldList &slavelist) constint getConnections (SoFieldList &masterlist) constvoid disconnect (void)SbBool isConnected (void) constvoid setContainer (SoFieldContainer *cont)SoFieldContainer * getContainer (void) constSbBool set (const char *valuestring)void get (SbString &valuestring)SbBool shouldWrite (void) constvirtual void touch (void)virtual void startNotify (void)virtual void notify (SoNotList *nlist)SbBool enableNotify (SbBool on)SbBool isNotifyEnabled (void) constvoid addAuditor (void *f, SoNotRec::Type type)void removeAuditor (void *f, SoNotRec::Type type)int operator== (const SoField &f) constint operator!= (const SoField &f) constvirtual void connectionStatusChanged (int numconnections)SbBool isReadOnly (void) constvoid copyConnection (const SoField *fromfield)virtual SbBool read (SoInput *input, const SbName &name)virtual void write (SoOutput *out, const SbName &name) constvoid setFieldType (int type)int getFieldType (void) constSbBool getDirty (void) constvoid setDirty (SbBool dirty)void evaluate (void) const
π Static Public Member Functions π
static void * createInstance (void)static SoType getClassTypeId (void)static void initClass (void)
β Static Public Member Functions inherited from SoSField β
static void initClass (void)static SoType getClassTypeId (void)static void atexit_cleanup (void)
πΈ Static Public Member Functions inherited from SoField πΈ
static void initClass (void)static void initClasses (void)static void cleanupClass (void)static SoType getClassTypeId (void)
π Protected Attributes π
SoNode * value
π Additional Inherited Members π
Public Types inherited from SoField
enum FieldType { NORMAL_FIELD = 0, EVENTIN_FIELD, EVENTOUT_FIELD,
EXPOSED_FIELD }
Protected Member Functions inherited from SoSField
SoSField (void)
Protected Member Functions inherited from SoField
SoField (void)void valueChanged (SbBool resetdefault=TRUE)virtual void evaluateConnection (void) constvirtual SbBool readConnection (SoInput *in)virtual void writeConnection (SoOutput *out) constSbBool isDestructing (void) const
π₯ Detailed Description π₯
The SoSFNode class is a container for a single node. Yep, exactly what the name says, no plot twist. π
This field container stores a pointer to a Coin node. It also handles all the boring-but-essential stuff for you β copy, import and export operations. Iconic behaviour, zero effort on your part. β¨
Heads up bestie: the node pointer stored in a field instance of this type may be a NULL pointer. So like, don't assume it's always there, okay? π
See also: SoNode, SoMFNode
π Member Function Documentation π
SoType SoSFNode::getTypeId (void ) const [virtual]
Returns the type identification instance which uniquely identifies the Coin field class the object belongs to. Basically its little ID card. πͺͺ
See also: getClassTypeId(), SoType
Implements SoField.
void SoSFNode::copyFrom (const SoField & f) [virtual]
Copy value(s) from f into this field. And plot twist: f must be of the same type as this field. No mixing, no matching, fr fr. π ββοΈ
Implements SoField.
SbBool SoSFNode::isSame (const SoField & f) const [virtual]
Check for equal type and value(s). Both. Not just one. Slay. β
Implements SoField.
void SoSFNode::fixCopy (SbBool copyconnections) [virtual]
This method is internally called after SoField::copyFrom() during scene graph copies, and it should do the operations necessary for fixing up the field instance after it has gotten a new value. Glow-up after the copy, basically. π«
The default method in the SoField superclass does nothing. (Not me doing absolutely nothing and still being valid. π)
The application programmer should normally not need to consider this method, unless he constructs a complex field type which contains new references to container instances (i.e. nodes or engines). Overriding this method is then necessary to update the reference pointers, as they could have been duplicated during the copy operation. So like, only worry about this if you're out here building something fancy. π§
Reimplemented from SoField.
SbBool SoSFNode::referencesCopy (void ) const [virtual]
Returns TRUE if this field has references to any containers in the scene graph which are also duplicated during the copy operation.
Note that this method only is valid to call during copy operations. Timing matters, bestie! β°
See also the note about the relevance of the fixCopy() method for application programmers, as it is applicable on this method aswell.
Reimplemented from SoField.
πΈ Author πΈ
Generated automatically by Doxygen for Coin from the source code. (Not a human, just a robot doing its little thing. Respect. π€β¨)
And that's the whole page, bestie!! This one was pulled straight from Coin, Version 3.1.3, and it's the SoSFNode(3) manual β one node, one container, infinite main character energy. Go forth and store your pointers responsibly. π«Άππ
π¦ where this page comes from
- fedora 43: Coin3-devel 3.1.3-40.fc43 Β· GPL-2.0-only
- fedora 43: Coin3-devel 3.1.3-40.fc43 Β· GPL-2.0-only
- fedora 44: Coin3-devel 3.1.3-42.fc44 Β· GPL-2.0-only
- fedora 44: Coin3-devel 3.1.3-42.fc44 Β· GPL-2.0-only
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms