VTK  9.3.0
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() 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 
70 
76 
81 
87 
92 
97 
101  void Initialize() override;
102 
107  void ShallowCopy(vtkDataObject* other) override;
108 
113  void DeepCopy(vtkDataObject* other) override;
114 
118  vtkMTimeType GetMTime() override;
119 
120 protected:
122  ~vtkAnnotation() override;
123 
125 
126 private:
127  vtkAnnotation(const vtkAnnotation&) = delete;
128  void operator=(const vtkAnnotation&) = delete;
129 };
130 
131 VTK_ABI_NAMESPACE_END
132 #endif
Stores a collection of annotation artifacts.
Definition: vtkAnnotation.h:33
static vtkAnnotation * GetData(vtkInformationVector *v, int i=0)
Retrieve a vtkAnnotation stored inside an information object.
static vtkAnnotation * New()
void ShallowCopy(vtkDataObject *other) override
Make this annotation have the same properties and have the same selection of another annotation.
static vtkInformationDataObjectKey * DATA()
Associate a vtkDataObject with this annotation.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
static vtkAnnotation * GetData(vtkInformation *info)
Retrieve a vtkAnnotation stored inside an information object.
void DeepCopy(vtkDataObject *other) override
Make this annotation have the same properties and have a copy of the selection of another annotation.
~vtkAnnotation() override
static vtkInformationIntegerKey * ICON_INDEX()
An icon index for this annotation.
static vtkInformationDoubleVectorKey * COLOR()
The color for this annotation.
vtkMTimeType GetMTime() override
Get the modified time of this object.
static vtkInformationIntegerKey * ENABLE()
Whether or not this annotation is enabled.
static vtkInformationDoubleKey * OPACITY()
The color for this annotation.
static vtkInformationIntegerKey * HIDE()
Whether or not this annotation is visible.
void Initialize() override
Initialize the annotation to an empty state.
int GetDataObjectType() override
Returns VTK_ANNOTATION.
Definition: vtkAnnotation.h:42
virtual void SetSelection(vtkSelection *selection)
The selection to which this set of annotations will apply.
vtkSelection * Selection
static vtkInformationStringKey * LABEL()
The label for this annotation.
general representation of visualization data
Definition: vtkDataObject.h:55
a simple class to control print indentation
Definition: vtkIndent.h:29
Key for vtkDataObject values.
Key for double values in vtkInformation.
Key for integer values in vtkInformation.
Key for string values in vtkInformation.
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
data object that represents a "selection" in VTK.
Definition: vtkSelection.h:50
@ info
Definition: vtkX3D.h:376
#define VTK_ANNOTATION
Definition: vtkType.h:109
vtkTypeUInt32 vtkMTimeType
Definition: vtkType.h:270