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

Servers/ServerManager/vtkSMIntRangeDomain.h

Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   ParaView
00004   Module:    $RCSfile: vtkSMIntRangeDomain.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 __vtkSMIntRangeDomain_h
00032 #define __vtkSMIntRangeDomain_h
00033 
00034 #include "vtkSMDomain.h"
00035 
00036 //BTX
00037 struct vtkSMIntRangeDomainInternals;
00038 //ETX
00039 
00040 class VTK_EXPORT vtkSMIntRangeDomain : public vtkSMDomain
00041 {
00042 public:
00043   static vtkSMIntRangeDomain* New();
00044   vtkTypeRevisionMacro(vtkSMIntRangeDomain, vtkSMDomain);
00045   void PrintSelf(ostream& os, vtkIndent indent);
00046 
00051   virtual int IsInDomain(vtkSMProperty* property);
00052 
00056   int IsInDomain(unsigned int idx, int val);
00057 
00061   int GetMinimum(unsigned int idx, int& exists);
00062 
00066   int GetMaximum(unsigned int idx, int& exists);
00067 
00071   int GetResolution(unsigned int idx, int& exists);
00072 
00074   void AddMinimum(unsigned int idx, int value);
00075 
00078   void RemoveMinimum(unsigned int idx);
00079 
00081   void RemoveAllMinima();
00082 
00084   void AddMaximum(unsigned int idx, int value);
00085 
00088   void RemoveMaximum(unsigned int idx);
00089 
00091   void RemoveAllMaxima();
00092 
00094   void AddResolution(unsigned int idx, int value);
00095 
00098   void RemoveResolution(unsigned int idx);
00099 
00101   void RemoveAllResolutions();
00102 
00106   unsigned int GetNumberOfEntries();
00107 
00110   virtual void Update(vtkSMProperty*);
00111 
00113 
00114   virtual void SetAnimationValue(vtkSMProperty *property, int idx,
00115                                  double value);
00117 
00118 protected:
00119   vtkSMIntRangeDomain();
00120   ~vtkSMIntRangeDomain();
00121 
00124   virtual int ReadXMLAttributes(vtkSMProperty* prop, vtkPVXMLElement* element);
00125 
00126   virtual void SaveState(const char* name, ostream* file, vtkIndent indent);
00127 
00129   void SetEntry(unsigned int idx, int minOrMax, int set, int value);
00130 
00131   // Internal use only.
00132   // Set/Get the number of min/max entries.
00133   void SetNumberOfEntries(unsigned int size);
00134 
00135   vtkSMIntRangeDomainInternals* IRInternals;
00136 
00137 //BTX
00138   enum
00139   {
00140     MIN = 0,
00141     MAX = 1,
00142     RESOLUTION = 2
00143   };
00144 //ETX
00145 
00146 private:
00147   vtkSMIntRangeDomain(const vtkSMIntRangeDomain&); // Not implemented
00148   void operator=(const vtkSMIntRangeDomain&); // Not implemented
00149 };
00150 
00151 #endif

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