vtkSMIntVectorProperty.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: ParaView
4  Module: vtkSMIntVectorProperty.h
5 
6  Copyright (c) Kitware, Inc.
7  All rights reserved.
8  See Copyright.txt or http://www.paraview.org/HTML/Copyright.html for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
25 #ifndef vtkSMIntVectorProperty_h
26 #define vtkSMIntVectorProperty_h
27 
28 #include "vtkRemotingServerManagerModule.h" //needed for exports
29 #include "vtkSMVectorProperty.h"
30 
31 class vtkSMStateLocator;
32 
34 {
35 public:
36  static vtkSMIntVectorProperty* New();
38  void PrintSelf(ostream& os, vtkIndent indent) override;
39 
43  unsigned int GetNumberOfElements() override;
44 
49  void SetNumberOfElements(unsigned int num) override;
50 
56  int SetElement(unsigned int idx, int value);
57 
59 
66  int SetElements(const int* values);
67  int SetElements(const int* values, unsigned int numElems);
68  int* GetElements();
70 
72 
75  int SetUncheckedElements(const int* values);
76  int SetUncheckedElements(const int* values, unsigned int numValues);
77  int* GetUnCheckedElements();
79 
86  int SetElements1(int value0);
87 
94  int SetElements2(int value0, int value1);
95 
102  int SetElements3(int value0, int value1, int value2);
103 
107  int AppendElements(const int* values, unsigned int numValues);
108 
112  int AppendUncheckedElements(const int* values, unsigned int numValues);
113 
117  int GetElement(unsigned int idx);
118 
125  int GetUncheckedElement(unsigned int idx);
126 
132  void SetUncheckedElement(unsigned int idx, int value);
133 
139  unsigned int GetNumberOfUncheckedElements() override;
140 
142 
154  vtkGetMacro(ArgumentIsArray, int);
155  vtkSetMacro(ArgumentIsArray, int);
156  vtkBooleanMacro(ArgumentIsArray, int);
158 
162  void Copy(vtkSMProperty* src) override;
163 
167  int GetDefaultValue(int idx);
168 
169  void ClearUncheckedElements() override;
170 
171  bool IsValueDefault() override;
172 
178  void ResetToXMLDefaults() override;
179 
180 protected:
182  ~vtkSMIntVectorProperty() override;
183 
187  void WriteTo(vtkSMMessage*) override;
188 
192  void ReadFrom(const vtkSMMessage*, int msg_offset, vtkSMProxyLocator*) override;
193 
194  // Handle XML with int type for default values.
195  int ReadXMLAttributes(vtkSMProxy* parent, vtkPVXMLElement* element) override;
196 
197  class vtkInternals;
198  vtkInternals* Internals;
199 
201 
207  void SetNumberOfUncheckedElements(unsigned int num) override;
208 
212  int LoadState(vtkPVXMLElement* element, vtkSMProxyLocator* loader) override;
213 
214  // Save concrete property values into the XML state property declaration
215  void SaveStateValues(vtkPVXMLElement* propElement) override;
216 
217 private:
219  void operator=(const vtkSMIntVectorProperty&) = delete;
220 };
221 
222 #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
void Copy(vtkSMProperty *src) override
Copy all property values.
virtual void SetNumberOfElements(unsigned int num)=0
Sets the size of the vector.
property representing a vector of integers
abstract superclass for all vector properties
Header class that setup every thing in order to use Protobuf messages in a transparent manner...
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:152
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 bool IsValueDefault()
Returns true if the property's value is different from the default value.
virtual unsigned int GetNumberOfElements()=0
Returns the size of the vector.
Class used to retrieve a given message state based on its GlobalID.