00001 /*========================================================================= 00002 00003 Program: ParaView 00004 Module: $RCSfile: vtkSMFieldDataDomain.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 __vtkSMFieldDataDomain_h 00029 #define __vtkSMFieldDataDomain_h 00030 00031 #include "vtkSMEnumerationDomain.h" 00032 00033 class vtkPVDataSetAttributesInformation; 00034 class vtkSMInputArrayDomain; 00035 class vtkSMProxyProperty; 00036 class vtkSMSourceProxy; 00037 00038 class VTK_EXPORT vtkSMFieldDataDomain : public vtkSMEnumerationDomain 00039 { 00040 public: 00041 static vtkSMFieldDataDomain* New(); 00042 vtkTypeRevisionMacro(vtkSMFieldDataDomain, vtkSMEnumerationDomain); 00043 void PrintSelf(ostream& os, vtkIndent indent); 00044 00048 virtual void Update(vtkSMProperty* prop); 00049 00050 protected: 00051 vtkSMFieldDataDomain(); 00052 ~vtkSMFieldDataDomain(); 00053 00054 private: 00055 00057 00058 int CheckForArray(vtkSMSourceProxy* sp, 00059 vtkPVDataSetAttributesInformation* info, 00060 vtkSMInputArrayDomain* iad); 00061 void Update(vtkSMSourceProxy* sp, vtkSMInputArrayDomain* iad); 00062 void Update(vtkSMProxyProperty* pp, vtkSMSourceProxy* sp); 00064 00065 vtkSMFieldDataDomain(const vtkSMFieldDataDomain&); // Not implemented 00066 void operator=(const vtkSMFieldDataDomain&); // Not implemented 00067 }; 00068 00069 #endif