VTK
vtkAssemblyNode.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkAssemblyNode.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
45 #ifndef __vtkAssemblyNode_h
46 #define __vtkAssemblyNode_h
47 
48 #include "vtkObject.h"
49 
50 class vtkProp;
51 class vtkMatrix4x4;
52 
54 {
55 public:
57  static vtkAssemblyNode *New();
58 
59  vtkTypeMacro(vtkAssemblyNode,vtkObject);
60  void PrintSelf(ostream& os, vtkIndent indent);
61 
63 
64  virtual void SetViewProp(vtkProp* prop);
65  vtkGetObjectMacro(ViewProp, vtkProp);
67 
69 
74  void SetMatrix(vtkMatrix4x4 *matrix);
75  vtkGetObjectMacro(Matrix, vtkMatrix4x4);
77 
80  virtual unsigned long GetMTime();
81 
82 // Disable warnings about qualifiers on return types.
83 #if defined(_COMPILER_VERSION)
84 # pragma set woff 3303
85 #endif
86 #if defined(__INTEL_COMPILER)
87 # pragma warning (push)
88 # pragma warning (disable:858)
89 #endif
90 
91 #ifdef VTK_WORKAROUND_WINDOWS_MANGLE
92 # define SetPropA SetProp
93 # define SetPropW SetProp
94 # define GetPropA GetProp
95 # define GetPropW GetProp
96 #endif
97 
99  VTK_LEGACY(virtual void SetProp(vtkProp* prop));
100 
102  VTK_LEGACY(virtual vtkProp* GetProp());
103 
104 #ifdef VTK_WORKAROUND_WINDOWS_MANGLE
105 # undef SetPropW
106 # undef SetPropA
107 # undef GetPropW
108 # undef GetPropA
109  //BTX
110  VTK_LEGACY(virtual void SetPropA(vtkProp* prop));
111  VTK_LEGACY(virtual void SetPropW(vtkProp* prop));
112  VTK_LEGACY(virtual vtkProp* GetPropA());
113  VTK_LEGACY(virtual vtkProp* GetPropW());
114  //ETX
115 #endif
116 
117 // Reset disabled warning about qualifiers on return types.
118 #if defined(__INTEL_COMPILER)
119 # pragma warning (pop)
120 #endif
121 #if defined(_COMPILER_VERSION)
122 # pragma reset woff 3303
123 #endif
124 
125 protected:
126  vtkAssemblyNode();
127  ~vtkAssemblyNode();
128 
129 private:
130  vtkProp *ViewProp; //reference to vtkProp
131  vtkMatrix4x4 *Matrix; //associated matrix
132 
133 private:
134  void operator=(const vtkAssemblyNode&); // Not implemented.
135  vtkAssemblyNode(const vtkAssemblyNode&); // Not implemented.
136 };
137 
138 #endif
abstract superclass for all actors, volumes and annotations
Definition: vtkProp.h:49
abstract base class for most VTK objects
Definition: vtkObject.h:60
represent and manipulate 4x4 transformation matrices
Definition: vtkMatrix4x4.h:37
virtual void PrintSelf(ostream &os, vtkIndent indent)
virtual unsigned long GetMTime()
a simple class to control print indentation
Definition: vtkIndent.h:37
#define VTK_COMMON_EXPORT
static vtkObject * New()
represent a node in an assembly