vtkSMIdTypeVectorProperty.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Kitware Inc.
2 // SPDX-License-Identifier: BSD-3-Clause
13 #ifndef vtkSMIdTypeVectorProperty_h
14 #define vtkSMIdTypeVectorProperty_h
15 
16 #include "vtkRemotingServerManagerModule.h" //needed for exports
17 #include "vtkSMVectorProperty.h"
18 
19 #include <vector> // for std::vector
20 
21 class vtkSMStateLocator;
22 
24 {
25 public:
28  void PrintSelf(ostream& os, vtkIndent indent) override;
29 
33  unsigned int GetNumberOfElements() override;
34 
39  void SetNumberOfElements(unsigned int num) override;
40 
46  int SetElement(unsigned int idx, vtkIdType value);
47 
49 
56  int SetElements(const vtkIdType* values);
57  int SetElements(const vtkIdType* values, unsigned int numValues);
59 
61 
64  int SetUncheckedElements(const vtkIdType* values);
65  int SetUncheckedElements(const vtkIdType* values, unsigned int numValues);
67 
74  int SetElements1(vtkIdType value0);
75 
82  int SetElements2(vtkIdType value0, vtkIdType value1);
83 
90  int SetElements3(vtkIdType value0, vtkIdType value1, vtkIdType value2);
91 
95  int AppendElements(const vtkIdType* values, unsigned int numValues);
96 
100  int AppendUncheckedElements(const vtkIdType* values, unsigned int numValues);
101 
105  vtkIdType GetElement(unsigned int idx);
106 
113  vtkIdType GetUncheckedElement(unsigned int idx);
114 
120  void SetUncheckedElement(unsigned int idx, vtkIdType value);
121 
127  unsigned int GetNumberOfUncheckedElements() override;
128 
130 
133  const std::vector<vtkIdType>& GetElements() const;
134  const std::vector<vtkIdType>& GetUncheckedElements() const;
136 
138 
150  vtkGetMacro(ArgumentIsArray, int);
151  vtkSetMacro(ArgumentIsArray, int);
152  vtkBooleanMacro(ArgumentIsArray, int);
154 
158  void Copy(vtkSMProperty* src) override;
159 
160  void ClearUncheckedElements() override;
161 
167  void ResetToXMLDefaults() override;
168 
169 protected:
171  ~vtkSMIdTypeVectorProperty() override;
172 
176  void WriteTo(vtkSMMessage*) override;
177 
181  void ReadFrom(const vtkSMMessage*, int msg_offset, vtkSMProxyLocator*) override;
182 
183  int ReadXMLAttributes(vtkSMProxy* parent, vtkPVXMLElement* element) override;
184 
186 
192  void SetNumberOfUncheckedElements(unsigned int num) override;
193 
197  int LoadState(vtkPVXMLElement* element, vtkSMProxyLocator* loader) override;
198 
199  // Save concrete property values into the XML state property declaration
200  void SaveStateValues(vtkPVXMLElement* propElement) override;
201 
202 private:
204  void operator=(const vtkSMIdTypeVectorProperty&) = delete;
205 
206  class vtkInternals;
207  vtkInternals* Internals;
208 };
209 
210 #endif
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.
void PrintSelf(ostream &os, vtkIndent indent) override
virtual void SetNumberOfUncheckedElements(unsigned int num)=0
API for setting unchecked element values.
#define VTKREMOTINGSERVERMANAGER_EXPORT
superclass for all SM properties
int vtkIdType
void Copy(vtkSMProperty *src) override
Copy all property values.
virtual void SetNumberOfElements(unsigned int num)=0
Sets the size of the vector.
abstract superclass for all vector properties
Header class that setup every thing in order to use Protobuf messages in a transparent manner...
property representing a vector of integers
static vtkSMProperty * New()
virtual unsigned int GetNumberOfUncheckedElements()=0
API for setting unchecked element values.
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.
void ClearUncheckedElements() override=0
API for setting unchecked element values.
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.
virtual int LoadState(vtkPVXMLElement *element, vtkSMProxyLocator *loader)
Updates state from an XML element.
int ReadXMLAttributes(vtkSMProxy *parent, vtkPVXMLElement *element) override
Set the appropriate ivars from the xml element.
virtual unsigned int GetNumberOfElements()=0
Returns the size of the vector.
Class used to retrieve a given message state based on its GlobalID.