00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00025 #ifndef __vtkSMVectorProperty_h
00026 #define __vtkSMVectorProperty_h
00027
00028 #include "vtkSMProperty.h"
00029
00030 class VTK_EXPORT vtkSMVectorProperty : public vtkSMProperty
00031 {
00032 public:
00033 vtkTypeRevisionMacro(vtkSMVectorProperty, vtkSMProperty);
00034 void PrintSelf(ostream& os, vtkIndent indent);
00035
00037 virtual unsigned int GetNumberOfElements() = 0;
00038
00040 virtual void SetNumberOfElements(unsigned int num) = 0;
00041
00043
00049 vtkGetMacro(RepeatCommand, int);
00050 vtkSetMacro(RepeatCommand, int);
00051 vtkBooleanMacro(RepeatCommand, int);
00053
00055
00061 vtkGetMacro(NumberOfElementsPerCommand, int);
00062 vtkSetMacro(NumberOfElementsPerCommand, int);
00064
00066
00072 vtkGetMacro(UseIndex, int);
00073 vtkSetMacro(UseIndex, int);
00074 vtkBooleanMacro(UseIndex, int);
00076
00078
00081 vtkSetStringMacro(CleanCommand);
00082 vtkGetStringMacro(CleanCommand);
00084
00086 virtual void Copy(vtkSMProperty* src);
00087
00088 protected:
00089 vtkSMVectorProperty();
00090 ~vtkSMVectorProperty();
00091
00092 int RepeatCommand;
00093 int NumberOfElementsPerCommand;
00094 int UseIndex;
00095
00096 char* CleanCommand;
00097
00099
00100 virtual int ReadXMLAttributes(vtkSMProxy* parent,
00101 vtkPVXMLElement* element);
00103
00104 private:
00105 vtkSMVectorProperty(const vtkSMVectorProperty&);
00106 void operator=(const vtkSMVectorProperty&);
00107 };
00108
00109 #endif