VTK
|
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: vtkAnnotation.h 00005 00006 ------------------------------------------------------------------------- 00007 Copyright 2008 Sandia Corporation. 00008 Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation, 00009 the U.S. Government retains certain rights in this software. 00010 ------------------------------------------------------------------------- 00011 00012 Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen 00013 All rights reserved. 00014 See Copyright.txt or http://www.kitware.com/Copyright.htm for details. 00015 00016 This software is distributed WITHOUT ANY WARRANTY; without even 00017 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 00018 PURPOSE. See the above copyright notice for more information. 00019 00020 =========================================================================*/ 00021 00035 #ifndef __vtkAnnotation_h 00036 #define __vtkAnnotation_h 00037 00038 #include "vtkDataObject.h" 00039 00040 class vtkInformationStringKey; 00041 class vtkInformationDoubleVectorKey; 00042 class vtkInformationIntegerVectorKey; 00043 class vtkInformationDataObjectKey; 00044 class vtkSelection; 00045 00046 class VTK_FILTERING_EXPORT vtkAnnotation : public vtkDataObject 00047 { 00048 public: 00049 vtkTypeMacro(vtkAnnotation, vtkDataObject); 00050 void PrintSelf(ostream& os, vtkIndent indent); 00051 static vtkAnnotation* New(); 00052 00054 00055 vtkGetObjectMacro(Selection, vtkSelection); 00056 virtual void SetSelection(vtkSelection* selection); 00058 00060 00061 static vtkAnnotation* GetData(vtkInformation* info); 00062 static vtkAnnotation* GetData(vtkInformationVector* v, int i=0); 00064 00066 static vtkInformationStringKey* LABEL(); 00067 00070 static vtkInformationDoubleVectorKey* COLOR(); 00071 00074 static vtkInformationDoubleKey* OPACITY(); 00075 00077 static vtkInformationIntegerKey* ICON_INDEX(); 00078 00081 static vtkInformationIntegerKey* ENABLE(); 00082 00084 static vtkInformationIntegerKey* HIDE(); 00085 00087 static vtkInformationDataObjectKey* DATA(); 00088 00090 virtual void Initialize(); 00091 00094 virtual void ShallowCopy(vtkDataObject* other); 00095 00098 virtual void DeepCopy(vtkDataObject* other); 00099 00101 virtual unsigned long GetMTime(); 00102 00103 //BTX 00104 protected: 00105 vtkAnnotation(); 00106 ~vtkAnnotation(); 00107 00108 vtkSelection* Selection; 00109 00110 private: 00111 vtkAnnotation(const vtkAnnotation&); // Not implemented. 00112 void operator=(const vtkAnnotation&); // Not implemented. 00113 //ETX 00114 }; 00115 00116 #endif 00117