ASCIIFilter.h

00001 //***************************************************************************************
00002 //
00003 // File supervisor: Crosswalk team
00004 //
00005 // Copyright 2008 Autodesk, Inc.  All rights reserved.  
00006 // Use of this software is subject to the terms of the Autodesk license agreement 
00007 // provided at the time of installation or download, or which otherwise accompanies 
00008 // this software in either electronic or hard copy form.
00009 //
00010 //***************************************************************************************
00011 
00012 #ifndef _ASCIIFILTER_H_
00013 #define _ASCIIFILTER_H_
00014 
00015 #include <SIBCUtil.h>
00016 #include <SIBCString.h>
00017 
00018 #include "CXSIFilter.h"
00019 
00020 #define ASCII_FILTER_NAME   "Text"
00021 #define ASCII_FILTER_ID     "txt"
00022 
00024 /*
00025  * This class allows the buffering to happen by channeling all the output through here which
00026  * then goes to the subfilter.
00027  */
00028 class CASCIIFilter : public CXSIFilter
00029 {
00030 public:
00034     CASCIIFilter();
00038     virtual ~CASCIIFilter();
00039 
00044     int Open ( CSIBCString in_szFilename,  _SI_FILE_MODE in_Mode );
00047     int Close ();
00048     
00054     int Read ( SI_Char * out_pBuffer, SI_Long in_lSize );
00060     int Write( SI_Char * in_pBuffer,  SI_Long in_lSize );
00061 
00062 
00066     int Eof();
00070     int Tell();
00071 
00072 
00073 private:
00074 #ifdef  _PSX2
00075     bool    m_bEof;
00076 #endif
00077 
00078 };
00079 
00080 #endif