00001 // DCFsbistreamBase.h 00002 ////////////////////////////////////////////////////////////////////// 00003 // (c) Copyright 2001-2002 Brown Deer Technology, LLC. 00004 // All rights reserved. 00005 ////////////////////////////////////////////////////////////////////// 00006 00007 #ifndef DCFSBISTREAMBASE_H 00008 #define DCFSBISTREAMBASE_H 00009 00010 #ifdef USE_STD 00011 #include <iostream> 00012 #include <string> 00013 using namespace std; 00014 #else 00015 #include <iostream.h> 00016 #include <string.h> 00017 #endif 00018 00019 #include "DCFutility.h" 00020 #include "DCFmpacketBase.h" 00021 00022 class DCFsbistreamBase 00023 { 00024 public: 00025 DCFsbistreamBase( istream& is = cin ); 00026 ~DCFsbistreamBase() {} 00027 00028 inline void version( const int ); 00029 inline int version(); 00030 inline void revision( const int ); 00031 inline int revision(); 00032 inline void author( const int ); 00033 inline int author(); 00034 inline void descript( const string& descript ); 00035 inline string& descript(); 00036 inline void blocknum( const int ); 00037 inline int blocknum(); 00038 inline void mthis0(const int ); 00039 inline int mthis0(); 00040 inline void mthis1(const int ); 00041 inline int mthis1(); 00042 inline void mmax(const int ); 00043 inline int mmax(); 00044 inline void bplen_sizeb(const int ); 00045 inline int bplen_sizeb(); 00046 inline void bplen_n(const int ); 00047 inline int bplen_n(); 00048 00049 inline void enctype( const int ); 00050 inline int enctype(); 00051 inline void encsizeb( const int ); 00052 inline int encsizeb(); 00053 00054 inline void finalstep( const int ); 00055 inline int finalstep(); 00056 00057 virtual void descr(); 00058 virtual void in(); 00059 virtual bool isopen(); 00060 virtual void close() {} 00061 virtual void open(); 00062 virtual void findmpacket( DCFmpacketBase&, const char, const int ) {} 00063 00064 protected: 00065 int _version; 00066 int _revision; 00067 int _author; 00068 int _lendescript; 00069 string _descript; 00070 int _blocknum; 00071 int _mthis0; 00072 int _mthis1; 00073 int _mmax; 00074 int _bplen_sizeb; 00075 int _bplen_n; 00076 00077 int _enctype; 00078 int _encsizeb; 00079 00080 istream* _is; 00081 00082 int _finalstep; 00083 }; 00084 00085 inline 00086 void DCFsbistreamBase::version( const int version ) { _version = version; } 00087 00088 inline 00089 int DCFsbistreamBase::version() { return _version; } 00090 00091 inline 00092 void DCFsbistreamBase::revision( const int revision ) { _revision = revision; } 00093 00094 inline 00095 int DCFsbistreamBase::revision() { return _revision; } 00096 00097 inline 00098 void DCFsbistreamBase::author( const int author ) { _author = author; } 00099 00100 inline 00101 int DCFsbistreamBase::author() { return _author; } 00102 00103 inline 00104 void DCFsbistreamBase::descript( const string& descript ) 00105 { 00106 _lendescript = descript.size(); 00107 _descript = descript; 00108 } 00109 00110 inline 00111 string& DCFsbistreamBase::descript() { return _descript; } 00112 00113 inline 00114 void DCFsbistreamBase::blocknum( const int blocknum ) { _blocknum = blocknum; } 00115 00116 inline 00117 int DCFsbistreamBase::blocknum() { return _blocknum; } 00118 00119 inline 00120 void DCFsbistreamBase::mthis0( const int mthis0 ) { _mthis0 = mthis0; } 00121 00122 inline 00123 int DCFsbistreamBase::mthis0() { return _mthis0; } 00124 00125 inline 00126 void DCFsbistreamBase::mthis1( const int mthis1 ) { _mthis1 = mthis1; } 00127 00128 inline 00129 int DCFsbistreamBase::mthis1() { return _mthis1; } 00130 00131 inline 00132 void DCFsbistreamBase::mmax( const int mmax ) 00133 { 00134 _mmax = mmax; 00135 mthis0( 0 ); 00136 mthis1( mmax ); 00137 } 00138 00139 inline 00140 int DCFsbistreamBase::mmax() { return _mmax; } 00141 00142 inline 00143 void DCFsbistreamBase::bplen_sizeb(const int bplen_sizeb) 00144 { 00145 _bplen_sizeb = bplen_sizeb; 00146 } 00147 00148 inline 00149 int DCFsbistreamBase::bplen_sizeb() { return _bplen_sizeb; } 00150 00151 inline 00152 void DCFsbistreamBase::bplen_n(const int bplen_n) { _bplen_n=bplen_n; } 00153 00154 inline 00155 int DCFsbistreamBase::bplen_n() { return _bplen_n; } 00156 00157 inline 00158 void DCFsbistreamBase::enctype( const int enctype ) { _enctype = enctype; } 00159 00160 inline 00161 int DCFsbistreamBase::enctype() { return _enctype; } 00162 00163 inline 00164 void DCFsbistreamBase::encsizeb( const int encsizeb ) { _encsizeb = encsizeb; } 00165 00166 inline 00167 int DCFsbistreamBase::encsizeb() { return _encsizeb; } 00168 00169 inline 00170 void DCFsbistreamBase::finalstep( const int finalstep ) 00171 { 00172 _finalstep = finalstep; 00173 } 00174 00175 inline 00176 int DCFsbistreamBase::finalstep() { return _finalstep; } 00177 00178 inline 00179 void DCFsbistreamBase::in() { open(); } 00180 00181 inline 00182 bool DCFsbistreamBase::isopen() { return (*_is).good(); } 00183 00184 #endif 00185
1.3.6