00001 #ifndef _IT_BUS_FILE_OUTPUT_STREAM_H_
00002 #define _IT_BUS_FILE_OUTPUT_STREAM_H_
00003
00004
00005
00006
00007 #include <it_bus/types.h>
00008 #include <it_bus/api_defines.h>
00009
00010 #include <it_bus/output_stream.h>
00011
00012 #include <stdio.h>
00013
00014 namespace IT_Bus
00015 {
00019 class IT_AFC_API FileOutputStream : public OutputStream
00020 {
00021 public:
00022
00028 FileOutputStream(
00029 const String & file_name
00030 ) IT_THROW_DECL((IOException));
00031
00035 ~FileOutputStream();
00036
00037 virtual
00038 void write(
00039 const Character to_write
00040 ) IT_THROW_DECL((IOException));
00041
00042 virtual
00043 void write(
00044 const Character * to_write
00045 ) IT_THROW_DECL((IOException));
00046
00047 virtual
00048 void write(
00049 const Character * to_write,
00050 size_t length
00051 ) IT_THROW_DECL((IOException));
00052
00075 void
00076 close();
00077
00078 private:
00079
00080 FileOutputStream&
00081 operator=(
00082 const FileOutputStream & rhs
00083 );
00084
00085 FileOutputStream(
00086 const FileOutputStream & rhs
00087 );
00088
00089 FILE * m_fp;
00090 };
00091 }
00092
00093 #endif