Main Page | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members | Related Pages

Servers/ServerManager/vtkSMStringListRangeDomain.h

Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   ParaView
00004   Module:    $RCSfile: vtkSMStringListRangeDomain.h,v $
00005 
00006   Copyright (c) Kitware, Inc.
00007   All rights reserved.
00008   See Copyright.txt or http://www.paraview.org/HTML/Copyright.html for details.
00009 
00010      This software is distributed WITHOUT ANY WARRANTY; without even
00011      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
00012      PURPOSE.  See the above copyright notice for more information.
00013 
00014 =========================================================================*/
00031 #ifndef __vtkSMStringListRangeDomain_h
00032 #define __vtkSMStringListRangeDomain_h
00033 
00034 #include "vtkSMDomain.h"
00035 
00036 class vtkSMIntRangeDomain;
00037 class vtkSMBooleanDomain;
00038 class vtkSMStringListDomain;
00039 
00040 class VTK_EXPORT vtkSMStringListRangeDomain : public vtkSMDomain
00041 {
00042 public:
00043   static vtkSMStringListRangeDomain* New();
00044   vtkTypeRevisionMacro(vtkSMStringListRangeDomain, vtkSMDomain);
00045   void PrintSelf(ostream& os, vtkIndent indent);
00046 
00049   virtual int IsInDomain(vtkSMProperty* property);
00050 
00051   //BTX
00052   enum Modes
00053   {
00054     RANGE,
00055     BOOLEAN
00056   };
00057   //ETX
00058 
00060 
00061   vtkSetClampMacro(IntDomainMode, int, 0, 1);
00062   vtkGetMacro(IntDomainMode, int);
00064 
00066   unsigned int GetNumberOfStrings();
00067 
00070   const char* GetString(unsigned int idx);
00071 
00073   unsigned int AddString(const char* string);
00074 
00076   void RemoveString(const char* string);
00077 
00079   void RemoveAllStrings();
00080 
00084   int GetMinimum(unsigned int idx, int& exists);
00085 
00089   int GetMaximum(unsigned int idx, int& exists);
00090 
00092   void AddMinimum(unsigned int idx, int value);
00093 
00096   void RemoveMinimum(unsigned int idx);
00097 
00099   void RemoveAllMinima();
00100 
00102   void AddMaximum(unsigned int idx, int value);
00103 
00106   void RemoveMaximum(unsigned int idx);
00107 
00109   void RemoveAllMaxima();
00110 
00112 
00113   virtual void SetAnimationValue(vtkSMProperty *property, int idx,
00114                                  double value);
00116 
00117 protected:
00118   vtkSMStringListRangeDomain();
00119   ~vtkSMStringListRangeDomain();
00120 
00123   virtual int ReadXMLAttributes(vtkSMProperty* prop, vtkPVXMLElement* element);
00124 
00125   virtual void SaveState(const char* name, ostream* file, vtkIndent indent);
00126 
00127   vtkSMIntRangeDomain* IRDomain;
00128   vtkSMBooleanDomain* BDomain;
00129   vtkSMStringListDomain* SLDomain;
00130 
00131   int IntDomainMode;
00132 
00133 private:
00134   vtkSMStringListRangeDomain(const vtkSMStringListRangeDomain&); // Not implemented
00135   void operator=(const vtkSMStringListRangeDomain&); // Not implemented
00136 };
00137 
00138 #endif

Generated on Tue May 30 12:31:49 2006 for ParaView by doxygen 1.3.5