SoEngineOutputData(3)

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

πŸ’– SoEngineOutputData πŸ’–

okay bestie, so this is a Coin manual page β€” SoEngineOutputData(3) β€” and it's genuinely giving "behind-the-scenes main character". Let's get into it.


✨ NAME ✨

SoEngineOutputData β€” the class that's literally a container for a prototype set of outputs. that's it. that's the whole vibe. πŸ’…


πŸŽ€ SYNOPSIS πŸŽ€

#include <Inventor/engines/SoOutputData.h>

🌸 Public Member Functions 🌸

SoEngineOutputData (void)
SoEngineOutputData (const SoEngineOutputData *data)
SoEngineOutputData (int approxnum)
~SoEngineOutputData (void)
void addOutput (const SoEngine *base, const char *name, const
    SoEngineOutput *output, SoType type)
void addOutput (const SoNodeEngine *base, const char *name, const
    SoEngineOutput *output, SoType type)
int getNumOutputs (void) const
const SbName & getOutputName (int index) const
SoEngineOutput * getOutput (const SoEngine *engine, int index) const
SoEngineOutput * getOutput (const SoNodeEngine *engine, int index) const
int getIndex (const SoEngine *engine, const SoEngineOutput *output)
    const
int getIndex (const SoNodeEngine *engine, const SoEngineOutput *output)
    const
const SoType & getType (int index) const
SbBool readDescriptions (SoInput *input, SoEngine *engine) const
void writeDescriptions (SoOutput *out, SoEngine *engine) const

πŸ¦‹ Detailed Description πŸ¦‹

The SoEngineOutputData class is a container for a prototype set of outputs. yes we said it twice, the manpage said it twice, we're being faithful to the source, okay? 😌

This class gets instantiated once for each class of objects that use outputs, and that need to be able to import and export them. one per class, no sharing, it's giving only child energy fr.

Every output of a class is stored along with:

  • the name it's been given within its "owner" class,
  • the type it's been given,
  • and a pointer offset to the dynamic instance of the output itself.
ngl, it is unlikely that us regular application programmers should ever need to use any of the methods of this class directly. like. it's not for us. it's for the library internals. hands off bestie 🫢

πŸ’… Constructor & Destructor Documentation πŸ’…

🌈 SoEngineOutputData::SoEngineOutputData (void )

Constructor. the basic one. no notes. ✨

🌈 SoEngineOutputData::SoEngineOutputData (const SoEngineOutputData * data)

Copy constructor. it copies. iconic behaviour honestly. πŸŽ€

🌈 SoEngineOutputData::SoEngineOutputData (int approxnum)

Constructor. You supply the approximated number of outputs in the engine, and that optimizes memory allocation. lowkey thoughtful of them ngl πŸ’–

🌈 SoEngineOutputData::~SoEngineOutputData (void )

Destructor. it's the end of the era. goodbye queen 😭


⭐ Member Function Documentation ⭐

πŸ”₯ void SoEngineOutputData::addOutput (const SoEngine * base, const char * name, const SoEngineOutput * output, SoType type)

Add a new output to our internal list. 🫢

The name and type get stored along with a pointer offset between base and output β€” and that offset will be valid for all instances of the class type of base. one offset, every instance, slay.

πŸ”₯ void SoEngineOutputData::addOutput (const SoNodeEngine * base, const char * name, const SoEngineOutput * output, SoType type)

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. same energy, different base type, that's the whole tea β˜•

πŸ”₯ int SoEngineOutputData::getNumOutputs (void ) const

Returns the number of outputs contained within this instance. a count. a little census of outputs. πŸ“Š

πŸ”₯ const SbName & SoEngineOutputData::getOutputName (int index) const

Returns the name of the output at index. names are important, we love a named output πŸ’œ

πŸ”₯ SoEngineOutput * SoEngineOutputData::getOutput (const SoEngine * engine, int index) const

Returns a pointer to the output at index within the engine instance. here's the thing you asked for, bestie 🎁

πŸ”₯ SoEngineOutput * SoEngineOutputData::getOutput (const SoNodeEngine * engine, int index) const

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. again! same function, different signature, it's giving twins πŸ‘―

πŸ”₯ int SoEngineOutputData::getIndex (const SoEngine * engine, const SoEngineOutput * output) const

Returns the internal index value of output in engine.

⚠️ if output is not part of engine, it returns -1. so like, check for that. don't get got. πŸ’€

πŸ”₯ int SoEngineOutputData::getIndex (const SoNodeEngine * engine, const SoEngineOutput * output) const

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. yes, the -1 thing applies to this one too, conceptually, it's the same function πŸ’…

πŸ”₯ const SoType & SoEngineOutputData::getType (int index) const

Returns the type of the output at index. type check! vibe check! same thing basically ✨

πŸ”₯ SbBool SoEngineOutputData::readDescriptions (SoInput * in, SoEngine * engine) const

FIXME: doc

okay so this is literally what the manpage says. FIXME: doc. the documentation for this one is a TODO. it's giving unfinished homework. i cannot make up what it does, that would be lying to you, and i would never 😭 ngl we're all just waiting on the glow-up.

πŸ”₯ void SoEngineOutputData::writeDescriptions (SoOutput * out, SoEngine * engine) const

FIXME: doc

same situation bestie. the manpage itself has FIXME: doc here and i'm not about to invent behaviour that isn't documented. no cap. 🫢

πŸ‘‘ Author πŸ‘‘

Generated automatically by Doxygen for Coin from the source code. it's not a person, it's a tool, and honestly? it ate. πŸ€–βœ¨


🧚 Sign-off 🧚

and that's the whole page! this was Version 4.0.10, dated Thu Jun 25 2026 00:00:00, from the SoEngineOutputData(3) manual. go forth and never call these methods directly unless you absolutely must, bestie. mwah πŸ’–πŸŽ€πŸ¦‹

πŸ“¦ where this page comes from