http://www.sim.no/
http://www.coin3d.org/
Main Page
Related Pages
Modules
Classes
Files
File List
File Members
include
Inventor
nodes
SoSeparator.h
1
#ifndef COIN_SOSEPARATOR_H
2
#define COIN_SOSEPARATOR_H
3
4
/**************************************************************************\
5
*
6
* This file is part of the Coin 3D visualization library.
7
* Copyright (C) by Kongsberg Oil & Gas Technologies.
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 Kongsberg Oil & Gas Technologies
18
* about acquiring a Coin Professional Edition License.
19
*
20
* See http://www.coin3d.org/ for more information.
21
*
22
* Kongsberg Oil & Gas Technologies, Bygdoy Alle 5, 0257 Oslo, NORWAY.
23
* http://www.sim.no/ sales@sim.no coin-support@coin3d.org
24
*
25
\**************************************************************************/
26
27
#include <Inventor/nodes/SoSubNode.h>
28
#include <Inventor/fields/SoSFEnum.h>
29
#include <Inventor/nodes/SoGroup.h>
30
#include <Inventor/tools/SbPimplPtr.h>
31
32
class
SoState
;
33
class
SoSeparatorP;
34
35
class
COIN_DLL_API
SoSeparator
:
public
SoGroup
{
36
typedef
SoGroup
inherited
;
37
38
SO_NODE_HEADER
(
SoSeparator
);
39
40
public
:
41
static
void
initClass(
void
);
42
SoSeparator
(
void
);
43
SoSeparator
(
const
int
nchildren);
44
45
enum
CacheEnabled
{
46
OFF,
ON
, AUTO
47
};
48
49
SoSFEnum
renderCaching
;
50
SoSFEnum
boundingBoxCaching
;
51
SoSFEnum
renderCulling
;
52
SoSFEnum
pickCulling
;
53
54
virtual
void
doAction
(
SoAction
* action);
55
virtual
void
GLRender
(
SoGLRenderAction
* action);
56
virtual
void
GLRenderBelowPath
(
SoGLRenderAction
* action);
57
virtual
void
GLRenderInPath
(
SoGLRenderAction
* action);
58
virtual
void
GLRenderOffPath
(
SoGLRenderAction
* action);
59
virtual
void
callback
(
SoCallbackAction
* action);
60
virtual
void
getBoundingBox
(
SoGetBoundingBoxAction
* action);
61
virtual
void
getMatrix
(
SoGetMatrixAction
* action);
62
virtual
void
handleEvent
(
SoHandleEventAction
* action);
63
virtual
void
rayPick
(
SoRayPickAction
* action);
64
virtual
void
search
(
SoSearchAction
* action);
65
virtual
void
getPrimitiveCount
(
SoGetPrimitiveCountAction
* action);
66
virtual
void
audioRender
(
SoAudioRenderAction
* action);
67
68
virtual
void
notify
(
SoNotList
* nl);
69
70
static
void
setNumRenderCaches(
const
int
howmany);
71
static
int
getNumRenderCaches(
void
);
72
virtual
SbBool
affectsState
(
void
)
const
;
73
74
protected
:
75
virtual
~
SoSeparator
();
76
77
virtual
SbBool cullTest(
SoState
* state);
78
virtual
SbBool cullTest(
SoGLRenderAction
* action,
int
& cullresults);
79
virtual
SbBool
readInstance
(
SoInput
* in,
unsigned
short
flags);
80
81
private
:
82
void
commonConstructor(
void
);
83
SbBool cullTestNoPush(
SoState
* state);
84
85
static
int
numrendercaches;
86
87
SbPimplPtr<SoSeparatorP> pimpl;
88
89
// NOT IMPLEMENTED
90
SoSeparator
(
const
SoSeparator
& rhs);
91
SoSeparator
& operator = (
const
SoSeparator
& rhs);
92
93
};
94
95
#endif // !COIN_SOSEPARATOR_H
Copyright © 1998-2010 by
Kongsberg Oil & Gas Technologies
. All rights reserved.
Generated for Coin by
Doxygen
1.8.2.