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

SoChildList.h
1 #ifndef COIN_SOCHILDLIST_H
2 #define COIN_SOCHILDLIST_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/lists/SoNodeList.h>
28 #include <Inventor/lists/SbList.h>
29 
30 class SoPath;
31 class SoAction;
32 
33 class COIN_DLL_API SoChildList : public SoNodeList {
34  typedef SoNodeList inherited;
35 
36 public:
37  SoChildList(SoNode * const parent);
38  SoChildList(SoNode * const parent, const int size);
39  SoChildList(SoNode * const parent, const SoChildList & cl);
40  ~SoChildList();
41 
42  void append(SoNode * const node);
43  void insert(SoNode * const ptr, const int addbefore);
44  void remove(const int index);
45  void truncate(const int length);
46  void copy(const SoChildList & cl);
47  void set(const int index, SoNode * const node);
48 
49  void traverseInPath(SoAction * const action, const int numindices,
50  const int * indices);
51  void traverse(SoAction * const action);
52  void traverse(SoAction * const action, const int index);
53  void traverse(SoAction * const action, SoNode * node);
54  void traverse(SoAction * const action, const int first, const int last);
55 
56 public:
57  void addPathAuditor(SoPath * const path);
58  void removePathAuditor(SoPath * const path);
59 
60 private:
61  SoNode * parent;
62  SbList<SoPath *> auditors;
63 };
64 
65 #endif // !COIN_SOCHILDLIST_H
SbPList::getLength
int getLength(void) const
Definition: SbPList.h:94
SoNode::startNotify
virtual void startNotify(void)
Definition: SoNode.cpp:416
SoBaseList::insert
void insert(SoBase *ptr, const int addbefore)
Definition: SoBaseList.cpp:108
SoAction::hasTerminated
SbBool hasTerminated(void) const
Definition: SoAction.cpp:1018
SoChildList::copy
void copy(const SoChildList &cl)
Definition: SoChildList.cpp:195
SoChildList::set
void set(const int index, SoNode *const node)
Definition: SoChildList.cpp:220
SoBaseList::remove
void remove(const int index)
Definition: SoBaseList.cpp:121
SoNodeList::append
void append(SoNode *const ptr)
Definition: SoNodeList.cpp:80
SoChildList
The SoChildList class is a container for node children.
Definition: SoChildList.h:33
SoDebugError::post
static void post(const char *const source, const char *const format,...)
Definition: SoDebugError.cpp:314
SoBaseList
The SoBaseList class is a container for pointers to SoBase derived objects.
Definition: SoBaseList.h:32
SoBaseList::truncate
void truncate(const int length)
Definition: SoBaseList.cpp:156
SoBase::removeAuditor
void removeAuditor(void *const auditor, const SoNotRec::Type type)
Definition: SoBase.cpp:948
SoChildList::remove
void remove(const int index)
Definition: SoChildList.cpp:141
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
SoBaseList::set
void set(const int i, SoBase *const ptr)
Definition: SoBaseList.cpp:270
SbList::append
void append(const Type item)
Definition: SbList.h:98
SoAction::popPushCurPath
void popPushCurPath(const int childindex, SoNode *node=NULL)
Definition: SoAction.cpp:1132
SoChildList::~SoChildList
~SoChildList()
Definition: SoChildList.cpp:82
SoPath
The SoPath class is a container class for traversal path descriptions.
Definition: SoPath.h:43
SbList< SoPath * >
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
SoChildList::removePathAuditor
void removePathAuditor(SoPath *const path)
Definition: SoChildList.cpp:451
SbList::getLength
int getLength(void) const
Definition: SbList.h:145
SoNodeList::operator[]
SoNode * operator[](const int i) const
Definition: SoNodeList.cpp:91
SoBase::addAuditor
void addAuditor(void *const auditor, const SoNotRec::Type type)
Definition: SoBase.cpp:933
SoAction::popCurPath
void popCurPath(const PathCode prevpathcode)
Definition: SoAction.h:165
SoChildList::addPathAuditor
void addPathAuditor(SoPath *const path)
Definition: SoChildList.cpp:437
SoBase
The SoBase class is the top-level superclass for a number of class-hierarchies.
Definition: SoBase.h:41
SoChildList::insert
void insert(SoNode *const ptr, const int addbefore)
Definition: SoChildList.cpp:116
SoChildList::append
void append(SoNode *const node)
Definition: SoChildList.cpp:94
SbList::remove
void remove(const int index)
Definition: SbList.h:129
SoChildList::SoChildList
SoChildList(SoNode *const parent)
Definition: SoChildList.cpp:50
SoAction::getCurPathCode
PathCode getCurPathCode(void) const
Definition: SoAction.h:159
SoBase::getTypeId
virtual SoType getTypeId(void) const =0
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
SbList::find
int find(const Type item) const
Definition: SbList.h:103
SoNodeList
The SoNodeList class is a container for pointers to SoNode objects.
Definition: SoNodeList.h:31
SbPList::find
int find(void *item) const
Definition: SbPList.cpp:212
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
SoBaseList::copy
void copy(const SoBaseList &l)
Definition: SoBaseList.cpp:171
SoType::getName
SbName getName(void) const
Definition: SoType.cpp:628
SoAction::traverse
void traverse(SoNode *const node)
Definition: SoAction.cpp:902
SoChildList::traverse
void traverse(SoAction *const action)
Definition: SoChildList.cpp:404
SoChildList::traverseInPath
void traverseInPath(SoAction *const action, const int numindices, const int *indices)
Definition: SoChildList.cpp:253

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

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