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

Servers/Common/vtkPVDataSetAttributesInformation.h

Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   ParaView
00004   Module:    $RCSfile: vtkPVDataSetAttributesInformation.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 =========================================================================*/
00025 #ifndef __vtkPVDataSetAttributesInformation_h
00026 #define __vtkPVDataSetAttributesInformation_h
00027 
00028 #include "vtkPVInformation.h"
00029 #include "vtkDataSetAttributes.h" // needed for NUM_ATTRIBUTES
00030 
00031 class vtkCollection;
00032 class vtkDataSetAttributes;
00033 class vtkPVArrayInformation;
00034 class vtkGenericAttributeCollection;
00035 
00036 class VTK_EXPORT vtkPVDataSetAttributesInformation : public vtkPVInformation
00037 {
00038 public:
00039   static vtkPVDataSetAttributesInformation* New();
00040   vtkTypeRevisionMacro(vtkPVDataSetAttributesInformation, vtkPVInformation);
00041   void PrintSelf(ostream& os, vtkIndent indent);
00042 
00044 
00045   void CopyFromDataSetAttributes(vtkDataSetAttributes* data);
00046   void DeepCopy(vtkPVDataSetAttributesInformation* info);
00048 
00049   void CopyFromGenericAttributesOnPoints(vtkGenericAttributeCollection *data);
00050   void CopyFromGenericAttributesOnCells(vtkGenericAttributeCollection *data);
00051   
00052   
00054 
00057   void AddInformation(vtkDataSetAttributes* da);
00058   void AddInformation(vtkPVDataSetAttributesInformation* info);
00059   virtual void AddInformation(vtkPVInformation* info);
00061 
00063   void Initialize();
00064 
00066 
00067   int                    GetNumberOfArrays() const;
00068   vtkPVArrayInformation* GetArrayInformation(int idx) const;
00069   vtkPVArrayInformation* GetArrayInformation(const char *name) const;
00071 
00073   vtkPVArrayInformation* GetAttributeInformation(int attributeType);
00074 
00077   int IsArrayAnAttribute(int arrayIndex);
00078 
00080 
00081   virtual void CopyToStream(vtkClientServerStream*) const;
00082   virtual void CopyFromStream(const vtkClientServerStream*);
00084 
00085 protected:
00086   vtkPVDataSetAttributesInformation();
00087   ~vtkPVDataSetAttributesInformation();
00088 
00089   // Data information collected from remote processes.
00090   vtkCollection* ArrayInformation;
00091   // Standard cell attributes.
00092   short          AttributeIndices[vtkDataSetAttributes::NUM_ATTRIBUTES];
00093 
00094   vtkPVDataSetAttributesInformation(const vtkPVDataSetAttributesInformation&); // Not implemented
00095   void operator=(const vtkPVDataSetAttributesInformation&); // Not implemented
00096 };
00097 
00098 #endif

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