00001 /*=auto========================================================================= 00002 00003 Portions (c) Copyright 2006 Brigham and Women's Hospital (BWH) All Rights Reserved. 00004 00005 See Doc/copyright/copyright.txt 00006 or http://www.slicer.org/copyright/copyright.txt for details. 00007 00008 Program: 3D Slicer 00009 Module: $RCSfile: vtkMRMLProceduralColorNode.h,v $ 00010 Date: $Date: 2006/03/19 17:12:28 $ 00011 Version: $Revision: 1.0 $ 00012 00013 =========================================================================auto=*/ 00020 00021 #ifndef __vtkMRMLProceduralColorNode_h 00022 #define __vtkMRMLProceduralColorNode_h 00023 00024 #include "vtkMRML.h" 00025 #include "vtkMRMLNode.h" 00026 #include "vtkMRMLColorNode.h" 00027 00028 00029 class vtkColorTransferFunction; 00030 class vtkMRMLStorageNode; 00031 00032 class VTK_MRML_EXPORT vtkMRMLProceduralColorNode : public vtkMRMLColorNode 00033 { 00034 public: 00035 static vtkMRMLProceduralColorNode *New(); 00036 vtkTypeMacro(vtkMRMLProceduralColorNode,vtkMRMLColorNode); 00037 void PrintSelf(ostream& os, vtkIndent indent); 00038 00039 //-------------------------------------------------------------------------- 00041 //-------------------------------------------------------------------------- 00042 00043 virtual vtkMRMLNode* CreateNodeInstance(); 00044 00047 virtual void ReadXMLAttributes( const char** atts); 00048 00051 virtual void WriteXML(ostream& of, int indent); 00052 00055 virtual void Copy(vtkMRMLNode *node); 00056 00059 virtual const char* GetNodeTagName() {return "ProceduralColor";}; 00060 00063 virtual void UpdateScene(vtkMRMLScene *scene); 00064 00068 virtual void SetType(int type); 00069 00070 void ProcessMRMLEvents ( vtkObject *caller, unsigned long event, void *callData ); 00071 00072 //BTX 00075 //enum 00076 //{ 00078 //}; 00079 //ETX 00080 00081 //BTX 00084 enum 00085 { 00086 DisplayModifiedEvent = 20000 00087 }; 00088 //ETX 00089 00092 vtkGetObjectMacro(ColorTransferFunction, vtkColorTransferFunction); 00093 00096 virtual vtkMRMLStorageNode* CreateDefaultStorageNode() 00097 { 00098 return Superclass::CreateDefaultStorageNode(); 00099 }; 00100 00103 void SetNamesFromColors(); 00104 00105 protected: 00106 vtkMRMLProceduralColorNode(); 00107 ~vtkMRMLProceduralColorNode(); 00108 vtkMRMLProceduralColorNode(const vtkMRMLProceduralColorNode&); 00109 void operator=(const vtkMRMLProceduralColorNode&); 00110 00113 vtkColorTransferFunction *ColorTransferFunction; 00114 }; 00115 00116 #endif
1.6.1