00001 /* 00002 * Copyright (c) 2004 CSIRO ICT Centre 00003 * 00004 * $Id: FileObjectWriter.h 587 2004-12-03 15:06:33Z nch $ 00005 */ 00006 00007 /* 00008 * Writes the contents of an object to a file using the write method. 00009 * 00010 * This class defines the interface all FileObjectWriters must implement. 00011 * 00012 * Refere to subclasses for examples. 00013 */ 00014 00015 #ifndef FILEOBJECTWRITER_DEFINED 00016 #define FILEOBJECTWRITER_DEFINED 00017 00018 #include "FileHeader.h" 00019 00020 class Object; 00021 00022 00023 class FileObjectWriter 00024 { 00025 public: 00026 virtual ~FileObjectWriter() {}; 00027 virtual void write(FILE * fp, Object const * object)=0; 00028 00029 protected: 00030 FileObjectWriter() {}; 00031 00032 private: 00033 FileObjectWriter(FileObjectWriter const & other); 00034 FileObjectWriter & operator=(FileObjectWriter const &); 00035 }; 00036 00037 #endif // ifndef FILEOBJECTWRITER_DEFINED 00038