ESLA
Embeddable Scriting LAnguage
Stanford University, Rock Fracture Project research group
© 2003
00001 /************************************************************************* 00002 * ESLA: Embeddable Scripting LAnguage 00003 * Copyright (C) 2003 Frantz Maerten 00004 * 00005 * This program is free software; you can redistribute it and/or 00006 * modify it under the terms of the GNU General Public License as 00007 * published by the Free Software Foundation; either version 2 of the 00008 * License, or (at your option) any later version. 00009 * 00010 * If you modify this software, you should contact the author, include 00011 * a notice giving the name of the person performing the modification, 00012 * the date of modification, and the reason for such modification. 00013 * 00014 * Note that the GNU General Public License does not permit 00015 * incorporating the Software into proprietary programs. 00016 * 00017 * Contact: Frantz Maerten 00018 * frantz@pangea.stanford.edu 00019 * 00020 * Dept. of Geological & Environmental Sciences 00021 * Stanford University 00022 * Stanford, CA 94305-2115 00023 * USA 00024 *************************************************************************/ 00025 00026 #ifndef ESLA_LANGUAGE_BASIC_WRITER 00027 #define ESLA_LANGUAGE_BASIC_WRITER 00028 00029 #include "../esla_namespace.h" 00030 #include "writer.h" 00031 #include <string> 00032 00033 00034 BEGIN_LIB_NAMESPACE 00035 00036 class FileWriter: public Writer { 00037 public: 00038 FileWriter(FILE* f) ; 00039 virtual void receive(const char* p, int n) ; 00040 virtual void endl() ; 00041 virtual void prefix() ; 00042 00043 private: 00044 FILE* fp_ ; 00045 00046 } ; 00047 00048 // ---------------------------------------------------- 00049 00050 class CoutWriter: public Writer { 00051 public: 00052 virtual void receive(const char* p, int n) ; 00053 virtual void endl() ; 00054 virtual void prefix() ; 00055 } ; 00056 00057 END_LIB_NAMESPACE 00058 00059 #endif