VTK
dox/Parallel/vtkPLSDynaReader.h
Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   Visualization Toolkit
00004   Module:    vtkPLSDynaReader.h
00005 
00006   Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
00007   All rights reserved.
00008   See Copyright.txt or http://www.kitware.com/Copyright.htm 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 =========================================================================*/
00015 /*----------------------------------------------------------------------------
00016  Copyright (c) Sandia Corporation
00017  See Copyright.txt or http://www.paraview.org/HTML/Copyright.html for details.
00018 ----------------------------------------------------------------------------*/
00019 
00125 #ifndef __vtkPLSDynaReader_h
00126 #define __vtkPLSDynaReader_h
00127 
00128 #include "vtkLSDynaReader.h"
00129 
00130 class vtkMultiProcessController;
00131 class VTK_PARALLEL_EXPORT vtkPLSDynaReader : public vtkLSDynaReader
00132 {
00133 public:
00134   vtkTypeMacro(vtkPLSDynaReader,vtkLSDynaReader);
00135   virtual void PrintSelf(ostream &os, vtkIndent indent);
00136   static vtkPLSDynaReader *New();
00137   
00139   virtual int CanReadFile( const char* fname );
00140   
00142 
00144   void SetController(vtkMultiProcessController *c);
00145   vtkGetObjectMacro(Controller, vtkMultiProcessController);
00147     
00148 protected:  
00149   vtkPLSDynaReader();
00150   virtual ~vtkPLSDynaReader();
00151 
00152   virtual int RequestInformation( vtkInformation*, vtkInformationVector**, vtkInformationVector* );
00153   virtual int RequestData( vtkInformation*, vtkInformationVector**, vtkInformationVector* );
00154 
00155   virtual int ReadTopology();
00156 
00157 private:
00158 
00159   vtkPLSDynaReader( const vtkPLSDynaReader& ); // Not implemented.
00160   void operator = ( const vtkPLSDynaReader& ); // Not implemented.
00161 
00162   void GetPartRanges(vtkIdType* mins,vtkIdType* maxs);
00163 
00164   vtkMultiProcessController *Controller;
00165 
00166   struct vtkPLSDynaReaderInternal;
00167   vtkPLSDynaReaderInternal *Internal;
00168 };
00169 
00170 #endif // __vtkPLSDynaReader_h