Main Page | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members | Related Pages

IO/vtkXMLDataSetWriter.h

Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   Visualization Toolkit
00004   Module:    $RCSfile: vtkXMLDataSetWriter.h,v $
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 =========================================================================*/
00031 #ifndef __vtkXMLDataSetWriter_h
00032 #define __vtkXMLDataSetWriter_h
00033 
00034 #include "vtkXMLWriter.h"
00035 
00036 class vtkCallbackCommand;
00037 
00038 class VTK_IO_EXPORT vtkXMLDataSetWriter : public vtkXMLWriter
00039 {
00040 public:
00041   vtkTypeRevisionMacro(vtkXMLDataSetWriter,vtkXMLWriter);
00042   void PrintSelf(ostream& os, vtkIndent indent);
00043   static vtkXMLDataSetWriter* New();
00044   
00046 
00047   void SetInput(vtkDataSet* input);
00048   vtkDataSet* GetInput();
00050   
00051 protected:
00052   vtkXMLDataSetWriter();
00053   ~vtkXMLDataSetWriter();
00054   
00055   // Override writing method from superclass.
00056   virtual int WriteInternal();
00057   
00058   // Dummies to satisfy pure virtuals from superclass.
00059   int WriteData();
00060   const char* GetDataSetName();
00061   const char* GetDefaultFileExtension();
00062   
00063   // Callback registered with the ProgressObserver.
00064   static void ProgressCallbackFunction(vtkObject*, unsigned long, void*,
00065                                        void*);
00066   // Progress callback from internal writer.
00067   virtual void ProgressCallback(vtkProcessObject* w);
00068   
00069   // The observer to report progress from the internal writer.
00070   vtkCallbackCommand* ProgressObserver;  
00071   
00072 private:
00073   vtkXMLDataSetWriter(const vtkXMLDataSetWriter&);  // Not implemented.
00074   void operator=(const vtkXMLDataSetWriter&);  // Not implemented.
00075 };
00076 
00077 #endif