00001
00002
00012
00013
00014 #ifndef _LEGACYFILTER_H_
00015 #define _LEGACYFILTER_H_
00016
00017 #include <SIBCUtil.h>
00018 #include <SIBCString.h>
00019
00020 #include "CXSIFilter.h"
00021
00022 #define BUFFER_FILTER_NAME "Buffer"
00023 #define BUFFER_FILTER_ID "buf"
00024
00025 #define BUFFER_SIZE (128 * 1024)
00026
00031 class CLegacyFilter : public CXSIFilter
00032 {
00033 public:
00036 CLegacyFilter();
00039 virtual ~CLegacyFilter();
00040
00046 int Open ( CSIBCString in_szFilename, _SI_FILE_MODE in_Mode );
00050 int Close ();
00051
00057 int Read ( SI_Char * out_pBuffer, SI_Long in_lSize );
00063 int Write( SI_Char * in_pBuffer, SI_Long in_lSize );
00064
00065
00070 int Eof();
00074 int Tell();
00075 private:
00076 void Flush();
00077
00078 CSIAccumString m_szAccumBuffer;
00079
00080 };
00081
00082 #endif