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

Servers/Filters/vtkPVEnSightMasterServerReader.h

Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   ParaView
00004   Module:    $RCSfile: vtkPVEnSightMasterServerReader.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 =========================================================================*/
00019 #ifndef __vtkPVEnSightMasterServerReader_h
00020 #define __vtkPVEnSightMasterServerReader_h
00021 
00022 #include "vtkGenericEnSightReader.h"
00023 
00024 class vtkMultiProcessController;
00025 class vtkPVEnSightMasterServerReaderInternal;
00026 class vtkPVEnSightMasterServerTranslator;
00027 
00028 class VTK_EXPORT vtkPVEnSightMasterServerReader : public vtkGenericEnSightReader
00029 {
00030 public:
00031   static vtkPVEnSightMasterServerReader* New();
00032   vtkTypeRevisionMacro(vtkPVEnSightMasterServerReader, vtkGenericEnSightReader);
00033   void PrintSelf(ostream& os, vtkIndent indent);
00034   
00036 
00043   virtual vtkMultiProcessController* GetController();
00044   virtual void SetController(vtkMultiProcessController* controller);
00046 
00048   virtual int CanReadFile(const char*);
00049   
00051 
00052   vtkGetMacro(NumberOfPieces, int);
00054 
00055 protected:
00056   vtkPVEnSightMasterServerReader();
00057   ~vtkPVEnSightMasterServerReader();
00058   
00059   virtual int RequestInformation(vtkInformation *, vtkInformationVector **,
00060                                  vtkInformationVector *);
00061   virtual int RequestData(vtkInformation *, vtkInformationVector **,
00062                           vtkInformationVector *);
00063   int ParseMasterServerFile();
00064   
00065   void SuperclassExecuteInformation(vtkInformation *, vtkInformationVector **,
00066                                     vtkInformationVector *);
00067   void SuperclassExecuteData(vtkInformation *, vtkInformationVector **,
00068                              vtkInformationVector *);
00069   
00070   // The MPI controller used to communicate with the instances in
00071   // other processes.
00072   vtkMultiProcessController* Controller;
00073   
00074   // The number of pieces available in the file.
00075   int NumberOfPieces;
00076   
00077   // Internal implementation details.
00078   vtkPVEnSightMasterServerReaderInternal* Internal;
00079   
00080   // The extent translator used to provide the correct breakdown of
00081   // pieces across processes.
00082   vtkPVEnSightMasterServerTranslator* ExtentTranslator;
00083   
00084   // Whether an error occurred during ExecuteInformation.
00085   int InformationError;
00086   
00087 private:
00088   vtkPVEnSightMasterServerReader(const vtkPVEnSightMasterServerReader&); // Not implemented
00089   void operator=(const vtkPVEnSightMasterServerReader&); // Not implemented
00090 };
00091 
00092 #endif

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