SoBoolOperation(3)

πŸ“¦
version 4.0.10 Β· 4 versions
, in fedora 43, fedora 44

πŸ’– SoBoolOperation πŸ’–

okay bestie, welcome to the Coin manual, page one of SoBoolOperation(3) β€” and she's a long one, so buckle up, we're doing this in parts πŸŽ€


✨ NAME ✨

SoBoolOperation β€” the SoBoolOperation engine evaluates expressions of boolean logic. fr fr, that's her whole job πŸ’…


🌸 SYNOPSIS 🌸

#include <Inventor/engines/SoBoolOperation.h>

Inherits SoEngine.

πŸ¦‹ Public Types πŸ¦‹

  • enum Operation { CLEAR, SET, A, NOT_A, B, NOT_B, A_OR_B, NOT_A_OR_B, A_OR_NOT_B, NOT_A_OR_NOT_B, A_AND_B, NOT_A_AND_B, A_AND_NOT_B, NOT_A_AND_NOT_B, A_EQUALS_B, A_NOT_EQUALS_B }

πŸ¦‹ Public Member Functions πŸ¦‹

  • virtual SoType getTypeId (void) const
  • virtual const SoFieldData * getFieldData (void) const
  • virtual const SoEngineOutputData * getOutputData (void) const
  • SoBoolOperation ()

Public Member Functions inherited from SoEngine πŸ‘‘

  • void evaluateWrapper (void)
  • virtual int getOutputs (SoEngineOutputList &l) const
  • SoEngineOutput * getOutput (const SbName &outputname) const
  • SbBool getOutputName (const SoEngineOutput *output, SbName &outputname) const
  • SbBool isNotifying (void) const
  • virtual void notify (SoNotList *nl)
  • SoEngine * copy (void) const
  • virtual SoFieldContainer * copyThroughConnection (void) const
  • SbBool shouldCopy (void) const
  • virtual void writeInstance (SoOutput *out)

Public Member Functions inherited from SoFieldContainer 🫢

  • void setToDefaults (void)
  • SbBool hasDefaultValues (void) const
  • SbBool fieldsAreEqual (const SoFieldContainer *container) const
  • void copyFieldValues (const SoFieldContainer *container, SbBool copyconnections=FALSE)
  • SbBool set (const char *const fielddata)
  • void get (SbString &fielddata)
  • virtual int getFields (SoFieldList &l) const
  • virtual int getAllFields (SoFieldList &l) const
  • virtual SoField * getField (const SbName &name) const
  • virtual SoField * getEventIn (const SbName &name) const
  • virtual SoField * getEventOut (const SbName &name) const
  • SbBool getFieldName (const SoField *const field, SbName &name) const
  • SbBool enableNotify (const SbBool flag)
  • SbBool isNotifyEnabled (void) const
  • SbBool set (const char *fielddata, SoInput *input)
  • void get (SbString &fielddata, SoOutput *out)
  • virtual SbBool validateNewFieldValue (SoField *field, void *newval)
  • virtual void addWriteReference (SoOutput *out, SbBool isfromfield=FALSE)
  • SbBool getIsBuiltIn (void) const
  • virtual void copyContents (const SoFieldContainer *from, SbBool copyconnections)
  • virtual void getFieldsMemorySize (size_t &managed, size_t &unmanaged) const
  • void setUserData (void *userdata) const
  • void * getUserData (void) const

Public Member Functions inherited from SoBase 🌈

  • void ref (void) const
  • void unref (void) const
  • void unrefNoDelete (void) const
  • int32_t getRefCount (void) const
  • void touch (void)
  • SbBool isOfType (SoType type) const β€” Returns TRUE if the type of this object is either of the same type or inherited from type.
  • virtual SbName getName (void) const
  • virtual void setName (const SbName &newname)
  • virtual void startNotify (void)
  • void addAuditor (void *const auditor, const SoNotRec::Type type)
  • void removeAuditor (void *const auditor, const SoNotRec::Type type)
  • const SoAuditorList & getAuditors (void) const
  • SbBool shouldWrite (void)
  • void assertAlive (void) const

πŸ’œ Static Public Member Functions πŸ’œ

  • static SoType getClassTypeId (void)
  • static void * createInstance (void)
  • static void initClass () β€” Sets up initialization for data common to all instances of this class, like submitting necessary information to the Coin type system.

Static Public Member Functions inherited from SoEngine πŸ‘‘

  • static void initClass (void) β€” Sets up initialization for data common to all instances of this class, like submitting necessary information to the Coin type system.
  • static void initClasses (void)
  • static SoType getClassTypeId (void) β€” This static method returns the SoType object associated with objects of this class.
  • static SoEngine * getByName (const SbName &name)
  • static int getByName (const SbName &name, SoEngineList &el)

Static Public Member Functions inherited from SoFieldContainer 🫢

  • static void initClass (void) β€” Sets up initialization for data common to all instances of this class, like submitting necessary information to the Coin type system.
  • static SoType getClassTypeId (void) β€” This static method returns the SoType object associated with objects of this class.
  • static void cleanupClass (void)
  • static void initCopyDict (void)
  • static void addCopy (const SoFieldContainer *orig, const SoFieldContainer *copy)
  • static SoFieldContainer * checkCopy (const SoFieldContainer *orig)
  • static SoFieldContainer * findCopy (const SoFieldContainer *orig, const SbBool copyconnections)
  • static void copyDone (void)

Static Public Member Functions inherited from SoBase 🌈

  • static void initClass (void) β€” Sets up initialization for data common to all instances of this class, like submitting necessary information to the Coin type system.
  • static SoType getClassTypeId (void) β€” This static method returns the SoType object associated with objects of this class.
  • static void addName (SoBase *const base, const char *const name)
  • static void removeName (SoBase *const base, const char *const name)
  • static void incrementCurrentWriteCounter (void)
  • static void decrementCurrentWriteCounter (void)
  • static SoBase * getNamedBase (const SbName &name, SoType type)
  • static int getNamedBases (const SbName &name, SoBaseList &baselist, SoType type)
  • static SbBool read (SoInput *input, SoBase *&base, SoType expectedtype)
  • static void setInstancePrefix (const SbString &c)
  • static void setTraceRefs (SbBool trace)
  • static SbBool getTraceRefs (void)
  • static SbBool connectRoute (SoInput *input, const SbName &fromnodename, const SbName &fromfieldname, const SbName &tonodename, const SbName &tofieldname)
  • static SbBool readRoute (SoInput *input)

πŸ“ Public Attributes πŸ“

  • SoMFBool a
  • SoMFBool b
  • SoMFEnum operation
  • SoEngineOutput output
  • SoEngineOutput inverse

🧚 Protected Member Functions 🧚

  • virtual ~SoBoolOperation (void)

Protected Member Functions inherited from SoEngine πŸ‘‘

  • SoEngine (void)
  • virtual ~SoEngine (void)
  • virtual SbBool readInstance (SoInput *in, unsigned short flags)
  • virtual void inputChanged (SoField *which)
  • void writeOutputTypes (SoOutput *out)

Protected Member Functions inherited from SoFieldContainer 🫢

  • SoFieldContainer (void)
  • virtual ~SoFieldContainer ()

Protected Member Functions inherited from SoBase 🌈

  • SoBase (void)
  • virtual ~SoBase ()
  • SbBool hasMultipleWriteRefs (void) const
  • SbBool writeHeader (SoOutput *out, SbBool isgroup, SbBool isengine) const
  • void writeFooter (SoOutput *out) const
  • virtual const char * getFileFormatName (void) const
  • virtual SoNotRec createNotRec (void)

πŸ’… Static Protected Member Functions πŸ’…

  • static const SoFieldData ** getInputDataPtr (void)
  • static const SoEngineOutputData ** getOutputDataPtr (void)

Static Protected Member Functions inherited from SoEngine πŸ‘‘

  • static const SoFieldData ** getInputDataPtr (void)
  • static const SoEngineOutputData ** getOutputDataPtr (void)

Static Protected Member Functions inherited from SoBase 🌈

  • static uint32_t getCurrentWriteCounter (void)
  • static void staticDataLock (void)
  • static void staticDataUnlock (void)

⭐ Additional Inherited Members ⭐

  • Protected Types inherited from SoBase:
    • enum BaseFlags { IS_ENGINE = 0x01, IS_GROUP = 0x02 }
  • Protected Attributes inherited from SoFieldContainer:
    • SbBool isBuiltIn

πŸ‘‘ Detailed Description πŸ‘‘

The SoBoolOperation engine evaluates expressions of boolean logic.

The multivalue fields SoBoolOperation::a and SoBoolOperation::b are combined according to the operations set in SoBoolOperation::operation, with the resulting TRUE or FALSE value set on SoBoolOperation::output. no cap, that's the whole tea β˜•


πŸŽ€ Member Enumeration Documentation πŸŽ€

πŸ¦‹ enum SoBoolOperation::Operation πŸ¦‹

Enumeration of available boolean logic operators. she's giving options, and there are a lot of them πŸ’…

Enumerator:

  • CLEAR β€” Always set SoBoolOperation::output to FALSE, no matter the input values.
  • SET β€” Always set SoBoolOperation::output to TRUE, no matter the input values.
  • A β€” Output result = SoBoolOperation::a
  • NOT_A β€” Output result = ! SoBoolOperation::a
  • B β€” Output result = SoBoolOperation::b
  • NOT_B β€” Output result = ! SoBoolOperation::b
  • A_OR_B β€” r = a || b
  • NOT_A_OR_B β€” r = !a || b
  • A_OR_NOT_B β€” r = a || !b
  • NOT_A_OR_NOT_B β€” r = !a || !b
  • A_AND_B β€” r = a && b
  • NOT_A_AND_B β€” r = !a && b
  • A_AND_NOT_B β€” r = a && !b
  • NOT_A_AND_NOT_B β€” r = !a && !b
  • A_EQUALS_B β€” r = a==b
  • A_NOT_EQUALS_B β€” r = ! a==b

🌸 Constructor & Destructor Documentation 🌸

πŸ¦‹ SoBoolOperation::SoBoolOperation (void ) πŸ¦‹

Default constructor. she's born ready ✨

πŸ¦‹ SoBoolOperation::~SoBoolOperation (void ) [protected], [virtual] πŸ¦‹

Destructor. rip bestie πŸ’€


πŸ’œ Member Function Documentation πŸ’œ

πŸ¦‹ SoType SoBoolOperation::getClassTypeId (void ) [static] πŸ¦‹

This static method returns the SoType object associated with objects of this class.

πŸ¦‹ SoType SoBoolOperation::getTypeId (void ) const [virtual] πŸ¦‹

Returns the type identification of an object derived from a class inheriting SoBase. This is used for runtime type checking and "downward" casting.

Implements SoBase.

πŸ¦‹ const SoFieldData ** SoBoolOperation::getInputDataPtr (void ) [static], [protected] πŸ¦‹

Returns the SoFieldData class which holds information about inputs in this engine.

πŸ¦‹ const SoEngineOutputData ** SoBoolOperation::getOutputDataPtr (void ) [static], [protected] πŸ¦‹

Returns the SoEngineOutputData class which holds information about the outputs in this engine.

πŸ¦‹ const SoFieldData * SoBoolOperation::getFieldData (void ) const [virtual] πŸ¦‹

Returns the SoFieldData class which holds information about inputs in this engine.

Reimplemented from SoFieldContainer.

πŸ¦‹ const SoEngineOutputData * SoBoolOperation::getOutputData (void ) const [virtual] πŸ¦‹

Returns the SoEngineOutputData class which holds information about the outputs in this engine.

Implements SoEngine.

πŸ¦‹ void * SoBoolOperation::createInstance (void ) [static] πŸ¦‹

Creates a new instance of the class type corresponding to the SoType object.


🫢 okay bestie, that's part one done β€” but don't you dare leave yet, there's MORE. part two is coming, so stay tuned πŸ‘‘βœ¨

πŸ’– MEMBER DATA DOCUMENTATION πŸ’–

okay bestie, this is the part where we meet the actual fields β€” the lil variables that hold all the drama. every single one, no skipping, we're doing this properly ✨


  • SoMFBool SoBoolOperation::a β€” the first set of boolean input "signal" values. like, half of your inputs live here 🫢
  • SoMFBool SoBoolOperation::b β€” the second set of boolean input "signal" values. the other half. a and b are giving duo energy, no cap πŸ’…
  • SoMFEnum SoBoolOperation::operation β€” a whole set of boolean logic expressions. each one gets used to combine SoBoolOperation::a with SoBoolOperation::b β€” and it does that for each index value from 0 to the last value β€” to produce the results over on the SoBoolOperation::output field. so like, index by index, operation[i] decides how a[i] and b[i] are gonna talk to each other πŸ”₯
  • SoEngineOutput SoBoolOperation::output β€” (SoMFBool) this is the result of each (a[i] operation[i] b[i]) expression. the receipts, the payoff, the moment of truth πŸ’€βœ¨
  • SoEngineOutput SoBoolOperation::inverse β€” (SoMFBool) the set of inverse results. yep, it's the mirror version, the opposite-girlies collection 🌈
ngl the vibe here is very "three parallel arrays walk into a bar" β€” a, b and operation all line up by index, and output plus inverse hold the glow-up. literally every field above, none left behind, we ate πŸ“

πŸŽ€ AUTHOR πŸŽ€

Generated automatically by Doxygen for Coin from the source code. yeah she's a robot-authored icon, and honestly? she's serving πŸ‘‘


and that's a wrap on SoBoolOperation(3) bestie!! this whole page was Coin documentation, version 4.0.10, dated Thu Jun 25 2026 00:00:00 β€” so go forth, combine your booleans, and stay iconic πŸ’–πŸ¦‹βœ¨ periodt.

πŸ“¦ where this page comes from