VTK
dox/IO/ParallelLSDyna/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 "vtkIOParallelLSDynaModule.h" // For export macro
00129 #include "vtkLSDynaReader.h"
00130 
00131 class vtkMultiProcessController;
00132 class VTKIOPARALLELLSDYNA_EXPORT vtkPLSDynaReader : public vtkLSDynaReader
00133 {
00134 public:
00135   vtkTypeMacro(vtkPLSDynaReader,vtkLSDynaReader);
00136   virtual void PrintSelf(ostream &os, vtkIndent indent);
00137   static vtkPLSDynaReader *New();
00138 
00140   virtual int CanReadFile( const char* fname );
00141 
00143 
00145   void SetController(vtkMultiProcessController *c);
00146   vtkGetObjectMacro(Controller, vtkMultiProcessController);
00148 
00149 protected:
00150   vtkPLSDynaReader();
00151   virtual ~vtkPLSDynaReader();
00152 
00153   virtual int RequestInformation( vtkInformation*, vtkInformationVector**, vtkInformationVector* );
00154   virtual int RequestData( vtkInformation*, vtkInformationVector**, vtkInformationVector* );
00155 
00156   virtual int ReadTopology();
00157 
00158 private:
00159 
00160   vtkPLSDynaReader( const vtkPLSDynaReader& ); // Not implemented.
00161   void operator = ( const vtkPLSDynaReader& ); // Not implemented.
00162 
00163   void GetPartRanges(vtkIdType* mins,vtkIdType* maxs);
00164 
00165   vtkMultiProcessController *Controller;
00166 
00167   struct vtkPLSDynaReaderInternal;
00168   vtkPLSDynaReaderInternal *Internal;
00169 };
00170 
00171 #endif // __vtkPLSDynaReader_h