SoMFEngine(3)
β¨ NAME β¨
SoMFEngine β bestie, it's the container class for engines π
πΈ SYNOPSIS πΈ
okay so first things first, you gotta pull it in:
#include <Inventor/fields/SoMFEngine.h>
and it Inherits SoMField, slay π
π« Public Member Functions
virtual SoType getTypeId (void) const
virtual void copyFrom (const SoField &field)
const SoMFEngine & operator= (const SoMFEngine &field)
virtual SbBool isSame (const SoField &field) const
SoEngine * operator[] (const int idx) const
const SoEngine ** getValues (const int start) const
int find (SoEngine *value, SbBool addifnotfound=0)
void setValues (const int start, const int num, const SoEngine **newvals)
void set1Value (const int idx, SoEngine *value)
void setValue (SoEngine *value)
SoEngine * operator= (SoEngine *val)
SbBool operator== (const SoMFEngine &field) const
SbBool operator!= (const SoMFEngine &field) const
SoEngine ** startEditing (void)
void finishEditing (void)
virtual void fixCopy (SbBool copyconnections)
virtual SbBool referencesCopy (void) const
virtual void deleteValues (int start, int num=-1)
virtual void insertSpace (int start, int num)
π«Ά Public Member Functions inherited from SoMField
virtual ~SoMField ()
int getNum (void) const
void setNum (const int num)
SbBool set1 (const int index, const char *const valuestring)
void get1 (const int index, SbString &valuestring)
virtual void enableDeleteValues (void)
virtual SbBool isDeleteValuesEnabled (void)
π Public Member Functions inherited from SoField
virtual ~SoField ()
void setIgnored (SbBool ignore)
SbBool isIgnored (void) const
void setDefault (SbBool def)
SbBool isDefault (void) const
SbBool isOfType (const SoType type) const
void enableConnection (SbBool flag)
SbBool isConnectionEnabled (void) const
SbBool connectFrom (SoEngineOutput *master, SbBool notnotify=0, SbBool append=0)
SbBool appendConnection (SoEngineOutput *master, SbBool notnotify=0)
void disconnect (SoEngineOutput *engineoutput)
SbBool isConnectedFromEngine (void) const
SbBool getConnectedEngine (SoEngineOutput *&master) const
SbBool connectFrom (SoField *master, SbBool notnotify=0, SbBool append=0)
SbBool appendConnection (SoField *master, SbBool notnotify=0)
void disconnect (SoField *field)
SbBool isConnectedFromField (void) const
SbBool getConnectedField (SoField *&master) const
int getNumConnections (void) const
int getForwardConnections (SoFieldList &slavelist) const
int getConnections (SoFieldList &masterlist) const
void disconnect (void)
SbBool isConnected (void) const
void setContainer (SoFieldContainer *cont)
SoFieldContainer * getContainer (void) const
SbBool set (const char *valuestring)
void get (SbString &valuestring)
SbBool shouldWrite (void) const
virtual void touch (void)
virtual void startNotify (void)
virtual void notify (SoNotList *nlist)
SbBool enableNotify (SbBool on)
SbBool isNotifyEnabled (void) const
void addAuditor (void *f, SoNotRec::Type type)
void removeAuditor (void *f, SoNotRec::Type type)
int operator== (const SoField &f) const
int operator!= (const SoField &f) const
virtual void connectionStatusChanged (int numconnections)
SbBool isReadOnly (void) const
void copyConnection (const SoField *fromfield)
virtual SbBool read (SoInput *in, const SbName &name)
virtual void write (SoOutput *out, const SbName &name) const
void setFieldType (int type)
int getFieldType (void) const
SbBool getDirty (void) const
void 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 SoMField
static SoType getClassTypeId (void)
static void initClass (void)
π Static Public Member Functions inherited from SoField
static void initClass (void)
static void initClasses (void)
static SoType getClassTypeId (void)
π Protected Member Functions
virtual void deleteAllValues (void)
virtual void copyValue (int to, int from)
virtual int fieldSizeof (void) const
virtual void * valuesPtr (void)
virtual void setValuesPtr (void *ptr)
virtual void allocValues (int num)
π§ Protected Member Functions inherited from SoMField
SoMField (void)
virtual void makeRoom (int newnum)
π¦ Protected Member Functions inherited from SoField
SoField (void)
void valueChanged (SbBool resetdefault=1)
virtual void evaluateConnection (void) const
virtual SbBool readConnection (SoInput *in)
virtual void writeConnection (SoOutput *out) const
SbBool isDestructing (void) const
β Protected Attributes
SoEngine ** values
π Protected Attributes inherited from SoMField
int num
int maxNum
SbBool userDataIsUsed
πΈ Additional Inherited Members
Public Types inherited from SoField:
enum FieldType { NORMAL_FIELD = 0, EVENTIN_FIELD, EVENTOUT_FIELD, EXPOSED_FIELD }
π Detailed Description π
SoMFEngine is the container class for engines. That's it, that's the whole vibe π
This field container stores an array of pointers to engines β like a little friend group of engines, all holding hands π«Ά It takes care of all the necessary functionality for handling copy, import and export operations, so you don't gotta do it yourself. No cap.
Heads up bestie: engine pointers stored in field instances of this type may be NULL pointers. Like, they're allowed to just be not there. It's giving "empty seat at the lunch table" π
See also
SoEngine,SoSFEngine
π« Member Function Documentation π«
π SoType SoMFEngine::getTypeId (void ) const [virtual]
Returns the type identification instance which uniquely identifies the Coin field class the object belongs to. Basically it tells you what this thing is, so you can vibe check it β¨
See also
getClassTypeId(),SoType
Implements SoField.
π void SoMFEngine::copyFrom (const SoField & f) [virtual]
Copy value(s) from f into this field. And bestie, f must be of the same type as this field β do not try it with a different type, that's not gonna slay, that's gonna break π
Implements SoField.
π SbBool SoMFEngine::isSame (const SoField & f) const [virtual]
Check for equal type and value(s). Yes girl, it's a comparison. Are y'all the same or not π
Implements SoField.
π virtual void SoMFEngine::deleteAllValues (void ) [protected], [virtual]
Implements SoMField.
π virtual void SoMFEngine::copyValue (int to, int from) [protected], [virtual]
Implements SoMField.
π const SoEngine ** SoMFEngine::getValues (const int start) const [inline]
Returns a pointer to the values array. Just handin' you the whole array, iconic π
π void SoMFEngine::fixCopy (SbBool copyconnections) [virtual]
Okay so this one 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. Lowkey important, but not your problem usually.
The default method in the SoField superclass does nothing. Literally nothing. A whole void.
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 if you're doing the complicated stuff, bestie.
Reimplemented from SoField.
References SoBase::assertAlive(), SoEngine::copy(), SoField::enableNotify(), SoFieldContainer::findCopy(), SoMField::getNum(), and SoField::valueChanged().
π SbBool SoMFEngine::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. Like, timing matters bestie, don't call it whenever β°
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.
References SoFieldContainer::checkCopy(), SoMField::getNum(), and SoField::referencesCopy().
π virtual void SoMFEngine::deleteValues (int start, int numarg = -1) [virtual]
Remove value elements from index start up to and including index start + num - 1.
Elements with indices larger than the last deleted element will be moved downwards in the value array. They gotta scoot over, it's fine, they'll survive π
If num equals -1, delete from index start and to the end of the array. Like, gone. All of it. Periodt.
Reimplemented from SoMField.
References SoMField::num.
π virtual void SoMFEngine::insertSpace (int start, int numarg) [virtual]
Insert num "slots" for new value elements from start. The elements already present from start will be moved "upward" in the extended array. Making room, bestie, we're making ROOM π
Reimplemented from SoMField.
References SoMField::num.
π¦ Author π¦
Generated automatically by Doxygen for Coin from the source code. Yeah, a robot wrote this one, not me π but I made it cute so it's fine π«Ά
and that's the whole page babes β¨ this manual page came from Coin, Version 2.5.0, and it's filed under the Library Functions Manual. go forth and container-ize your engines, i believe in you ππΈπ
π¦ where this page comes from
- fedora 43: Coin2-devel 2.5.0-52.fc43 Β· GPL-2.0-only
- fedora 43: Coin2-devel 2.5.0-52.fc43 Β· GPL-2.0-only
- fedora 44: Coin2-devel 2.5.0-54.fc44 Β· GPL-2.0-only
- fedora 44: Coin2-devel 2.5.0-54.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