Mesh Oriented datABase  (version 5.4.1)
Array-based unstructured mesh datastructure
vtkMoabReader.h
Go to the documentation of this file.
00001 #ifndef VTKMOABREADER_H
00002 #define VTKMOABREADER_H
00003 
00004 #include "vtkIOGeometryModule.h"  // For export macro
00005 #include "vtkMultiBlockDataSetAlgorithm.h"
00006 #include "vtkNew.h"  //needed for api signature
00007 
00008 class vtkInformation;
00009 class vtkInformationVector;
00010 
00011 namespace smoab
00012 {
00013 class Tag;
00014 class Interface;
00015 }  // namespace smoab
00016 
00017 class vtkMoabReader : public vtkMultiBlockDataSetAlgorithm
00018 {
00019   public:
00020     static vtkMoabReader* New();
00021     vtkTypeMacro( vtkMoabReader, vtkMultiBlockDataSetAlgorithm ) void PrintSelf( ostream& os, vtkIndent indent );
00022 
00023     // Description:
00024     // Specify file name of the MOAB mesh file.
00025     vtkSetStringMacro( FileName );
00026     vtkGetStringMacro( FileName );
00027 
00028   protected:
00029     vtkMoabReader();
00030     ~vtkMoabReader();
00031 
00032     int RequestInformation( vtkInformation* vtkNotUsed( request ),
00033                             vtkInformationVector** vtkNotUsed( inputVector ),
00034                             vtkInformationVector* outputVector );
00035 
00036     int RequestData( vtkInformation* vtkNotUsed( request ),
00037                      vtkInformationVector** vtkNotUsed( inputVector ),
00038                      vtkInformationVector* outputVector );
00039 
00040   private:
00041     void CreateSubBlocks( vtkNew< vtkMultiBlockDataSet >& root,
00042                           smoab::Interface* interface,
00043                           smoab::Tag const* parentTag,
00044                           smoab::Tag const* extractTag = NULL );
00045 
00046     void ExtractShell( vtkNew< vtkMultiBlockDataSet >& root, smoab::Interface* interface, smoab::Tag const* parentTag );
00047 
00048     vtkMoabReader( const vtkMoabReader& );   // Not implemented.
00049     void operator=( const vtkMoabReader& );  // Not implemented.
00050     char* FileName;
00051 };
00052 
00053 #endif  // VTKMOABREADER_H
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines