http://www.sim.no
http://www.coin3d.org
Main Page
Related Pages
Modules
Classes
Files
File List
include
Inventor
engines
SoNodeEngine.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_SONODEENGINE_H
25
#define COIN_SONODEENGINE_H
26
27
#include <Inventor/nodes/SoNode.h>
28
29
class
SoEngineOutput
;
30
class
SoEngineOutputList
;
31
class
SoEngineOutputData;
32
33
class
COIN_DLL_API
SoNodeEngine
:
public
SoNode
{
34
typedef
SoNode
inherited
;
35
36
public
:
37
static
void
initClass
(
void
);
38
static
SoType
getClassTypeId
(
void
);
39
40
void
evaluateWrapper(
void
);
41
42
virtual
int
getOutputs(
SoEngineOutputList
& l)
const
;
43
SoEngineOutput
* getOutput(
const
SbName
& outputname)
const
;
44
SbBool getOutputName(
const
SoEngineOutput
* output,
SbName
& outputname)
const
;
45
virtual
const
SoEngineOutputData * getOutputData(
void
)
const
= 0;
46
47
SbBool isNotifying(
void
)
const
;
48
virtual
void
notify
(
SoNotList
* nl);
49
50
virtual
void
writeInstance
(
SoOutput
* out);
51
52
protected
:
53
SoNodeEngine
(
void
);
54
virtual
~
SoNodeEngine
();
55
virtual
void
evaluate(
void
) = 0;
56
57
virtual
SbBool
readInstance
(
SoInput
* in,
unsigned
short
flags);
58
virtual
void
inputChanged(
SoField
* which);
59
60
static
const
SoFieldData
**
getFieldDataPtr
(
void
);
61
static
const
SoEngineOutputData ** getOutputDataPtr(
void
);
62
63
void
writeOutputTypes(
SoOutput
* out);
64
65
private
:
66
virtual
void
destroy
(
void
);
// overrides SoBase::destroy()
67
68
static
SoType
classTypeId;
69
unsigned
int
flags;
70
};
71
72
#endif // !COIN_SONODEENGINE_H
Copyright © 1998-2007 by
Systems in Motion AS
. All rights reserved.
Generated on Wed Jul 18 2012 for Coin by
Doxygen.
1.8.1.1