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

Servers/ServerManager/vtkSMNumberOfGroupsDomain.h

Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   ParaView
00004   Module:    $RCSfile: vtkSMNumberOfGroupsDomain.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 =========================================================================*/
00028 #ifndef __vtkSMNumberOfGroupsDomain_h
00029 #define __vtkSMNumberOfGroupsDomain_h
00030 
00031 #include "vtkSMIntRangeDomain.h"
00032 
00033 class vtkSMProxyProperty;
00034 class vtkSMSourceProxy;
00035 
00036 class VTK_EXPORT vtkSMNumberOfGroupsDomain : public vtkSMIntRangeDomain
00037 {
00038 public:
00039   static vtkSMNumberOfGroupsDomain* New();
00040   vtkTypeRevisionMacro(vtkSMNumberOfGroupsDomain, vtkSMIntRangeDomain);
00041   void PrintSelf(ostream& os, vtkIndent indent);
00042 
00048   virtual int IsInDomain(vtkSMProperty* property);
00049 
00052   int IsInDomain(vtkSMSourceProxy* proxy);
00053 
00056   virtual void Update(vtkSMProperty*);
00057 
00059 
00060   vtkSetMacro(GroupMultiplicity, unsigned char);
00061   vtkGetMacro(GroupMultiplicity, unsigned char);
00063 
00064 //BTX
00065   enum NumberOfGroups
00066   {
00067     NOT_SET = 0,
00068     SINGLE = 1,
00069     MULTIPLE = 2
00070   };
00071 //ETX
00072 
00073 protected:
00074   vtkSMNumberOfGroupsDomain();
00075   ~vtkSMNumberOfGroupsDomain();
00076 
00079   virtual int ReadXMLAttributes(vtkSMProperty* prop, vtkPVXMLElement* element);
00080 
00081   virtual void SaveState(const char* name, ostream* file, vtkIndent indent);
00082 
00083   void Update(vtkSMProxyProperty *pp);
00084 
00085   unsigned char GroupMultiplicity;
00086 
00087 private:
00088   vtkSMNumberOfGroupsDomain(const vtkSMNumberOfGroupsDomain&); // Not implemented
00089   void operator=(const vtkSMNumberOfGroupsDomain&); // Not implemented
00090 };
00091 
00092 #endif

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