SoMFVec4s(3)

πŸ“¦ version 2.5.0, in fedora 43, fedora 44

okay bestie, sit down, hydrate, and let me tell you about SoMFVec4s(3) β€” this one's from the Coin library and it's lowkey iconic. πŸŽ€

🌸 NAME 🌸

SoMFVec4s β€” the class that is a container for SbVec4s vectors. that's it, that's the whole personality. πŸ’…


✨ SYNOPSIS ✨

#include <Inventor/fields/SoMFVec4s.h>

Inherits SoMField.

πŸ’– Public Member Functions πŸ’–

  • virtual SoType getTypeId (void) const β€” grab the type id, virtual style πŸ‘‘
  • virtual void copyFrom (const SoField &field) β€” copy values over from another field
  • const SoMFVec4s & operator= (const SoMFVec4s &field) β€” assign a whole other SoMFVec4s to this one
  • virtual SbBool isSame (const SoField &field) const β€” are these two the same? type AND values? πŸ‘€
  • const SbVec4s & operator[] (const int idx) const β€” index into it like an array, no cap
  • const SbVec4s * getValues (const int start) const β€” pointer to the values array, starting at start
  • int find (const SbVec4s &value, SbBool addifnotfound=0) β€” hunt for a value, optionally add it if it's not there πŸ•΅οΈ
  • void setValues (const int start, const int num, const SbVec4s *newvals) β€” slam in a bunch of values
  • void set1Value (const int idx, const SbVec4s &value) β€” set exactly one value at idx
  • void setValue (const SbVec4s &value) β€” set the whole field to one single value
  • const SbVec4s & operator= (const SbVec4s &val) β€” assign one SbVec4s in
  • SbBool operator== (const SoMFVec4s &field) const β€” equality check, slay
  • SbBool operator!= (const SoMFVec4s &field) const β€” inequality check, also slay
  • SbVec4s * startEditing (void) β€” begin editing, get your hands on the raw data ✨
  • void finishEditing (void) β€” wrap up the editing session, tysm
  • void setValuesPointer (const int num, const SbVec4s *userdata) β€” point at user data, don't copy
  • void setValuesPointer (const int num, SbVec4s *userdata) β€” same but non-const
  • void setValuesPointer (const int num, const short *userdata) β€” same but with short data
  • void setValuesPointer (const int num, short *userdata) β€” same but non-const short data
  • void setValues (int start, int num, const short xyzw[][4]) β€” set from a short array of xyzw[][4]
  • void set1Value (int idx, short x, short y, short z, short w) β€” set one vector from four separate shorts
  • void set1Value (int idx, const short xyzw[4]) β€” set one vector from a short xyzw[4]
  • void setValue (short x, short y, short z, short w) β€” one vector, four shorts
  • void setValue (const short xyzw[4]) β€” one vector from a short xyzw[4]

🫢 Public Member Functions inherited from SoMField 🫢

  • virtual ~SoMField ()
  • int getNum (void) const
  • void setNum (const int num)
  • virtual void deleteValues (int start, int num=-1)
  • virtual void insertSpace (int start, 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
  • virtual void fixCopy (SbBool copyconnections)
  • virtual SbBool referencesCopy (void) const
  • void copyConnection (const SoField *fromfield)
  • virtual SbBool read (SoInput *in, const SbName &name)
  • virtual void write (SoOutput *out, const SbName &name) const
  • virtual void countWriteRefs (SoOutput *out) 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) β€” make an instance πŸ¦‹
  • static SoType getClassTypeId (void) β€” the class type id
  • static void initClass (void) β€” set the class up

🌟 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 πŸŽ€

  • SbVec4s * values β€” the actual values, right there

πŸ“ 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 πŸ’«

okay so here's the tea. The SoMFVec4s class is a container for SbVec4s vectors.

This field is the one you reach for when nodes, engines or other field containers need to store an array of vectors with four elements. four elements. array. you got it. 🫢

This field supports application data sharing through a setValuesPointer() method. Head to the SoMField documentation for the info on how to actually use this function β€” it's all there, bestie, I'm not gonna gatekeep you. πŸ“–

πŸ¦‹ See also πŸ¦‹

SbVec4s, SoSFVec4s

🌸 Since 🌸

Coin 2.5


πŸ’… Member Function Documentation πŸ’…

SoType SoMFVec4s::getTypeId (void ) const [virtual]

Returns the type identification instance which uniquely identifies the Coin field class the object belongs to. it's giving "who am I" but make it a SoType.

See also: getClassTypeId(), SoType

Implements SoField.

void SoMFVec4s::copyFrom (const SoField & f) [virtual]

Copy value(s) from f into this field. Heads up: f must be of the same type as this field. no mixing, no mashups. πŸ™ˆ

Implements SoField.

SbBool SoMFVec4s::isSame (const SoField & f) const [virtual]

Check for equal type and value(s). both. type and values. πŸ’―

Implements SoField.

void SoMFVec4s::deleteAllValues (void ) [protected], [virtual]

This API member is considered internal to the library, as it is not likely to be of interest to the application programmer. so like, not your business unless it is. 🀷

Implements SoMField.

void SoMFVec4s::copyValue (int to, int from) [protected], [virtual]

This method is used for moving values around internally within a multivalue field. It needs to be overridden in each field so it automatically takes care of running copy contructors where necessary.

Implements SoMField.

const SbVec4s * SoMFVec4s::getValues (const int start) const [inline]

Returns a pointer to the values array. 🫡 pointing. at the array.

References SoMField::num.

void SoMFVec4s::setValues (int start, int numarg, const short xyzw[][4])

Set num vector array elements from xyzw, starting at index start.

References SoMField::maxNum, SoMField::num, and SoField::valueChanged().

void SoMFVec4s::set1Value (int idx, short x, short y, short z, short w)

Set the vector at idx. just the one. ⭐

void SoMFVec4s::set1Value (int idx, const short xyzw[4])

Set the vector at idx. same energy, different argument shape. ✨

void SoMFVec4s::setValue (short x, short y, short z, short w)

Set this field to contain a single vector with the given element values.

void SoMFVec4s::setValue (const short xyzw[4])

Set this field to contain a single vector with the given element values.

References SoMField::setNum().


🌈 Author 🌈

Generated automatically by Doxygen for Coin from the source code. yes girl, the robots wrote it, we're all just living in its world. πŸ€–


and that's the page bestie!! this was SoMFVec4s(3) from Coin, Version 2.5.0 β€” go forth and store those arrays of four-element vectors, you absolute main character πŸ‘‘πŸ’–βœ¨

πŸ“¦ where this page comes from