VTK
|
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: vtkAssemblyNode.h 00005 00006 Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen 00007 All rights reserved. 00008 See Copyright.txt or http://www.kitware.com/Copyright.htm for details. 00009 00010 This software is distributed WITHOUT ANY WARRANTY; without even 00011 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 00012 PURPOSE. See the above copyright notice for more information. 00013 00014 =========================================================================*/ 00045 #ifndef __vtkAssemblyNode_h 00046 #define __vtkAssemblyNode_h 00047 00048 #include "vtkRenderingCoreModule.h" // For export macro 00049 #include "vtkObject.h" 00050 00051 class vtkProp; 00052 class vtkMatrix4x4; 00053 00054 class VTKRENDERINGCORE_EXPORT vtkAssemblyNode : public vtkObject 00055 { 00056 public: 00058 static vtkAssemblyNode *New(); 00059 00060 vtkTypeMacro(vtkAssemblyNode, vtkObject); 00061 void PrintSelf(ostream& os, vtkIndent indent); 00062 00064 00065 virtual void SetViewProp(vtkProp* prop); 00066 vtkGetObjectMacro(ViewProp, vtkProp); 00068 00070 00075 void SetMatrix(vtkMatrix4x4 *matrix); 00076 vtkGetObjectMacro(Matrix, vtkMatrix4x4); 00078 00081 virtual unsigned long GetMTime(); 00082 00083 protected: 00084 vtkAssemblyNode(); 00085 ~vtkAssemblyNode(); 00086 00087 private: 00088 vtkProp *ViewProp; //reference to vtkProp 00089 vtkMatrix4x4 *Matrix; //associated matrix 00090 00091 private: 00092 void operator=(const vtkAssemblyNode&); // Not implemented. 00093 vtkAssemblyNode(const vtkAssemblyNode&); // Not implemented. 00094 }; 00095 00096 #endif