70 #ifndef __vtkExodusIIWriter_h
71 #define __vtkExodusIIWriter_h
76 #include <vtkstd/vector>
78 #include <vtkstd/string>
108 vtkSetStringMacro(FileName);
109 vtkGetStringMacro(FileName);
116 vtkSetMacro(StoreDoubles,
int);
117 vtkGetMacro(StoreDoubles,
int);
122 vtkSetMacro(GhostLevel,
int);
123 vtkGetMacro(GhostLevel,
int);
130 vtkSetMacro(WriteOutBlockIdArray,
int);
131 vtkGetMacro(WriteOutBlockIdArray,
int);
132 vtkBooleanMacro(WriteOutBlockIdArray,
int);
138 vtkSetMacro(WriteOutGlobalNodeIdArray,
int);
139 vtkGetMacro(WriteOutGlobalNodeIdArray,
int);
140 vtkBooleanMacro(WriteOutGlobalNodeIdArray,
int);
146 vtkSetMacro(WriteOutGlobalElementIdArray,
int);
147 vtkGetMacro(WriteOutGlobalElementIdArray,
int);
148 vtkBooleanMacro(WriteOutGlobalElementIdArray,
int);
153 vtkSetMacro(WriteAllTimeSteps,
int);
154 vtkGetMacro(WriteAllTimeSteps,
int);
155 vtkBooleanMacro(WriteAllTimeSteps,
int);
157 vtkSetStringMacro(BlockIdArrayName);
158 vtkGetStringMacro(BlockIdArrayName);
200 this->NumElements = 0;
201 this->ElementStartIndex = -1;
202 this->NodesPerElement = 0;
203 this->EntityCounts = std::vector<int>();
204 this->EntityNodeOffsets = std::vector<int>();
206 this->OutputIndex = -1;
207 this->NumAttributes = 0;
208 this->BlockAttributes = 0;
256 int BlockVariableTruthValue(
int blockIdx,
int varIdx);
259 char *StrDupWithNew (
const char *s);
281 int CreateNewExodusFile ();
282 void CloseExodusFile ();
285 void RemoveGhostCells ();
286 int CheckParameters ();
287 int CheckInputArrays ();
288 int ConstructBlockInfoMap ();
289 int ConstructVariableInfoMaps ();
290 int ParseMetadata ();
291 int CreateDefaultMetadata ();
292 char *GetCellTypeName (
int t);
298 void ConvertVariableNames (vtkstd::map<vtkstd::string, VariableInfo>& variableMap);
299 char **FlattenOutVariableNames (
301 const vtkstd::map<vtkstd::string, VariableInfo>& variableMap);
312 int WriteInitializationParameters ();
313 int WriteQARecords ();
314 int WriteInformationRecords ();
316 int WriteCoordinateNames ();
317 int WriteGlobalPointIds ();
318 int WriteBlockInformation ();
319 int WriteGlobalElementIds ();
320 int WriteVariableArrayNames ();
321 int WriteNodeSetInformation ();
322 int WriteSideSetInformation ();
323 int WriteProperties ();
324 int WriteNextTimeStep ();
327 double ExtractGlobalData (
const char *
name,
int comp,
int ts);
328 int WriteGlobalData (
int timestep,
vtkDataArray *buffer);
332 int WritePointData (
int timestep,
vtkDataArray *buffer);