Open Inventor Release 2024.2.0
 
Loading...
Searching...
No Matches
MoMeshBaseRepresentation.h
1/*=======================================================================
2 *** THE CONTENT OF THIS WORK IS PROPRIETARY TO FEI S.A.S, (FEI S.A.S.), ***
3 *** AND IS DISTRIBUTED UNDER A LICENSE AGREEMENT. ***
4 *** ***
5 *** REPRODUCTION, DISCLOSURE, OR USE, IN WHOLE OR IN PART, OTHER THAN AS ***
6 *** SPECIFIED IN THE LICENSE ARE NOT TO BE UNDERTAKEN EXCEPT WITH PRIOR ***
7 *** WRITTEN AUTHORIZATION OF FEI S.A.S. ***
8 *** ***
9 *** RESTRICTED RIGHTS LEGEND ***
10 *** USE, DUPLICATION, OR DISCLOSURE BY THE GOVERNMENT OF THE CONTENT OF THIS ***
11 *** WORK OR RELATED DOCUMENTATION IS SUBJECT TO RESTRICTIONS AS SET FORTH IN ***
12 *** SUBPARAGRAPH (C)(1) OF THE COMMERCIAL COMPUTER SOFTWARE RESTRICTED RIGHT ***
13 *** CLAUSE AT FAR 52.227-19 OR SUBPARAGRAPH (C)(1)(II) OF THE RIGHTS IN ***
14 *** TECHNICAL DATA AND COMPUTER SOFTWARE CLAUSE AT DFARS 52.227-7013. ***
15 *** ***
16 *** COPYRIGHT (C) 1996-2024 BY FEI S.A.S, ***
17 *** BORDEAUX, FRANCE ***
18 *** ALL RIGHTS RESERVED ***
19**=======================================================================*/
20/*=======================================================================
21** Author : VSG (MMM YYYY)
22**=======================================================================*/
23#ifndef _MO_MESHBASEREPRESENTATION_
24#define _MO_MESHBASEREPRESENTATION_
25
26#include <Inventor/nodes/SoNode.h>
27#include <Inventor/nodes/SoSeparator.h>
28
29#include <Inventor/misc/SoChildList.h>
30#include <MeshVizXLM/mapping/nodes/MoActionNode.h>
31
32#ifdef _WIN32
33#pragma warning(push)
34#pragma warning(disable:4251)
35#endif
36
37class MxNodeSensor;
38
55class MESHVIZXLM_DMAP_API MoMeshBaseRepresentation : public MoActionNode {
56
57 SO_NODE_HEADER(MoMeshBaseRepresentation) ;
58
59 public:
60 virtual SbBool affectsState() const;
61
62 private:
63 static void initClass() ;
64 static void exitClass() ;
65
66 virtual void fieldHasChanged(SoField* field);
67
68 virtual bool isSynchronizingContentOnly() { return TRUE; }
69
70 private:
71 virtual void write(SoWriteAction *action);
72 virtual void doAction(SoAction *action);
73
74 private:
76 virtual ~MoMeshBaseRepresentation() ;
77
78 // The separator containing the generated scene graph
79 SoSeparator *m_group;
80
81 virtual SoChildList *getChildren() const { return m_childList; }
82
83 virtual void clear();
84
85 // indicates if any fields has been modified (linked to a node sensor)
86 bool isModified() const;
87
88private:
89 // Implements a hidden list of children
90 SoChildList *m_childList;
91
92 // Internal mechanism used to detect that the node has changed.
93 bool m_subSceneDirty;
94
95};
96
97#ifdef _WIN32
98#pragma warning(pop)
99#endif
100
101#endif /* _MO_MESHBASEREPRESENTATION_ */
102
103
104
<a href="IconLegend.html"><img src="extMV.gif" alt="MeshViz" border="0"></a> Utility class that provi...
<a href="IconLegend.html"><img src="extMV.gif" alt="MeshViz" border="0"></a> Abstract base class for ...
virtual SbBool affectsState() const
Returns TRUE if a node has an effect on the state during traversal.
Abstract base class for all actions.
Definition SoAction.h:132
Base class for all fields.
Definition SoField.h:234
Group node that saves and restores traversal state.
Writes a scene graph to a file.
int SbBool
Boolean type.
Definition SbBase.h:87