00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #ifndef TEKFILEBZ2BINARY_H_6E9A6C06_2D12_11DA_99DC_000BDBC434D9
00022 #define TEKFILEBZ2BINARY_H_6E9A6C06_2D12_11DA_99DC_000BDBC434D9
00023
00024 #ifndef TEKLTI_H_C35A2A4C_D475_11D9_90BC_000BDBC434D9
00025 #error This file must be included from <teklti.h>
00026 #endif
00027
00028 TEKUUIDIMPORT(UTekFileBZ2Binary);
00029
00037 class TekFileBZ2Binary : public TekFileBZ2
00038 {
00039 private:
00040 FILE * PrivFileDesc;
00041 BZFILE * PrivBZ2FileDesc;
00042
00043 unsigned long PrivFlags;
00044 unsigned long PrivBlockSize;
00045
00046 uint64_t PrivBytesIn;
00047 uint64_t PrivBytesOut;
00048
00049 int PrivWorkFactor;
00050 int PrivVerbosity;
00051
00052 uint8_t * PrivUnused;
00053 int PrivUnusedLen;
00054
00055 uchar_t PrivFilename;
00056
00057 public:
00058 TekFileBZ2Binary();
00059
00060 ~TekFileBZ2Binary();
00061
00062 virtual TEKERR get_BytesIn(uint64_t * RetVal);
00063 virtual TEKERR get_BytesOut(uint64_t * RetVal);
00064 virtual TEKERR put_UseLessMemory(unsigned int NewVal);
00065 virtual TEKERR get_UseLessMemory(unsigned int * RetVal);
00066 virtual TEKERR put_WorkFactor(unsigned int NewVal);
00067 virtual TEKERR get_WorkFactor(unsigned int * RetVal);
00068 virtual TEKERR put_Verbosity(unsigned int NewVal);
00069 virtual TEKERR get_Verbosity(unsigned int * RetVal);
00070 virtual TEKERR put_BlockSize(unsigned int NewVal);
00071 virtual TEKERR get_BlockSize(unsigned int * RetVal);
00072 virtual TEKERR CloseStream();
00073 virtual TEKERR OpenStream();
00074 virtual TEKERR get_FILE(FILE ** FileDescriptor);
00075 virtual TEKERR get_Filename(uchar_t ** Name);
00076 virtual TEKERR get_Mode(TekFileMode * ModeID);
00077 virtual TEKERR get_Type(TekFileType * FileTypePointer);
00078 virtual TEKERR put_FILE(FILE * FileDescriptor);
00079 virtual TEKERR put_Filename(uchar_t * Name);
00080 virtual TEKERR put_Mode(TekFileMode ModeID);
00081
00082 virtual TEKERR Close();
00083 virtual TEKERR Flush();
00084 virtual TEKERR Open();
00085 virtual TEKERR Open64();
00086 virtual TEKERR Read64(
00087 void * Buffer,
00088 uint64_t BytesToRead,
00089 uint64_t * BytesRead
00090 );
00091 virtual TEKERR Read(
00092 void * Buffer,
00093 unsigned long BytesToRead,
00094 unsigned long * BytesRead
00095 );
00096 virtual TEKERR Seek64(TekFileSeek SeekWhere, int64_t NewLocation);
00097 virtual TEKERR Seek(TekFileSeek SeekWhere, signed long NewLocation);
00098 virtual TEKERR Write64(
00099 void * Buffer,
00100 uint64_t BytesToWrite,
00101 uint64_t * BytesWrote
00102 );
00103 virtual TEKERR Write(
00104 void * Buffer,
00105 unsigned long BytesToWrite,
00106 unsigned long * BytesWrote
00107 );
00108 virtual TEKERR get_Location(unsigned long * Location);
00109 virtual TEKERR get_Location64(uint64_t * Location);
00110 };
00111
00112 #endif