vtkSMDoubleMapProperty.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Kitware Inc.
2 // SPDX-License-Identifier: BSD-3-Clause
10 #ifndef vtkSMDoubleMapProperty_h
11 #define vtkSMDoubleMapProperty_h
12 
13 #include "vtkRemotingServerManagerModule.h" //needed for exports
14 #include "vtkSMMapProperty.h"
15 
16 class vtkSMDoubleMapPropertyPrivate;
18 
20 {
21 public:
22  static vtkSMDoubleMapProperty* New();
24  void PrintSelf(ostream& os, vtkIndent indent) override;
25 
29  void SetNumberOfComponents(unsigned int components);
30 
34  unsigned int GetNumberOfComponents();
35 
39  void SetElement(vtkIdType index, double value);
40 
44  void SetElements(vtkIdType index, const double* values);
45 
49  void SetElements(vtkIdType index, const double* values, unsigned int numValues);
50 
54  void SetElementComponent(vtkIdType index, unsigned int component, double value);
55 
59  double GetElement(vtkIdType index);
60 
64  double* GetElements(vtkIdType index);
65 
69  double GetElementComponent(vtkIdType index, vtkIdType component);
70 
74  void RemoveElement(vtkIdType index);
75 
79  vtkIdType GetNumberOfElements() override;
80 
84  bool HasElement(vtkIdType index);
85 
89  void ClearElements();
90 
95  vtkSMDoubleMapPropertyIterator* NewIterator();
96 
97  void* GetMapPointer();
98 
102  void Copy(vtkSMProperty* src) override;
103 
109  void ResetToXMLDefaults() override;
110 
111 protected:
113  ~vtkSMDoubleMapProperty() override;
114 
115  void WriteTo(vtkSMMessage* msg) override;
116 
117  void ReadFrom(
118  const vtkSMMessage* message, int message_offset, vtkSMProxyLocator* locator) override;
119 
120  int ReadXMLAttributes(vtkSMProxy* parent, vtkPVXMLElement* element) override;
121 
122  void SaveStateValues(vtkPVXMLElement* propertyElement) override;
123  int LoadState(vtkPVXMLElement* element, vtkSMProxyLocator* loader) override;
124 
125 private:
127  void operator=(const vtkSMDoubleMapProperty&) = delete;
128 
129  vtkSMDoubleMapPropertyPrivate* Private;
130 };
131 
132 #endif // vtkSMDoubleMapProperty_h
virtual void SaveStateValues(vtkPVXMLElement *propertyElement)
This method must be overridden by concrete class in order to save the real property data...
virtual void WriteTo(vtkSMMessage *msg)
Let the property write its content into the stream.
#define VTKREMOTINGSERVERMANAGER_EXPORT
int ReadXMLAttributes(vtkSMProxy *parent, vtkPVXMLElement *element) override
Set the appropriate ivars from the xml element.
void PrintSelf(ostream &os, vtkIndent indent) override
superclass for all SM properties
int vtkIdType
a map property storing double values
virtual vtkIdType GetNumberOfElements()
Returns the number of elements for the value type.
int LoadState(vtkPVXMLElement *element, vtkSMProxyLocator *loader) override
Updates state from an XML element.
void Copy(vtkSMProperty *src) override
Copy all property values.
Header class that setup every thing in order to use Protobuf messages in a transparent manner...
static vtkSMProperty * New()
#define VTK_NEWINSTANCE
virtual void ReadFrom(const vtkSMMessage *, int vtkNotUsed(message_offset), vtkSMProxyLocator *)
Let the property read and set its content from the stream.
proxy for a VTK object(s) on a server
Definition: vtkSMProxy.h:140
is used to locate proxies referred to in state xmls while loading state files.
virtual void ResetToXMLDefaults()
For properties that support specifying defaults in XML configuration, this method will reset the prop...
This is used by vtkPVXMLParser to represent an XML document starting at the root element.
abstract superclass for all map properties