151 #ifndef vtkLSDynaReader_h 152 #define vtkLSDynaReader_h 154 #include "vtkIOLSDynaModule.h" 175 void Dump( ostream &os );
186 virtual int CanReadFile(
const char* fname );
193 virtual void SetDatabaseDirectory(
const char* );
194 const char* GetDatabaseDirectory();
195 int IsDatabaseValid();
205 virtual void SetFileName(
const char* );
206 const char* GetFileName();
221 int GetDimensionality();
310 vtkGetVector2Macro(TimeStepRange,
int);
311 vtkSetVector2Macro(TimeStepRange,
int);
319 int GetNumberOfPointArrays();
320 const char* GetPointArrayName(
int);
321 virtual void SetPointArrayStatus(
int arr,
int status );
322 virtual void SetPointArrayStatus(
const char* arrName,
int status );
323 int GetPointArrayStatus(
int arr );
324 int GetPointArrayStatus(
const char* arrName );
325 int GetNumberOfComponentsInPointArray(
int arr );
326 int GetNumberOfComponentsInPointArray(
const char* arrName );
336 int GetNumberOfCellArrays(
int cellType );
337 const char* GetCellArrayName(
int cellType,
int arr );
338 virtual void SetCellArrayStatus(
int cellType,
int arr,
int status );
339 virtual void SetCellArrayStatus(
int cellType,
const char* arrName,
int status );
340 int GetCellArrayStatus(
int cellType,
int arr );
341 int GetCellArrayStatus(
int cellType,
const char* arrName );
342 int GetNumberOfComponentsInCellArray(
int cellType,
int arr );
343 int GetNumberOfComponentsInCellArray(
int cellType,
const char* arrName );
351 int GetNumberOfSolidArrays();
352 const char* GetSolidArrayName(
int);
353 virtual void SetSolidArrayStatus(
int arr,
int status );
354 virtual void SetSolidArrayStatus(
const char* arrName,
int status );
355 int GetSolidArrayStatus(
int arr );
356 int GetSolidArrayStatus(
const char* arrName );
359 int GetNumberOfComponentsInSolidArray(
int a );
360 int GetNumberOfComponentsInSolidArray(
const char* arrName );
367 int GetNumberOfThickShellArrays();
368 const char* GetThickShellArrayName(
int);
369 virtual void SetThickShellArrayStatus(
int arr,
int status );
370 virtual void SetThickShellArrayStatus(
const char* arrName,
int status );
371 int GetThickShellArrayStatus(
int arr );
372 int GetThickShellArrayStatus(
const char* arrName );
375 int GetNumberOfComponentsInThickShellArray(
int a );
376 int GetNumberOfComponentsInThickShellArray(
const char* arrName );
383 int GetNumberOfShellArrays();
384 const char* GetShellArrayName(
int);
385 virtual void SetShellArrayStatus(
int arr,
int status );
386 virtual void SetShellArrayStatus(
const char* arrName,
int status );
387 int GetShellArrayStatus(
int arr );
388 int GetShellArrayStatus(
const char* arrName );
391 int GetNumberOfComponentsInShellArray(
int a );
392 int GetNumberOfComponentsInShellArray(
const char* arrName );
399 int GetNumberOfRigidBodyArrays();
400 const char* GetRigidBodyArrayName(
int);
401 virtual void SetRigidBodyArrayStatus(
int arr,
int status );
402 virtual void SetRigidBodyArrayStatus(
const char* arrName,
int status );
403 int GetRigidBodyArrayStatus(
int arr );
404 int GetRigidBodyArrayStatus(
const char* arrName );
407 int GetNumberOfComponentsInRigidBodyArray(
int a );
408 int GetNumberOfComponentsInRigidBodyArray(
const char* arrName );
415 int GetNumberOfRoadSurfaceArrays();
416 const char* GetRoadSurfaceArrayName(
int);
417 virtual void SetRoadSurfaceArrayStatus(
int arr,
int status );
418 virtual void SetRoadSurfaceArrayStatus(
const char* arrName,
int status );
419 int GetRoadSurfaceArrayStatus(
int arr );
420 int GetRoadSurfaceArrayStatus(
const char* arrName );
423 int GetNumberOfComponentsInRoadSurfaceArray(
int a );
424 int GetNumberOfComponentsInRoadSurfaceArray(
const char* arrName );
431 int GetNumberOfBeamArrays();
432 const char* GetBeamArrayName(
int);
433 virtual void SetBeamArrayStatus(
int arr,
int status );
434 virtual void SetBeamArrayStatus(
const char* arrName,
int status );
435 int GetBeamArrayStatus(
int arr );
436 int GetBeamArrayStatus(
const char* arrName );
439 int GetNumberOfComponentsInBeamArray(
int a );
440 int GetNumberOfComponentsInBeamArray(
const char* arrName );
447 int GetNumberOfParticleArrays();
448 const char* GetParticleArrayName(
int);
449 virtual void SetParticleArrayStatus(
int arr,
int status );
450 virtual void SetParticleArrayStatus(
const char* arrName,
int status );
451 int GetParticleArrayStatus(
int arr );
452 int GetParticleArrayStatus(
const char* arrName );
455 int GetNumberOfComponentsInParticleArray(
int a );
456 int GetNumberOfComponentsInParticleArray(
const char* arrName );
492 vtkBooleanMacro(DeletedCellsAsGhostArray,
vtkTypeBool);
507 vtkSetStringMacro(InputDeck);
508 vtkGetStringMacro(InputDeck);
522 int GetNumberOfPartArrays();
523 const char* GetPartArrayName(
int);
524 virtual void SetPartArrayStatus(
int arr,
int status );
525 virtual void SetPartArrayStatus(
const char* partName,
int status );
526 int GetPartArrayStatus(
int arr );
527 int GetPartArrayStatus(
const char* partName );
553 int TimeStepRange[2];
571 int ReadHeaderInformation(
int currentAdaptLevel );
582 int ScanDatabaseTimeSteps();
597 virtual int ReadTopology();
598 virtual int ReadNodes();
599 virtual int ReadPartSizes();
600 virtual int ReadConnectivityAndMaterial();
601 virtual int ReadUserIds();
603 virtual int ReadNodeStateInfo(
vtkIdType );
604 virtual int ReadCellStateInfo(
vtkIdType );
605 virtual int ReadDeletion();
613 virtual void ResetPartInfo();
619 virtual int ReadInputDeck();
626 virtual int ReadPartTitlesFromRootFile();
633 virtual int ReadUserMaterialIds();
640 int ReadInputDeckXML( ifstream& deck );
641 int ReadInputDeckKeywords( ifstream& deck );
648 int WriteInputDeckSummary(
const char* fname );
666 virtual void ReadCellProperties(
const int&
type,
const int& numTuples);
670 void ResetPartsCache();
677 const int& deathPos,
const int& cellSize);
679 template<
int wordSize,
typename T>
680 int FillTopology(T* buffer);
682 template<
typename T,
int blockType, vtkIdType numWordsPerCell, vtkIdType cellLength>
683 void ReadBlockCellSizes();
702 vtkWarningMacro(
"Point array \"" << arrName <<
"\" does not exist" );
741 vtkWarningMacro(
"Cell array \"" << arrName <<
"\" (type " << cellType <<
") does not exist" );
780 vtkWarningMacro(
"Solid array \"" << arrName <<
"\" does not exist" );
819 vtkWarningMacro(
"Thick shell array \"" << arrName <<
"\" does not exist" );
858 vtkWarningMacro(
"Shell array \"" << arrName <<
"\" does not exist" );
897 vtkWarningMacro(
"Beam array \"" << arrName <<
"\" does not exist" );
936 vtkWarningMacro(
"Particle array \"" << arrName <<
"\" does not exist" );
975 vtkWarningMacro(
"Rigid body array \"" << arrName <<
"\" does not exist" );
1014 vtkWarningMacro(
"Road surface array \"" << arrName <<
"\" does not exist" );
1053 vtkWarningMacro(
"Part \"" << arrName <<
"\" does not exist" );
1069 #endif // vtkLSDynaReader_h virtual void SetThickShellArrayStatus(int arr, int status)
These methods allow you to load only selected subsets of the cell variables defined over the mesh...
int GetShellArrayStatus(int arr)
These methods allow you to load only selected subsets of the cell variables defined over the mesh...
vtkLSDynaPartCollection * Parts
const char * GetPartArrayName(int)
These methods allow you to load only selected parts of the input.
int GetNumberOfCellArrays(int cellType)
Routines that allow the status of a cell variable to be adjusted or queried independent of the output...
int GetNumberOfPointArrays()
These methods allow you to load only selected subsets of the nodal variables defined over the mesh...
int GetThickShellArrayStatus(int arr)
These methods allow you to load only selected subsets of the cell variables defined over the mesh...
const char * GetPointArrayName(int)
These methods allow you to load only selected subsets of the nodal variables defined over the mesh...
int GetNumberOfComponentsInBeamArray(int a)
int GetNumberOfBeamArrays()
These methods allow you to load only selected subsets of the cell variables defined over the mesh...
int GetNumberOfSolidArrays()
These methods allow you to load only selected subsets of the cell variables defined over the mesh...
int GetRoadSurfaceArrayStatus(int arr)
These methods allow you to load only selected subsets of the cell variables defined over the mesh...
Read LS-Dyna databases (d3plot)
vtkTypeBool DeformedMesh
Should deflected coordinates be used, or should the mesh remain undeflected? By default, this is true.
const char * GetParticleArrayName(int)
These methods allow you to load only selected subsets of the cell variables defined over the mesh...
const char * GetThickShellArrayName(int)
These methods allow you to load only selected subsets of the cell variables defined over the mesh...
int GetNumberOfComponentsInCellArray(int cellType, int arr)
Routines that allow the status of a cell variable to be adjusted or queried independent of the output...
virtual void SetRigidBodyArrayStatus(int arr, int status)
These methods allow you to load only selected subsets of the cell variables defined over the mesh...
int GetNumberOfComponentsInSolidArray(int a)
int GetNumberOfThickShellArrays()
These methods allow you to load only selected subsets of the cell variables defined over the mesh...
const char * GetSolidArrayName(int)
These methods allow you to load only selected subsets of the cell variables defined over the mesh...
Superclass for algorithms that produce only vtkMultiBlockDataSet as output.
virtual void SetSolidArrayStatus(int arr, int status)
These methods allow you to load only selected subsets of the cell variables defined over the mesh...
virtual int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
This is called by the superclass.
vtkTypeBool DeletedCellsAsGhostArray
Should cells marked as deleted be removed from the mesh? By default, this is true.
virtual void SetRoadSurfaceArrayStatus(int arr, int status)
These methods allow you to load only selected subsets of the cell variables defined over the mesh...
static vtkMultiBlockDataSetAlgorithm * New()
int GetPointArrayStatus(int arr)
These methods allow you to load only selected subsets of the nodal variables defined over the mesh...
int GetRigidBodyArrayStatus(int arr)
These methods allow you to load only selected subsets of the cell variables defined over the mesh...
int GetNumberOfParticleArrays()
These methods allow you to load only selected subsets of the cell variables defined over the mesh...
virtual void SetShellArrayStatus(int arr, int status)
These methods allow you to load only selected subsets of the cell variables defined over the mesh...
int GetCellArrayStatus(int cellType, int arr)
Routines that allow the status of a cell variable to be adjusted or queried independent of the output...
int GetNumberOfPartArrays()
These methods allow you to load only selected parts of the input.
int GetNumberOfRoadSurfaceArrays()
These methods allow you to load only selected subsets of the cell variables defined over the mesh...
const char * GetRigidBodyArrayName(int)
These methods allow you to load only selected subsets of the cell variables defined over the mesh...
a simple class to control print indentation
int GetNumberOfRigidBodyArrays()
These methods allow you to load only selected subsets of the cell variables defined over the mesh...
int GetSolidArrayStatus(int arr)
These methods allow you to load only selected subsets of the cell variables defined over the mesh...
dataset represents arbitrary combinations of all possible cell types
abstract superclass for arrays of numeric data
int GetNumberOfShellArrays()
These methods allow you to load only selected subsets of the cell variables defined over the mesh...
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkTypeBool RemoveDeletedCells
Should cells marked as deleted be removed from the mesh? By default, this is true.
dynamic, self-adjusting array of unsigned char
int GetNumberOfComponentsInShellArray(int a)
int GetNumberOfComponentsInRigidBodyArray(int a)
const char * GetCellArrayName(int cellType, int arr)
Routines that allow the status of a cell variable to be adjusted or queried independent of the output...
int GetPartArrayStatus(int arr)
These methods allow you to load only selected parts of the input.
int GetParticleArrayStatus(int arr)
These methods allow you to load only selected subsets of the cell variables defined over the mesh...
int GetNumberOfComponentsInThickShellArray(int a)
int GetBeamArrayStatus(int arr)
These methods allow you to load only selected subsets of the cell variables defined over the mesh...
virtual void SetBeamArrayStatus(int arr, int status)
These methods allow you to load only selected subsets of the cell variables defined over the mesh...
virtual void SetCellArrayStatus(int cellType, int arr, int status)
Routines that allow the status of a cell variable to be adjusted or queried independent of the output...
const char * GetShellArrayName(int)
These methods allow you to load only selected subsets of the cell variables defined over the mesh...
char * InputDeck
The name of a file containing part names and IDs.
virtual void SetParticleArrayStatus(int arr, int status)
These methods allow you to load only selected subsets of the cell variables defined over the mesh...
virtual void SetPartArrayStatus(int arr, int status)
These methods allow you to load only selected parts of the input.
virtual void SetPointArrayStatus(int arr, int status)
These methods allow you to load only selected subsets of the nodal variables defined over the mesh...
int GetNumberOfComponentsInRoadSurfaceArray(int a)
const char * GetBeamArrayName(int)
These methods allow you to load only selected subsets of the cell variables defined over the mesh...
int GetNumberOfComponentsInParticleArray(int a)
represent and manipulate 3D points
const char * GetRoadSurfaceArrayName(int)
These methods allow you to load only selected subsets of the cell variables defined over the mesh...
int GetNumberOfComponentsInPointArray(int arr)
These methods allow you to load only selected subsets of the nodal variables defined over the mesh...
virtual int RequestInformation(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
This is called by the superclass.