00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: $RCSfile: vtkDataObjectWriter.h,v $ 00005 Language: C++ 00006 00007 Copyright (c) 1993-2002 Ken Martin, Will Schroeder, Bill Lorensen 00008 All rights reserved. 00009 See Copyright.txt or http://www.kitware.com/Copyright.htm for details. 00010 00011 This software is distributed WITHOUT ANY WARRANTY; without even 00012 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 00013 PURPOSE. See the above copyright notice for more information. 00014 00015 =========================================================================*/ 00048 #ifndef __vtkDataObjectWriter_h 00049 #define __vtkDataObjectWriter_h 00050 00051 #include "vtkWriter.h" 00052 #include "vtkDataWriter.h" // Neds data because it calls methods on it 00053 00054 class VTK_IO_EXPORT vtkDataObjectWriter : public vtkWriter 00055 { 00056 public: 00057 static vtkDataObjectWriter *New(); 00058 vtkTypeRevisionMacro(vtkDataObjectWriter,vtkWriter); 00059 void PrintSelf(ostream& os, vtkIndent indent); 00060 00062 00063 void SetInput(vtkDataObject *input); 00064 vtkDataObject *GetInput(); 00066 00068 00069 void SetFileName(const char *filename) {this->Writer->SetFileName(filename);}; 00070 char *GetFileName() {return this->Writer->GetFileName();}; 00071 void SetHeader(char *header) {this->Writer->SetHeader(header);}; 00072 char *GetHeader() {return this->Writer->GetHeader();}; 00073 void SetFileType(int type) {this->Writer->SetFileType(type);}; 00074 int GetFileType() {return this->Writer->GetFileType();}; 00075 void SetFileTypeToASCII() {this->Writer->SetFileType(VTK_ASCII);}; 00076 void SetFileTypeToBinary() {this->Writer->SetFileType(VTK_BINARY);}; 00077 void SetFieldDataName(char *fieldname) {this->Writer->SetFieldDataName(fieldname);}; 00078 char *GetFieldDataName() {return this->Writer->GetFieldDataName();}; 00080 00081 protected: 00082 vtkDataObjectWriter(); 00083 ~vtkDataObjectWriter(); 00084 00085 void WriteData(); 00086 vtkDataWriter *Writer; 00087 00088 private: 00089 vtkDataObjectWriter(const vtkDataObjectWriter&); // Not implemented. 00090 void operator=(const vtkDataObjectWriter&); // Not implemented. 00091 }; 00092 00093 #endif 00094 00095