VTK
dox/Filtering/vtkAnnotation.h
Go to the documentation of this file.
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