00001 #ifndef FIELDWRITERBASE_H
00002 #define FIELDWRITERBASE_H
00003
00004 #include "SundanceDefs.h"
00005 #include "TSFSmartPtr.h"
00006 #include <string>
00007 #include "Expr.h"
00008 #include "Mesh.h"
00009
00010 namespace Sundance
00011 {
00012
00013 using namespace TSF;
00014 using std::string;
00015 using std::ostream;
00016
00017
00018 class FieldWriterBase
00019 {
00020 public:
00021
00022 FieldWriterBase(){;}
00023
00024 virtual ~FieldWriterBase(){;}
00025
00026
00027 virtual void writeField(const string& name,
00028 const Expr& expr) const = 0 ;
00029
00030
00031 virtual void writeMesh(const Mesh& mesh) const = 0 ;
00032
00033
00034 virtual void writeCommentLine(const string& line) const = 0 ;
00035
00036 private:
00037 };
00038 }
00039
00040 #endif