1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144
|
/*=========================================================================
Program: ParaView
Module: vtkSMMapProperty.h
Copyright (c) Kitware, Inc.
All rights reserved.
See Copyright.txt or http://www.paraview.org/HTML/Copyright.html for details.
This software is distributed WITHOUT ANY WARRANTY; without even
the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE. See the above copyright notice for more information.
=========================================================================*/
/**
* @class vtkSMDoubleMapProperty
* @brief a map property storing double values
*
* vtkSMDoubleMapProperty stores a map of vtkIdType keys to double values.
*/
#ifndef vtkSMDoubleMapProperty_h
#define vtkSMDoubleMapProperty_h
#include "vtkPVServerManagerCoreModule.h" //needed for exports
#include "vtkSMMapProperty.h"
class vtkSMDoubleMapPropertyPrivate;
class vtkSMDoubleMapPropertyIterator;
class VTKPVSERVERMANAGERCORE_EXPORT vtkSMDoubleMapProperty : public vtkSMMapProperty
{
public:
static vtkSMDoubleMapProperty* New();
vtkTypeMacro(vtkSMDoubleMapProperty, vtkSMMapProperty);
void PrintSelf(ostream& os, vtkIndent indent) VTK_OVERRIDE;
/**
* Sets the number of components.
*/
void SetNumberOfComponents(unsigned int components);
/**
* Returns the number of components.
*/
unsigned int GetNumberOfComponents();
/**
* Sets the element at index to value.
*/
void SetElement(vtkIdType index, double value);
/**
* Sets the elements at index to values.
*/
void SetElements(vtkIdType index, const double* values);
/**
* Sets the elements at index to values.
*/
void SetElements(vtkIdType index, const double* values, unsigned int numValues);
/**
* Sets the component at index to value.
*/
void SetElementComponent(vtkIdType index, unsigned int component, double value);
/**
* Returns the element at index.
*/
double GetElement(vtkIdType index);
/**
* Returns the elements at index.
*/
double* GetElements(vtkIdType index);
/**
* Returns the element component at index.
*/
double GetElementComponent(vtkIdType index, vtkIdType component);
/**
* Removes the element at index.
*/
void RemoveElement(vtkIdType index);
/**
* Returns the number of elements.
*/
virtual vtkIdType GetNumberOfElements() VTK_OVERRIDE;
/**
* Returns true if the property has an element with the given index
*/
bool HasElement(vtkIdType index);
/**
* Clears all of the elements from the property.
*/
void ClearElements();
/**
* Returns a new iterator for the map.
*/
VTK_NEWINSTANCE
vtkSMDoubleMapPropertyIterator* NewIterator();
void* GetMapPointer();
/**
* Copy all property values.
*/
virtual void Copy(vtkSMProperty* src) VTK_OVERRIDE;
/**
* For properties that support specifying defaults in XML configuration, this
* method will reset the property value to the default values specified in the
* XML.
*/
virtual void ResetToXMLDefaults() VTK_OVERRIDE;
protected:
vtkSMDoubleMapProperty();
~vtkSMDoubleMapProperty();
virtual void WriteTo(vtkSMMessage* msg) VTK_OVERRIDE;
virtual void ReadFrom(
const vtkSMMessage* message, int message_offset, vtkSMProxyLocator* locator) VTK_OVERRIDE;
virtual int ReadXMLAttributes(vtkSMProxy* parent, vtkPVXMLElement* element) VTK_OVERRIDE;
virtual void SaveStateValues(vtkPVXMLElement* propertyElement) VTK_OVERRIDE;
virtual int LoadState(vtkPVXMLElement* element, vtkSMProxyLocator* loader) VTK_OVERRIDE;
private:
vtkSMDoubleMapProperty(const vtkSMDoubleMapProperty&) VTK_DELETE_FUNCTION;
void operator=(const vtkSMDoubleMapProperty&) VTK_DELETE_FUNCTION;
vtkSMDoubleMapPropertyPrivate* Private;
};
#endif // vtkSMDoubleMapProperty_h
|