http://www.sim.no
http://www.coin3d.org
Main Page
Related Pages
Modules
Classes
Files
File List
include
Inventor
VRMLnodes
SoVRMLParent.h
1
/**************************************************************************\
2
*
3
* This file is part of the Coin 3D visualization library.
4
* Copyright (C) 1998-2007 by Systems in Motion. All rights reserved.
5
*
6
* This library is free software; you can redistribute it and/or
7
* modify it under the terms of the GNU General Public License
8
* ("GPL") version 2 as published by the Free Software Foundation.
9
* See the file LICENSE.GPL at the root directory of this source
10
* distribution for additional information about the GNU GPL.
11
*
12
* For using Coin with software that can not be combined with the GNU
13
* GPL, and for taking advantage of the additional benefits of our
14
* support services, please contact Systems in Motion about acquiring
15
* a Coin Professional Edition License.
16
*
17
* See http://www.coin3d.org/ for more information.
18
*
19
* Systems in Motion, Postboks 1283, Pirsenteret, 7462 Trondheim, NORWAY.
20
* http://www.sim.no/ sales@sim.no coin-support@coin3d.org
21
*
22
\**************************************************************************/
23
24
#ifndef COIN_SOVRMLPARENT_H
25
#define COIN_SOVRMLPARENT_H
26
27
#include <Inventor/nodes/SoGroup.h>
28
#include <Inventor/nodes/SoSubNode.h>
29
#include <Inventor/fields/SoMFNode.h>
30
31
class
SoVRMLParentP;
32
class
SoSensor
;
33
34
class
COIN_DLL_API
SoVRMLParent
:
public
SoGroup
35
{
36
typedef
SoGroup
inherited
;
37
SO_NODE_ABSTRACT_HEADER(
SoVRMLParent
);
38
39
public
:
40
static
void
initClass
(
void
);
41
42
SoMFNode
children
;
43
44
virtual
SbBool
affectsState
(
void
)
const
;
45
virtual
void
addChild
(
SoNode
* child);
46
virtual
void
insertChild
(
SoNode
* child,
int
idx);
47
virtual
SoNode
*
getChild
(
int
idx)
const
;
48
virtual
int
findChild
(
const
SoNode
* child)
const
;
49
virtual
int
getNumChildren
(
void
)
const
;
50
virtual
void
removeChild
(
int
idx);
51
virtual
void
removeChild
(
SoNode
* child);
52
virtual
void
removeAllChildren
(
void
);
53
virtual
void
replaceChild
(
int
idx,
SoNode
* child);
54
virtual
void
replaceChild
(
SoNode
* old,
SoNode
* child);
55
virtual
SoChildList
*
getChildren
(
void
)
const
;
56
57
virtual
void
doAction
(
SoAction
* action);
58
virtual
void
search
(
SoSearchAction
* action);
59
virtual
void
write
(
SoWriteAction
* action);
60
virtual
void
getPrimitiveCount
(
SoGetPrimitiveCountAction
* action);
61
62
static
void
updateChildList(
const
SoNode
*
const
* nodes,
const
int
numnodes,
63
SoChildList
& cl);
64
static
void
updateChildList(
SoNode
* nodewithsfnode,
65
SoChildList
& cl);
66
67
protected
:
68
SoVRMLParent
(
void
);
69
SoVRMLParent
(
int
approxchildren);
70
virtual
~
SoVRMLParent
();
71
72
SoMFNode
addChildren
;
73
SoMFNode
removeChildren
;
74
75
virtual
void
notify
(
SoNotList
* list);
76
virtual
SbBool
readInstance
(
SoInput
* in,
unsigned
short
flags);
77
virtual
void
copyContents
(
const
SoFieldContainer
* from, SbBool copyConn);
78
79
private
:
80
static
void
field_sensor_cb(
void
* data,
SoSensor
* sensor);
81
void
commonConstructor(
void
);
82
void
processAddChildren(
void
);
83
void
processRemoveChildren(
void
);
84
SoFieldData
* makeWriteData(
void
);
85
86
SoVRMLParentP * pimpl;
87
};
// class SoVRMLParent
88
89
#endif // ! COIN_SOVRMLPARENT_H
Copyright © 1998-2007 by
Systems in Motion AS
. All rights reserved.
Generated on Thu Jul 26 2012 for Coin by
Doxygen.
1.8.1.1