VTK  9.7.1
vtkAnnotation.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2 // SPDX-FileCopyrightText: Copyright 2008 Sandia Corporation
3 // SPDX-License-Identifier: LicenseRef-BSD-3-Clause-Sandia-USGov
4 
19 #ifndef vtkAnnotation_h
20 #define vtkAnnotation_h
21 
22 #include "vtkCommonDataModelModule.h" // For export macro
23 #include "vtkDataObject.h"
24 
25 VTK_ABI_NAMESPACE_BEGIN
30 class vtkSelection;
31 
32 class VTKCOMMONDATAMODEL_EXPORT vtkAnnotation : public vtkDataObject
33 {
34 public:
35  vtkTypeMacro(vtkAnnotation, vtkDataObject);
36  void PrintSelf(ostream& os, vtkIndent indent) override;
37  static vtkAnnotation* New();
38 
42  int GetDataObjectType() VTK_FUTURE_CONST override { return VTK_ANNOTATION; }
43 
45 
48  vtkGetObjectMacro(Selection, vtkSelection);
49  virtual void SetSelection(vtkSelection* selection);
51 
53 
57  static vtkAnnotation* GetData(vtkInformationVector* v, int i = 0);
59 
64  static vtkInformationStringKey* LABEL();
65 
71  static vtkInformationDoubleVectorKey* COLOR();
72 
78  static vtkInformationDoubleKey* OPACITY();
79 
84  static vtkInformationIntegerKey* ICON_INDEX();
85 
91  static vtkInformationIntegerKey* ENABLE();
92 
97  static vtkInformationIntegerKey* HIDE();
98 
103  static vtkInformationDataObjectKey* DATA();
104 
108  void Initialize() override;
109 
114  void ShallowCopy(vtkDataObject* other) override;
115 
120  void DeepCopy(vtkDataObject* other) override;
121 
125  vtkMTimeType GetMTime() override;
126 
127 protected:
128  vtkAnnotation();
129  ~vtkAnnotation() override;
130 
132 
133 private:
134  vtkAnnotation(const vtkAnnotation&) = delete;
135  void operator=(const vtkAnnotation&) = delete;
136 };
137 
138 VTK_ABI_NAMESPACE_END
139 #endif
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
static vtkDataObject * GetData(vtkInformation *info)
Retrieve an instance of this class from an information object.
int GetDataObjectType() VTK_FUTURE_CONST override
Returns VTK_ANNOTATION.
Definition: vtkAnnotation.h:42
static vtkDataObject * New()
Store vtkAlgorithm input/output information.
vtkTypeUInt32 vtkMTimeType
Definition: vtkType.h:318
Key for vtkDataObject values.
data object that represents a "selection" in VTK.
Definition: vtkSelection.h:49
virtual void Initialize()
Restore data object to initial state,.
Key for string values in vtkInformation.
Key for double vector values.
a simple class to control print indentation
Definition: vtkIndent.h:28
Key for integer values in vtkInformation.
vtkSelection * Selection
Stores a collection of annotation artifacts.
Definition: vtkAnnotation.h:32
Key for double values in vtkInformation.
Store zero or more vtkInformation instances.
vtkMTimeType GetMTime() override
Data objects are composite objects and need to check each part for MTime.
general representation of visualization data
Definition: vtkDataObject.h:55
virtual void DeepCopy(vtkDataObject *src)
The goal of the method is to copy the complete data from src into this object.
virtual void ShallowCopy(vtkDataObject *src)
The goal of the method is to copy the data up to the array pointers only.