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

Servers/ServerManager/vtkSMInputArrayDomain.h

Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   ParaView
00004   Module:    $RCSfile: vtkSMInputArrayDomain.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 =========================================================================*/
00034 #ifndef __vtkSMInputArrayDomain_h
00035 #define __vtkSMInputArrayDomain_h
00036 
00037 #include "vtkSMDomain.h"
00038 
00039 class vtkPVArrayInformation;
00040 class vtkPVDataSetAttributesInformation;
00041 class vtkSMSourceProxy;
00042 
00043 class VTK_EXPORT vtkSMInputArrayDomain : public vtkSMDomain
00044 {
00045 public:
00046   static vtkSMInputArrayDomain* New();
00047   vtkTypeRevisionMacro(vtkSMInputArrayDomain, vtkSMDomain);
00048   void PrintSelf(ostream& os, vtkIndent indent);
00049 
00054   virtual int IsInDomain(vtkSMProperty* property);
00055 
00058   int IsInDomain(vtkSMSourceProxy* proxy);
00059 
00061 
00064   int IsFieldValid(vtkSMSourceProxy* proxy, vtkPVArrayInformation* arrayInfo);
00065   int IsFieldValid(
00066     vtkSMSourceProxy* proxy, vtkPVArrayInformation* arrayInfo, int bypass);
00068   
00070 
00072   vtkSetMacro(AttributeType, unsigned char);
00073   vtkGetMacro(AttributeType, unsigned char);
00074   const char* GetAttributeTypeAsString();
00075   virtual void SetAttributeType(const char* type);
00077 
00079 
00080   vtkSetMacro(NumberOfComponents, int);
00081   vtkGetMacro(NumberOfComponents, int);
00083 
00084 //BTX
00085   enum AttributeTypes
00086   {
00087     POINT = 0,
00088     CELL = 1,
00089     ANY = 2,
00090     LAST_ATTRIBUTE_TYPE
00091   };
00092 //ETX
00093 
00094 protected:
00095   vtkSMInputArrayDomain();
00096   ~vtkSMInputArrayDomain();
00097 
00100   virtual int ReadXMLAttributes(vtkSMProperty* prop, vtkPVXMLElement* element);
00101 
00102   virtual void SaveState(const char* name, ostream* file, vtkIndent indent);
00103 
00104   int AttributeInfoContainsArray(vtkSMSourceProxy* proxy,
00105                                  vtkPVDataSetAttributesInformation* attrInfo);
00106   int CheckForArray(vtkPVArrayInformation* arrayInfo, 
00107                     vtkPVDataSetAttributesInformation* attrInfo);
00108 
00109   unsigned char AttributeType;
00110   int NumberOfComponents;
00111 
00112 private:
00113   vtkSMInputArrayDomain(const vtkSMInputArrayDomain&); // Not implemented
00114   void operator=(const vtkSMInputArrayDomain&); // Not implemented
00115 };
00116 
00117 #endif

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