00001 //---------------------------------------------------------------------------- 00004 // 00005 // (C) 2003-2006 Celartem Technology Inc. All rights reserved. 00006 //---------------------------------------------------------------------------- 00007 00008 #ifndef _cel_stdstream_h_ 00009 #define _cel_stdstream_h_ 00010 00011 #include "cel_iostream.h" 00012 #include <cstdio> 00013 00014 namespace Celartem 00015 { 00019 class StdioStream : public Stream 00020 { 00021 public: 00025 enum FileMode 00026 { 00027 fmText = 0, 00028 fmBinary = 1 00029 }; 00030 00037 virtual void setMode(FileMode inMode) = 0; 00038 00049 static AutoPtr<StdioStream> create( 00050 std::FILE *inFile, bool inCloseOnDelete = false); 00051 }; 00052 } // namespace Celartem 00053 00054 00055 #endif // _cel_stdstream_h_