VTK
|
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: vtkAbstractParticleWriter.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 =========================================================================*/ 00030 #ifndef __vtkAbstractParticleWriter_h 00031 #define __vtkAbstractParticleWriter_h 00032 00033 #include "vtkIOCoreModule.h" // For export macro 00034 #include "vtkWriter.h" 00035 00036 class VTKIOCORE_EXPORT vtkAbstractParticleWriter : public vtkWriter 00037 { 00038 public: 00039 vtkTypeMacro(vtkAbstractParticleWriter,vtkWriter); 00040 void PrintSelf(ostream& os, vtkIndent indent); 00041 00043 00044 vtkSetMacro(TimeStep, int); 00045 vtkGetMacro(TimeStep, int); 00047 00049 00053 vtkSetMacro(TimeValue,double); 00054 vtkGetMacro(TimeValue,double); 00056 00058 00059 vtkSetStringMacro(FileName); 00060 vtkGetStringMacro(FileName); 00062 00064 00066 vtkSetMacro(CollectiveIO,int); 00067 vtkGetMacro(CollectiveIO,int); 00068 void SetWriteModeToCollective(); 00069 void SetWriteModeToIndependent(); 00071 00074 virtual void CloseFile() = 0; 00075 00076 protected: 00077 vtkAbstractParticleWriter(); 00078 ~vtkAbstractParticleWriter(); 00079 00080 virtual void WriteData() = 0; //internal method subclasses must respond to 00081 int CollectiveIO; 00082 int TimeStep; 00083 double TimeValue; 00084 char *FileName; 00085 00086 private: 00087 vtkAbstractParticleWriter(const vtkAbstractParticleWriter&); // Not implemented. 00088 void operator=(const vtkAbstractParticleWriter&); // Not implemented. 00089 }; 00090 00091 #endif