Coin Logo http://www.sim.no
http://www.coin3d.org

SoAccumulatedElement.h
1 #ifndef COIN_SOACCUMULATEDELEMENT_H
2 #define COIN_SOACCUMULATEDELEMENT_H
3 
4 /**************************************************************************\
5  *
6  * This file is part of the Coin 3D visualization library.
7  * Copyright (C) 1998-2007 by Systems in Motion. All rights reserved.
8  *
9  * This library is free software; you can redistribute it and/or
10  * modify it under the terms of the GNU General Public License
11  * ("GPL") version 2 as published by the Free Software Foundation.
12  * See the file LICENSE.GPL at the root directory of this source
13  * distribution for additional information about the GNU GPL.
14  *
15  * For using Coin with software that can not be combined with the GNU
16  * GPL, and for taking advantage of the additional benefits of our
17  * support services, please contact Systems in Motion about acquiring
18  * a Coin Professional Edition License.
19  *
20  * See http://www.coin3d.org/ for more information.
21  *
22  * Systems in Motion, Postboks 1283, Pirsenteret, 7462 Trondheim, NORWAY.
23  * http://www.sim.no/ sales@sim.no coin-support@coin3d.org
24  *
25 \**************************************************************************/
26 
27 #include <Inventor/elements/SoSubElement.h>
28 #include <Inventor/lists/SbList.h>
29 
30 class COIN_DLL_API SoAccumulatedElement : public SoElement {
31  typedef SoElement inherited;
32 
33  SO_ELEMENT_ABSTRACT_HEADER(SoAccumulatedElement);
34 public:
35  static void initClass(void);
36 protected:
37  virtual ~SoAccumulatedElement();
38 
39 public:
40  virtual SbBool matches(const SoElement * element) const;
41 
42 protected:
43  void init(SoState * state);
44  void push(SoState * state);
45 
46  void clearNodeIds(void);
47  void addNodeId(const SoNode * const node);
48  void setNodeId(const SoNode * const node);
49  void copyNodeIds(const SoAccumulatedElement * copyfrom);
50  virtual SoElement * copyMatchInfo(void) const;
51  virtual void captureThis(SoState * state) const;
52 
54 
55 private:
56  SbBool recursecapture;
57 };
58 
59 #endif // !COIN_SOACCUMULATEDELEMENT_H
SbPList::getLength
int getLength(void) const
Definition: SbPList.h:94
SoType::badType
static SoType badType(void)
Definition: SoType.cpp:664
SoVRMLShape::GLRender
virtual void GLRender(SoGLRenderAction *action)
Definition: Shape.cpp:262
SoState
The SoState class manages the Coin scenegraph traversal state data.
Definition: SoState.h:35
SoVRMLShape::copyContents
virtual void copyContents(const SoFieldContainer *from, SbBool copyConn)
Definition: Shape.cpp:390
SoFieldData::getNumFields
int getNumFields(void) const
Definition: SoFieldData.cpp:288
SoNode::search
virtual void search(SoSearchAction *action)
Definition: SoNode.cpp:1120
SoReadError::post
static void post(const SoInput *const in, const char *const format,...)
Definition: SoReadError.cpp:110
SoField::getClassTypeId
static SoType getClassTypeId(void)
Definition: SoField.cpp:680
SoVRMLSensor
The SoVRMLSensor class is an abstract superclass for VRML sensors.
Definition: SoVRMLSensor.h:30
SoAction::hasTerminated
SbBool hasTerminated(void) const
Definition: SoAction.cpp:1018
SoElement::getNextInStack
SoElement * getNextInStack(void) const
Definition: SoElement.cpp:734
SoFieldContainer::getField
virtual SoField * getField(const SbName &name) const
Definition: SoFieldContainer.cpp:364
SoType::fromName
static SoType fromName(const SbName name)
Definition: SoType.cpp:463
SbName
The SbName class stores strings by reference.
Definition: SbName.h:31
SoAccumulatedElement
The SoAccumulatedElement class is an abstract class for storing accumulated state.
Definition: SoAccumulatedElement.h:30
SoState::pop
void pop(void)
Definition: SoState.cpp:284
SoAccumulatedElement::push
void push(SoState *state)
Definition: SoAccumulatedElement.cpp:72
SoChildList
The SoChildList class is a container for node children.
Definition: SoChildList.h:33
SoNode::setCompatibilityTypes
static void setCompatibilityTypes(const SoType &nodetype, const uint32_t bitmask)
Definition: SoNode.cpp:1480
SoWriteAction
The SoWriteAction class writes a scene graph to file.
Definition: SoWriteAction.h:31
SoSensor
The SoSensor class is the abstract base class for all sensors.
Definition: SoSensor.h:34
SoNode::notify
virtual void notify(SoNotList *l)
Definition: SoNode.cpp:423
SoAccumulatedElement::addNodeId
void addNodeId(const SoNode *const node)
Definition: SoAccumulatedElement.cpp:102
SoOutput::write
virtual void write(const char c)
Definition: SoOutput.cpp:757
SoOutput::indent
virtual void indent(void)
Definition: SoOutput.cpp:1074
SoOutput
The SoOutput class is an abstraction of an output stream.
Definition: SoOutput.h:42
SoNode::GLRender
virtual void GLRender(SoGLRenderAction *action)
Definition: SoNode.cpp:904
SoSFBool
The SoSFBool class is a container for an SbBool value.
Definition: SoSFBool.h:30
SbList::truncate
void truncate(const int length, const int dofit=0)
Definition: SbList.h:149
SoNode::rayPickS
static void rayPickS(SoAction *action, SoNode *node)
Definition: SoNode.cpp:1067
SoState::push
void push(void)
Definition: SoState.cpp:265
SoVRMLShape::renderCaching
SoSFEnum renderCaching
Definition: SoVRMLShape.h:50
SoDelayQueueSensor::getDefaultPriority
static uint32_t getDefaultPriority(void)
Definition: SoDelayQueueSensor.cpp:137
SoVRMLShape::callback
virtual void callback(SoCallbackAction *action)
Definition: Shape.cpp:256
SbMutex::unlock
int unlock(void)
Definition: SbMutex.h:41
SbString::getSubString
SbString getSubString(int startidx, int endidx=-1) const
Definition: SbString.h:73
SoField::shouldWrite
SbBool shouldWrite(void) const
Definition: SoField.cpp:1569
SoSearchAction
The SoSearchAction class provides methods for searching through scene graphs.
Definition: SoSearchAction.h:32
SoDebugError::postWarning
static void postWarning(const char *const source, const char *const format,...)
Definition: SoDebugError.cpp:324
SoAction
The SoAction class is the base class for all traversal actions.
Definition: SoAction.h:67
SoVRMLShape::notify
virtual void notify(SoNotList *list)
Definition: Shape.cpp:380
SbMutex::lock
int lock(void)
Definition: SbMutex.h:35
SoVRMLScript::write
virtual void write(SoWriteAction *action)
Definition: Script.cpp:440
SoVRMLShape::AUTO
@ AUTO
Definition: SoVRMLShape.h:45
SoFieldContainer::getFieldName
SbBool getFieldName(const SoField *const field, SbName &name) const
Definition: SoFieldContainer.cpp:409
SoVRMLScript::getBoundingBox
virtual void getBoundingBox(SoGetBoundingBoxAction *action)
Definition: Script.cpp:417
SoVRMLParent::updateChildList
static void updateChildList(const SoNode *const *nodes, const int numnodes, SoChildList &cl)
Definition: Parent.cpp:378
SoField::setContainer
void setContainer(SoFieldContainer *cont)
Definition: SoField.cpp:1234
SbList::append
void append(const Type item)
Definition: SbList.h:98
SoVRMLScript::copyContents
virtual void copyContents(const SoFieldContainer *from, SbBool copyconn)
Definition: Script.cpp:524
SbString
The SbString class is a string class with convenience functions for string operations.
Definition: SbString.h:42
SoVRMLScript::notify
virtual void notify(SoNotList *list)
Definition: Script.cpp:551
SoAction::popPushCurPath
void popPushCurPath(const int childindex, SoNode *node=NULL)
Definition: SoAction.cpp:1132
SoType::isDerivedFrom
SbBool isDerivedFrom(const SoType type) const
Definition: SoType.cpp:687
SoBase::writeHeader
SbBool writeHeader(SoOutput *out, SbBool isgroup, SbBool isengine) const
Definition: SoBase.cpp:1315
SoGLRenderAction::abortNow
SbBool abortNow(void)
Definition: SoGLRenderAction.cpp:1112
SoVRMLShape::getPrimitiveCount
virtual void getPrimitiveCount(SoGetPrimitiveCountAction *action)
Definition: Shape.cpp:355
SoVRMLScript::pick
virtual void pick(SoPickAction *action)
Definition: Script.cpp:424
SoField
The SoField class is the top-level abstract base class for fields.
Definition: SoField.h:38
SoElement::initClass
static void initClass(void)
Definition: SoElement.cpp:483
SoField::setDefault
void setDefault(SbBool def)
Definition: SoField.cpp:650
SoType
The SoType class is the basis for the run-time type system in Coin.
Definition: SoType.h:50
SoOneShotSensor
The SoOneShotSensor class is a sensor which will trigger once.
Definition: SoOneShotSensor.h:29
SoField::read
virtual SbBool read(SoInput *in, const SbName &name)
Definition: SoField.cpp:1780
SbList< SbName >
SbName::getString
const char * getString(void) const
Definition: SbName.cpp:278
SoDebugError::postInfo
static void postInfo(const char *const source, const char *const format,...)
Definition: SoDebugError.cpp:334
SoNode::getNodeId
uint32_t getNodeId(void) const
Definition: SoNode.cpp:1304
SoElement
SoElement is the abstract base class for all elements.
Definition: SoElement.h:34
SoAccumulatedElement::captureThis
virtual void captureThis(SoState *state) const
Definition: SoAccumulatedElement.cpp:146
SoInput::putBack
virtual void putBack(const char c)
Definition: SoInput.cpp:1834
SoVRMLScript::getTypeId
virtual SoType getTypeId(void) const
Definition: Script.cpp:374
SoVRMLShape::rayPick
virtual void rayPick(SoRayPickAction *action)
Definition: Shape.cpp:329
SoNode::VRML2
@ VRML2
Definition: SoNode.h:62
SoInput::checkISReference
SbBool checkISReference(SoFieldContainer *container, const SbName &fieldname, SbBool &readok)
Definition: SoInput.cpp:678
SoVRMLShape::CacheEnabled
CacheEnabled
Definition: SoVRMLShape.h:42
SoAction::popCurPath
void popCurPath(const PathCode prevpathcode)
Definition: SoAction.h:165
SoFieldData
The SoFieldData class is a container for a prototype set of fields.
Definition: SoFieldData.h:39
SoField::setFieldType
void setFieldType(int type)
Definition: SoField.cpp:2465
SoAction::getPathCode
PathCode getPathCode(int &numindices, const int *&indices)
Definition: SoAction.cpp:890
SoWriteAction::getOutput
SoOutput * getOutput(void) const
Definition: SoWriteAction.cpp:160
SoVRMLShape::OFF
@ OFF
Definition: SoVRMLShape.h:43
SoAction::getState
SoState * getState(void) const
Definition: SoAction.cpp:1028
SoVRMLShape::affectsState
virtual SbBool affectsState(void) const
Definition: Shape.cpp:226
SoVRMLShape::boundingBoxCaching
SoSFEnum boundingBoxCaching
Definition: SoVRMLShape.h:51
SoElement::push
virtual void push(SoState *state)
Definition: SoElement.cpp:545
SoAccumulatedElement::clearNodeIds
void clearNodeIds(void)
Definition: SoAccumulatedElement.cpp:91
SoElement::captureThis
virtual void captureThis(SoState *state) const
Definition: SoElement.cpp:663
SoState::isElementEnabled
SbBool isElementEnabled(const int stackindex) const
Definition: SoState.h:70
SoFieldContainer
The SoFieldContainer class is a base class for all classes that contain fields.
Definition: SoFieldContainer.h:35
SoVRMLScalarInterpolator::SoVRMLScalarInterpolator
SoVRMLScalarInterpolator(void)
Definition: ScalarInterpolator.cpp:80
SoVRMLShape::appearance
SoSFNode appearance
Definition: SoVRMLShape.h:48
SoVRMLAppearance
The SoVRMLAppearance class specifies visual properties for shapes.
Definition: SoVRMLAppearance.h:34
SoVRMLShape::getBoundingBox
virtual void getBoundingBox(SoGetBoundingBoxAction *action)
Definition: Shape.cpp:313
SoFieldData::addField
void addField(SoFieldContainer *base, const char *name, const SoField *field)
Definition: SoFieldData.cpp:200
SoGetBoundingBoxAction
The SoGetBoundingBoxAction class calculates bounding boxes for nodes and subgraphs.
Definition: SoGetBoundingBoxAction.h:34
SoMFFloat::getValues
const float * getValues(const int start) const
Definition: SoMFFloat.h:33
SoType::createInstance
void * createInstance(void) const
Definition: SoType.cpp:803
SoField::getTypeId
virtual SoType getTypeId(void) const =0
SoVRMLShape::search
virtual void search(SoSearchAction *action)
Definition: Shape.cpp:345
SoVRMLScript::GLRender
virtual void GLRender(SoGLRenderAction *action)
Definition: Script.cpp:410
SoCallbackAction
The SoCallbackAction class invokes callbacks at specific nodes.
Definition: SoCallbackAction.h:70
SoVRMLScript::doAction
virtual void doAction(SoAction *action)
Definition: Script.cpp:397
SoAction::getCurPathCode
PathCode getCurPathCode(void) const
Definition: SoAction.h:159
SoVRMLShape::getChildren
virtual SoChildList * getChildren(void) const
Definition: Shape.cpp:361
SbMutex
A basic class for managing a mutex.
Definition: SbMutex.h:30
SoElement::matches
virtual SbBool matches(const SoElement *element) const =0
Definition: SoElement.cpp:584
SoRayPickAction::addMethod
static void addMethod(const SoType type, SoActionMethod method)
Definition: SoRayPickAction.cpp:225
SoFieldContainer::isBuiltIn
SbBool isBuiltIn
Definition: SoFieldContainer.h:95
SoVRMLScalarInterpolator::~SoVRMLScalarInterpolator
virtual ~SoVRMLScalarInterpolator()
Definition: ScalarInterpolator.cpp:91
SoVRMLScalarInterpolator::keyValue
SoMFFloat keyValue
Definition: SoVRMLScalarInterpolator.h:41
SoVRMLShape::geometry
SoSFNode geometry
Definition: SoVRMLShape.h:49
SoOutput::getStage
Stage getStage(void) const
Definition: SoOutput.cpp:744
SoType::createType
static const SoType createType(const SoType parent, const SbName name, const instantiationMethod method=(instantiationMethod) NULL, const uint16_t data=0)
Definition: SoType.cpp:256
SoNode::nextActionMethodIndex
static int nextActionMethodIndex
Definition: SoNode.h:159
SoElement::init
virtual void init(SoState *state)
Definition: SoElement.cpp:528
SoVRMLScalarInterpolator::value_changed
SoEngineOutput value_changed
Definition: SoVRMLScalarInterpolator.h:42
SoAccumulatedElement::setNodeId
void setNodeId(const SoNode *const node)
Definition: SoAccumulatedElement.cpp:111
SoAccumulatedElement::copyNodeIds
void copyNodeIds(const SoAccumulatedElement *copyfrom)
Definition: SoAccumulatedElement.cpp:136
SoInput::read
virtual SbBool read(char &c)
Definition: SoInput.cpp:1180
SoField::write
virtual void write(SoOutput *out, const SbName &name) const
Definition: SoField.cpp:1923
SoNode::affectsState
virtual SbBool affectsState(void) const
Definition: SoNode.cpp:783
SoAction::pushCurPath
void pushCurPath(const int childindex, SoNode *node=NULL)
Definition: SoAction.cpp:919
SoVRMLScript::callback
virtual void callback(SoCallbackAction *action)
Definition: Script.cpp:403
SoNode::write
virtual void write(SoWriteAction *action)
Definition: SoNode.cpp:1189
SoFieldData::getFieldName
const SbName & getFieldName(int index) const
Definition: SoFieldData.cpp:297
SoBase::writeFooter
void writeFooter(SoOutput *out) const
Definition: SoBase.cpp:1428
SoElement::getTypeId
const SoType getTypeId(void) const
Definition: SoElement.cpp:689
SoField::getFieldType
int getFieldType(void) const
Definition: SoField.cpp:2478
SoAccumulatedElement::copyMatchInfo
virtual SoElement * copyMatchInfo(void) const
Definition: SoAccumulatedElement.cpp:121
SoNotList::getLastField
SoField * getLastField(void) const
Definition: SoNotification.cpp:167
SoInput
The SoInput class is an abstraction of file import functionality.
Definition: SoInput.h:55
SoFieldContainer::getFieldData
virtual const SoFieldData * getFieldData(void) const
Definition: SoFieldContainer.cpp:663
SoSFFloat
The SoSFFloat class is a container for a floating point value.
Definition: SoSFFloat.h:30
SoVRMLScript::handleEvent
virtual void handleEvent(SoHandleEventAction *action)
Definition: Script.cpp:431
SoBase::isOfType
SbBool isOfType(SoType type) const
Definition: SoBase.cpp:710
SoNode::setNodeType
void setNodeType(const NodeType type)
Definition: SoNode.cpp:699
SoNode
The SoNode class is the base class for nodes used in scene graphs.
Definition: SoNode.h:47
SoAction::PathCode
PathCode
Definition: SoAction.h:70
SoType::getName
SbName getName(void) const
Definition: SoType.cpp:628
SoHandleEventAction
The SoHandleEventAction class distributes user events to the scene.
Definition: SoHandleEventAction.h:36
SoVRMLScript::setScriptEvaluateCB
static void setScriptEvaluateCB(SoVRMLScriptEvaluateCB *cb, void *closure)
Definition: Script.cpp:386
SoVRMLShape
The SoVRMLShape class holds geometry and geometry appearance nodes.
Definition: SoVRMLShape.h:34
SoChildList::traverse
void traverse(SoAction *const action)
Definition: SoChildList.cpp:404
SoElement::copyMatchInfo
virtual SoElement * copyMatchInfo(void) const =0
SoRayPickAction
The SoRayPickAction class does ray intersection with scene graphs.
Definition: SoRayPickAction.h:40
SbString::getString
const char * getString(void) const
Definition: SbString.h:71
SoVRMLScript
The SoVRMLScript class is used to control the scene using scripts.
Definition: SoVRMLScript.h:38
SoVRMLShape::doAction
virtual void doAction(SoAction *action)
Definition: Shape.cpp:232
SoFieldData::getField
SoField * getField(const SoFieldContainer *object, int index) const
Definition: SoFieldData.cpp:307
SoVRMLShape::write
virtual void write(SoWriteAction *action)
Definition: Shape.cpp:336
SoNotList
The SoNotList class is a list of SoNotRec notification records.
Definition: SoNotification.h:34
SoGLRenderAction
The SoGLRenderAction class renders the scene graph with OpenGL calls.
Definition: SoGLRenderAction.h:39
SoAccumulatedElement::init
void init(SoState *state)
Definition: SoAccumulatedElement.cpp:64
SoGetPrimitiveCountAction
The SoGetPrimitiveCountAction class counts the primitives in a scene.
Definition: SoGetPrimitiveCountAction.h:32
SbPList::getArrayPtr
void ** getArrayPtr(const int start=0) const
Definition: SbPList.h:110
SoAccumulatedElement::matches
virtual SbBool matches(const SoElement *element) const
Definition: SoAccumulatedElement.cpp:81
SoChildList::traverseInPath
void traverseInPath(SoAction *const action, const int numindices, const int *indices)
Definition: SoChildList.cpp:253
SoPickAction
The SoPickAction class is the base class for picking actions.
Definition: SoPickAction.h:32
SoVRMLInterpolator::getKeyValueIndex
int getKeyValueIndex(float &interp)
Definition: Interpolator.cpp:109
SoVRMLShape::ON
@ ON
Definition: SoVRMLShape.h:44
SoVRMLScalarInterpolator
The SoVRMLScalarInterpolator class is used to interpolate scalar values.
Definition: SoVRMLScalarInterpolator.h:33
SoNode::copyContents
virtual void copyContents(const SoFieldContainer *from, SbBool copyconnections)
Definition: SoNode.cpp:1382
SoAccumulatedElement::nodeIds
SbList< uint32_t > nodeIds
Definition: SoAccumulatedElement.h:53
SoSearchAction::isFound
SbBool isFound(void) const
Definition: SoSearchAction.cpp:376
SoType::canCreateInstance
SbBool canCreateInstance(void) const
Definition: SoType.cpp:786

Copyright © 1998-2007 by Systems in Motion AS. All rights reserved.

Generated on Mon Jul 27 2020 for Coin by Doxygen. 1.8.18