VTK
dox/Common/DataModel/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 "vtkCommonDataModelModule.h" // For export macro
00039 #include "vtkDataObject.h"
00040 
00041 class vtkInformationStringKey;
00042 class vtkInformationDoubleVectorKey;
00043 class vtkInformationIntegerVectorKey;
00044 class vtkInformationDataObjectKey;
00045 class vtkSelection;
00046 
00047 class VTKCOMMONDATAMODEL_EXPORT vtkAnnotation : public vtkDataObject
00048 {
00049 public:
00050   vtkTypeMacro(vtkAnnotation, vtkDataObject);
00051   void PrintSelf(ostream& os, vtkIndent indent);
00052   static vtkAnnotation* New();
00053 
00055 
00056   vtkGetObjectMacro(Selection, vtkSelection);
00057   virtual void SetSelection(vtkSelection* selection);
00059 
00061 
00062   static vtkAnnotation* GetData(vtkInformation* info);
00063   static vtkAnnotation* GetData(vtkInformationVector* v, int i=0);
00065 
00067   static vtkInformationStringKey* LABEL();
00068 
00071   static vtkInformationDoubleVectorKey* COLOR();
00072 
00075   static vtkInformationDoubleKey* OPACITY();
00076 
00078   static vtkInformationIntegerKey* ICON_INDEX();
00079 
00082   static vtkInformationIntegerKey* ENABLE();
00083 
00085   static vtkInformationIntegerKey* HIDE();
00086 
00088   static vtkInformationDataObjectKey* DATA();
00089 
00091   virtual void Initialize();
00092 
00095   virtual void ShallowCopy(vtkDataObject* other);
00096 
00099   virtual void DeepCopy(vtkDataObject* other);
00100 
00102   virtual unsigned long GetMTime();
00103 
00104 //BTX
00105 protected:
00106   vtkAnnotation();
00107   ~vtkAnnotation();
00108 
00109   vtkSelection* Selection;
00110 
00111 private:
00112   vtkAnnotation(const vtkAnnotation&);  // Not implemented.
00113   void operator=(const vtkAnnotation&);  // Not implemented.
00114 //ETX
00115 };
00116 
00117 #endif
00118