SoEngineOutput - Online Linux Manual PageSection : 3
Updated : Mon Jan 25 2021
Source : Version 2.5.0
Note : Coin

NAMESoEngineOutput − The SoEngineOutput class is the output slots in SoEngine instances​.

SYNOPSIS
#include <Inventor/engines/SoEngine​.h>

Public Member FunctionsSoEngineOutput (void)
virtual ~SoEngineOutput ()
SoType getConnectionType (void) const
int getForwardConnections (SoFieldList &fl) const
void enable (const SbBool flag)
SbBool isEnabled (void) const
SoEngine * getContainer (void) const
SoNodeEngine * getNodeContainer (void) const
SbBool isNodeEngineOutput (void) const
void setContainer (SoEngine *engine)
void setNodeContainer (SoNodeEngine *nodeengine)
void addConnection (SoField *f)
void removeConnection (SoField *f)
int getNumConnections (void) const
SoField * operator[] (int i) const
void prepareToWrite (void) const
void doneWriting (void) const
void touchSlaves (SoNotList *nl, SbBool donotify)
SoFieldContainer * getFieldContainer (void)

Detailed DescriptionThe SoEngineOutput class is the output slots in SoEngine instances​. SoEngineOutput has methods for convenient handling of the connections made from SoEngine objects to SoField objects​. See also SoEngine, SoField

Constructor & Destructor Documentation

SoEngineOutput::SoEngineOutput (void)Constructor​. The SoEngineOutput will initially not be contained within an SoEngine nor will it have any slave fields attached​. See also setContainer()

SoEngineOutput::~SoEngineOutput () [virtual]Destructor​. References getForwardConnections(), and SoDebugError::postInfo()​.

Member Function Documentation

SoType SoEngineOutput::getConnectionType (void) constReturns the type of the engine output​. References getContainer(), getNodeContainer(), SoEngine::getOutputData(), SoNodeEngine::getOutputData(), and isNodeEngineOutput()​. Referenced by SoField::connectFrom(), and SoDB::createRoute()​.

int SoEngineOutput::getForwardConnections (SoFieldList & fl) constAdds all slave fields connected to this output to fl​. Returns the number of slaves​. See also addConnection() removeConnection() References SoFieldList::append(), SoField::getContainer(), SoFieldConverter::getForwardConnections(), SbPList::getLength(), and SoBase::isOfType()​. Referenced by SoDB::createRoute(), SoField::disconnect(), and ~SoEngineOutput()​.

void SoEngineOutput::enable (const SbBool flag)Sets the enabled flag​. If output is disabled, the fields connected to this output will not be changed when the engine is evaluated​. See also isEnabled()​. References touchSlaves()​. Referenced by SoGate::inputChanged(), SoTimeCounter::inputChanged(), SoVRMLTimeSensor::inputChanged(), SoCounter::SoCounter(), SoTimeCounter::SoTimeCounter(), and SoVRMLTimeSensor::SoVRMLTimeSensor()​.

SbBool SoEngineOutput::isEnabled (void) constReturns status of the enabled flag​. See also enable()​. Referenced by SoField::disconnect(), SoGate::inputChanged(), and touchSlaves()​.

SoEngine * SoEngineOutput::getContainer (void) constReturns the engine containing this output​. If the engine containing this output is a NodeEngine, this method returns NULL​. See also setContainer(), getNodeContainer() References isNodeEngineOutput(), and SoDebugError::postWarning()​. Referenced by addConnection(), SoField::copyConnection(), SoField::evaluateConnection(), getConnectionType(), and SoField::referencesCopy()​.

SoNodeEngine * SoEngineOutput::getNodeContainer (void) constReturns the node engine containing this output​. If the engine containing this output is not a NodeEgine, this method returns NULL​. This function is an extension for Coin, and it is not available in the original SGI Open Inventor v2​.1 API​.
See also setNodeContainer(), getContainer() Since Coin 2​.0 References isNodeEngineOutput(), and SoDebugError::postWarning()​. Referenced by SoField::copyConnection(), SoField::evaluateConnection(), getConnectionType(), and SoField::referencesCopy()​.

SbBool SoEngineOutput::isNodeEngineOutput (void) constReturns TRUE if the container is a NodeEngine​. This function is an extension for Coin, and it is not available in the original SGI Open Inventor v2​.1 API​.
See also getNodeContainer(), getContainer() Since Coin 2​.0 References SoBase::getTypeId(), and SoType::isDerivedFrom()​. Referenced by addConnection(), SoField::copyConnection(), SoField::evaluateConnection(), getConnectionType(), getContainer(), getNodeContainer(), and SoField::referencesCopy()​.

void SoEngineOutput::setContainer (SoEngine * engine)Sets the engine containing this output​. See also getContainer()

void SoEngineOutput::setNodeContainer (SoNodeEngine * nodeengine)Sets the NodeEngine containing this output​. This function is an extension for Coin, and it is not available in the original SGI Open Inventor v2​.1 API​.
See also getNodeContainer() Since Coin 2​.0

void SoEngineOutput::addConnection (SoField * f)Adds f to the list of connections from this output​. Adds 1 to the reference count of the container engine​. See also removeConnection(), getForwardConnections() References SoFieldList::append(), SbPList::find(), getContainer(), SoField::getContainer(), getFieldContainer(), isNodeEngineOutput(), SoBase::isOfType(), SoDebugError::postWarning(), and SoBase::ref()​. Referenced by SoField::connectFrom()​.

void SoEngineOutput::removeConnection (SoField * f)Removes f from the list of connections from this output​. Subtracts 1 from the reference count of the container engine​. If the reference count reaches zero (which will happen if this was the last connection and the application programmer did not explicitly ref the engine), the container engine will be deallocated​. See also addConnection(), getForwardConnections() References SbPList::find(), SoField::getContainer(), getFieldContainer(), SoBase::isOfType(), SoDebugError::postWarning(), SbPList::remove(), and SoBase::unref()​. Referenced by SoField::disconnect()​.

int SoEngineOutput::getNumConnections (void) constReturns the number of fields in the list of connections​. See also operator[], addConnection() References SbPList::getLength()​. Referenced by touchSlaves()​.

SoEngineOutput * SoEngineOutput::operator[] (int i) constReturns the field at index i in the list of connections​. Please note that this might not be the same field as the one the output was originally connected to, since a field converted might have been inserted to converted the output to match the field type​. See also getNumConnections() Returns element at idx​. Will automatically expand the size of the internal array if idx is outside the current bounds of the list​. The values of any additional pointers are then set to NULL​.

void SoEngineOutput::prepareToWrite (void) constDisables notifications on fields connected to this output​. This is done before the engine is evaulated, since the fields we are going to write into have already been notified​. See also doneWriting() References SbList< Type >::append(), SoField::enableNotify(), SbPList::getLength(), SoField::isNotifyEnabled(), and SbList< Type >::truncate()​.

void SoEngineOutput::doneWriting (void) constRestores the notification flags on fields connected to this output after evaluating​. See also prepareToWrite() References SbList< Type >::getArrayPtr(), SbList< Type >::getLength(), and SbPList::getLength()​.

void SoEngineOutput::touchSlaves (SoNotList * nl, SbBool donotify)Notify the fields attached to this engine output that the output value has changed​. If donotify is TRUE, propagate the notification to the fields​. Otherwise just mark the fields 'dirty' for re-evalution​. Note that this method is not part of the original Open Inventor API​. References getNumConnections(), isEnabled(), SoField::notify(), and SoField::setDirty()​. Referenced by enable()​.

SoFieldContainer * SoEngineOutput::getFieldContainer (void)Convenience method that returns a field container​. This method can be used both for NodeEngine and Engine outputs​. This function is an extension for Coin, and it is not available in the original SGI Open Inventor v2​.1 API​.
Since Coin 2​.0 Referenced by addConnection(), SoField::connectFrom(), SoField::countWriteRefs(), and removeConnection()​.

AuthorGenerated automatically by Doxygen for Coin from the source code​.
0
Johanes Gumabo
Data Size   :   46,265 byte
man-SoEngineOutput.3coin2Build   :   2024-12-05, 20:55   :  
Visitor Screen   :   x
Visitor Counter ( page / site )   :   2 / 203,710
Visitor ID   :     :  
Visitor IP   :   3.137.177.116   :  
Visitor Provider   :   AMAZON-02   :  
Provider Position ( lat x lon )   :   39.962500 x -83.006100   :   x
Provider Accuracy Radius ( km )   :   1000   :  
Provider City   :   Columbus   :  
Provider Province   :   Ohio ,   :   ,
Provider Country   :   United States   :  
Provider Continent   :   North America   :  
Visitor Recorder   :   Version   :  
Visitor Recorder   :   Library   :  
Online Linux Manual Page   :   Version   :   Online Linux Manual Page - Fedora.40 - march=x86-64 - mtune=generic - 24.12.05
Online Linux Manual Page   :   Library   :   lib_c - 24.10.03 - march=x86-64 - mtune=generic - Fedora.40
Online Linux Manual Page   :   Library   :   lib_m - 24.10.03 - march=x86-64 - mtune=generic - Fedora.40
Data Base   :   Version   :   Online Linux Manual Page Database - 24.04.13 - march=x86-64 - mtune=generic - fedora-38
Data Base   :   Library   :   lib_c - 23.02.07 - march=x86-64 - mtune=generic - fedora.36

Very long time ago, I have the best tutor, Wenzel Svojanovsky . If someone knows the email address of Wenzel Svojanovsky , please send an email to johanes_gumabo@yahoo.co.id .
If error, please print screen and send to johanes_gumabo@yahoo.co.id
Under development. Support me via PayPal.