00001 //*************************************************************************************** 00002 // 00003 // File supervisor: Dominic Laflamme 00004 // 00005 // (c) Copyright 2001 Avid Technology, Inc. . All rights reserved. 00006 // 00007 // 00008 // @doc 00009 // 00010 // @module ASCIIFilter.h | Main header file for CASCIIFilter implementation 00011 //*************************************************************************************** 00012 00013 /**************************************************************************************** 00014 THIS CODE IS PUBLISHED AS A SAMPLE ONLY AND IS PROVIDED "AS IS". 00015 IN NO EVENT SHALL SOFTIMAGE, AVID TECHNOLOGY, INC. AND/OR THEIR RESPECTIVE 00016 SUPPLIERS BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY 00017 DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 00018 ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN 00019 CONNECTION WITH THE USE OR PERFORMANCE OF THIS CODE . 00020 00021 COPYRIGHT NOTICE. Copyright © 1999-2002 Avid Technology Inc. . All rights reserved. 00022 00023 SOFTIMAGE is a registered trademark of Avid Technology Inc. or its subsidiaries 00024 or divisions. Windows NT is a registered trademark of Microsoft Corp. All other 00025 trademarks contained herein are the property of their respective owners. 00026 ****************************************************************************************/ 00027 #ifndef _ASCIIFILTER_H_ 00028 #define _ASCIIFILTER_H_ 00029 00030 #include <SIBCUtil.h> 00031 #include <SIBCString.h> 00032 00033 #include "CXSIFilter.h" 00034 00035 #define ASCII_FILTER_NAME "Text" 00036 #define ASCII_FILTER_ID "txt" 00037 00039 /* 00040 * This class allows the buffering to happen by channeling all the output through here which 00041 * then goes to the subfilter. 00042 */ 00043 class CASCIIFilter : public CXSIFilter 00044 { 00045 public: 00049 CASCIIFilter(); 00053 virtual ~CASCIIFilter(); 00054 00059 int Open ( CSIBCString in_szFilename, _SI_FILE_MODE in_Mode ); 00062 int Close (); 00063 00069 int Read ( SI_Char * out_pBuffer, SI_Long in_lSize ); 00075 int Write( SI_Char * in_pBuffer, SI_Long in_lSize ); 00076 00077 00081 int Eof(); 00085 int Tell(); 00086 00087 00088 private: 00089 #ifdef _PSX2 00090 bool m_bEof; 00091 #endif 00092 00093 }; 00094 00095 #endif