Main Page | Class Hierarchy | Alphabetical List | Data Structures | File List | Data Fields | Globals

MCFheader Class Reference

#include <MCFheader.h>

Collaboration diagram for MCFheader:

Collaboration graph
[legend]

Public Member Functions

int author ()
MCFheadercopy (const MCFTPheader &rhs)
MCFheadercopy (const MCFheader &rhs)
string & descript ()
int descriptsize ()
bool is_equal (const MCFheader &rhs)
 MCFheader (const MCFheader &rhs)
 MCFheader (const MCFTPheader &rhs)
 MCFheader ()
int mcfsizeb ()
bool operator!= (const MCFheader &rhs)
MCFheaderoperator() (const MCFTPheader &)
MCFheaderoperator() (const MCFheader &)
MCFheaderoperator() ()
MCFheaderoperator<< (istream &)
MCFheaderoperator<< (BufferBase &)
MCFheaderoperator= (const MCFTPheader &rhs)
MCFheaderoperator= (const MCFheader &rhs)
bool operator== (const MCFheader &rhs)
MCFheaderoperator>> (ostream &)
MCFheaderoperator>> (BufferBase &)
void read (ostream &)
void read (BufferBase &)
int release ()
void report (ostream &=cout)
int revision ()
void set_author (int author)
void set_descript (char *descript)
void set_descript (string &descript)
void set_mcfsizeb (int mcfsizeb)
void set_release (int release)
void set_revision (int revision)
void set_tag (char *tag)
void set_tag (string &tag)
void set_version (int version)
int sizeb ()
string & tag ()
int version ()
void write (istream &)
void write (BufferBase &)

Protected Attributes

int _author
string _descript
int _mcfsizeb
int _release
int _revision
string _tag
int _version

Friends

class MCFTPheader
ostream & operator<< (ostream &, MCFheader &)
BufferBaseoperator<< (BufferBase &, MCFheader &)
istream & operator>> (istream &, MCFheader &)
BufferBaseoperator>> (BufferBase &, MCFheader &)

Constructor & Destructor Documentation

MCFheader::MCFheader  ) 
 

Definition at line 99 of file MCFheader.h.

00100   : _tag("MCF_____"), _mcfsizeb(0), 
00101     _version(0), _revision(2), _release(0),
00102     _author(0), _descript("")
00103 {}

MCFheader::MCFheader const MCFTPheader rhs  ) 
 

Definition at line 106 of file MCFheader.h.

00107   : _tag(rhs._tag), _mcfsizeb(rhs._mcftpsizeb), 
00108     _version(rhs._version), _revision(rhs._revision), _release(rhs._release),
00109     _author(rhs._author), _descript(rhs._descript)
00110 {}

MCFheader::MCFheader const MCFheader rhs  ) 
 

Definition at line 113 of file MCFheader.h.

00114   : _tag(rhs._tag), _mcfsizeb(rhs._mcfsizeb), 
00115     _version(rhs._version), _revision(rhs._revision), _release(rhs._release),
00116     _author(rhs._author), _descript(rhs._descript)
00117 {}


Member Function Documentation

int MCFheader::author  ) 
 

Definition at line 208 of file MCFheader.h.

00208 { return _author; }

MCFheader & MCFheader::copy const MCFTPheader rhs  ) 
 

Definition at line 71 of file MCFheader.cpp.

References MCFTPheader._author, MCFTPheader._descript, _mcfsizeb, MCFTPheader._mcftpsizeb, MCFTPheader._release, MCFTPheader._revision, MCFTPheader._tag, _tag, and MCFTPheader._version.

00072 {
00073    _tag = rhs._tag;
00074    _mcfsizeb = rhs._mcftpsizeb;
00075    _version = rhs._version;
00076    _revision = rhs._revision;
00077    _release = rhs._release;
00078    _author = rhs._author;
00079    _descript = rhs._descript;
00080    return *this;
00081 }

MCFheader & MCFheader::copy const MCFheader rhs  ) 
 

Definition at line 57 of file MCFheader.cpp.

References _author, _descript, _mcfsizeb, _release, _revision, _tag, and _version.

Referenced by operator=().

00058 {
00059    if ( this != &rhs ) {
00060       _tag = rhs._tag;
00061       _mcfsizeb = rhs._mcfsizeb;
00062       _version = rhs._version;
00063       _revision = rhs._revision;
00064       _release = rhs._release;
00065       _author = rhs._author;
00066       _descript = rhs._descript;
00067    }
00068    return *this;
00069 }

string & MCFheader::descript  ) 
 

Definition at line 214 of file MCFheader.h.

00214 { return _descript; }

int MCFheader.descriptsize  ) 
 

Referenced by write().

bool MCFheader::is_equal const MCFheader rhs  ) 
 

Definition at line 83 of file MCFheader.cpp.

References _author, _descript, _mcfsizeb, _release, _revision, _tag, and _version.

Referenced by operator!=(), and operator==().

00084 {
00085    if ( this != &rhs ) {
00086       if ( _tag != rhs._tag ) return false;
00087       if ( _mcfsizeb != rhs._mcfsizeb ) return false;
00088       if ( _version != rhs._version ) return false;
00089       if ( _revision != rhs._revision ) return false;
00090       if ( _release != rhs._release ) return false;
00091       if ( _author != rhs._author ) return false;
00092       if ( _descript != rhs._descript ) return false;
00093    }
00094    return true;
00095 }

int MCFheader::mcfsizeb  ) 
 

Definition at line 196 of file MCFheader.h.

References _mcfsizeb.

00196 { return _mcfsizeb; }

bool MCFheader::operator!= const MCFheader rhs  ) 
 

Definition at line 135 of file MCFheader.h.

References is_equal().

00135 { return !is_equal(rhs); }

MCFheader & MCFheader::operator() const MCFTPheader  ) 
 

Definition at line 32 of file MCFheader.cpp.

References MCFTPheader._author, MCFTPheader._descript, _mcfsizeb, MCFTPheader._mcftpsizeb, MCFTPheader._release, MCFTPheader._revision, _tag, and MCFTPheader._version.

00033 {
00034 //   _tag = header._tag;
00035    _tag = "MCF_____";
00036    _mcfsizeb = header._mcftpsizeb;
00037    _version = header._version;
00038    _revision = header._revision;
00039    _release = header._release;
00040    _author = header._author;
00041    _descript = header._descript;
00042    return *this;
00043 }

MCFheader & MCFheader::operator() const MCFheader  ) 
 

Definition at line 45 of file MCFheader.cpp.

References _author, _descript, _mcfsizeb, _release, _revision, _tag, and _version.

00046 {
00047    _tag = header._tag;
00048    _mcfsizeb = header._mcfsizeb;
00049    _version = header._version;
00050    _revision = header._revision;
00051    _release = header._release;
00052    _author = header._author;
00053    _descript = header._descript;
00054    return *this;
00055 }

MCFheader & MCFheader::operator()  ) 
 

Definition at line 20 of file MCFheader.cpp.

References _mcfsizeb, and _tag.

00021 {
00022    _tag = "MCF_____";
00023    _mcfsizeb = 0;
00024    _version = 0;
00025    _revision = 2;
00026    _release = 0;
00027    _author = 0;
00028    _descript = "";
00029    return *this;
00030 }

MCFheader & MCFheader::operator<< istream &   ) 
 

Definition at line 152 of file MCFheader.h.

References write().

00153 {
00154    write(is);
00155    return *this;
00156 }

MCFheader & MCFheader::operator<< BufferBase  ) 
 

Definition at line 138 of file MCFheader.h.

References write().

00139 {
00140    write(buffer);
00141    return *this;
00142 }

MCFheader & MCFheader::operator= const MCFTPheader rhs  ) 
 

Definition at line 126 of file MCFheader.h.

References copy().

00127 { 
00128    return copy(rhs);
00129 }

MCFheader & MCFheader::operator= const MCFheader rhs  ) 
 

Definition at line 120 of file MCFheader.h.

References copy().

00121 { 
00122    return copy(rhs);
00123 }

bool MCFheader::operator== const MCFheader rhs  ) 
 

Definition at line 132 of file MCFheader.h.

References is_equal().

00132 { return is_equal(rhs); }

MCFheader & MCFheader::operator>> ostream &   ) 
 

Definition at line 159 of file MCFheader.h.

References read().

00160 {
00161    read(os);
00162    return *this;
00163 }

MCFheader & MCFheader::operator>> BufferBase  ) 
 

Definition at line 145 of file MCFheader.h.

References read().

00146 {
00147    read(buffer);
00148    return *this;
00149 }

void MCFheader::read ostream &   ) 
 

Definition at line 140 of file MCFheader.cpp.

References _mcfsizeb, and _tag.

00141 {
00142    bytepack bp;
00143    for( int i = 0; i < 8; ++i ) os.put( _tag[i] );
00144    os << bp( _mcfsizeb, 4 );
00145    os << bp( _version, 1 );
00146    os << bp( _revision, 1 );
00147    os << bp( _release, 1 );
00148    os << bp( _author, 1 );
00149    os << bp( int(_descript.size()), 1 );
00150    for(unsigned int i = 0; i < _descript.size(); ++i ) os.put(_descript[i]);
00151 }

void MCFheader::read BufferBase  ) 
 

Definition at line 112 of file MCFheader.cpp.

References _mcfsizeb, _tag, and BufferBase.put().

Referenced by operator<<(), and operator>>().

00113 {
00114    bytepack bp;
00115    for( int i = 0; i < 8; ++i ) buffer.put( _tag[i] );
00116    buffer << bp( _mcfsizeb, 4 );
00117    buffer << bp( _version, 1 );
00118    buffer << bp( _revision, 1 );
00119    buffer << bp( _release, 1 );
00120    buffer << bp( _author, 1 );
00121    buffer << bp( int(_descript.size()), 1 );
00122    for(unsigned int i = 0; i < _descript.size(); ++i) buffer.put(_descript[i]);
00123 }

int MCFheader::release  ) 
 

Definition at line 205 of file MCFheader.h.

00205 { return _release; }

void MCFheader::report ostream &  = cout  ) 
 

Definition at line 153 of file MCFheader.cpp.

References _mcfsizeb, and _tag.

00154 {
00155    os << "MCFheader::report(){:\n";
00156    os << "tag = |" << _tag << "|\n";
00157    os << "mcfsizeb = " << _mcfsizeb << '\n';
00158    os << "version = " << _version << '\n';
00159    os << "revision = " << _revision << '\n';
00160    os << "release = " << _release << '\n';
00161    os << "author = " << _author << '\n';
00162    os << "descript.size() = " << _descript.size() << '\n';
00163    os << "descript = |" << _descript << "|\n";
00164    os << "}\n";
00165 }

int MCFheader::revision  ) 
 

Definition at line 202 of file MCFheader.h.

00202 { return _revision; }

void MCFheader::set_author int  author  ) 
 

Definition at line 184 of file MCFheader.h.

00184 { _author = author; }

void MCFheader::set_descript char *  descript  ) 
 

Definition at line 190 of file MCFheader.h.

00190 { _descript = descript; }

void MCFheader::set_descript string &  descript  ) 
 

Definition at line 187 of file MCFheader.h.

00187 { _descript = descript; }

void MCFheader::set_mcfsizeb int  mcfsizeb  ) 
 

Definition at line 172 of file MCFheader.h.

References _mcfsizeb.

Referenced by MCFsb.read().

00172 { _mcfsizeb = mcfsizeb; }

void MCFheader::set_release int  release  ) 
 

Definition at line 181 of file MCFheader.h.

00181 { _release = release; }

void MCFheader::set_revision int  revision  ) 
 

Definition at line 178 of file MCFheader.h.

00178 { _revision = revision; }

void MCFheader::set_tag char *  tag  ) 
 

Definition at line 169 of file MCFheader.h.

References _tag.

00169 { _tag = tag; }

void MCFheader::set_tag string &  tag  ) 
 

Definition at line 166 of file MCFheader.h.

References _tag.

00166 { _tag = tag; }

void MCFheader::set_version int  version  ) 
 

Definition at line 175 of file MCFheader.h.

00175 { _version = version; }

int MCFheader::sizeb  ) 
 

Definition at line 217 of file MCFheader.h.

Referenced by MCFsb.mcfsizeb().

00217 { return 17 + _descript.size(); }

string & MCFheader::tag  ) 
 

Definition at line 193 of file MCFheader.h.

References _tag.

00193 { return _tag; }

int MCFheader::version  ) 
 

Definition at line 199 of file MCFheader.h.

00199 { return _version; }

void MCFheader::write istream &   ) 
 

Definition at line 125 of file MCFheader.cpp.

References _mcfsizeb, _tag, and descriptsize().

00126 {
00127    bytepack bp;
00128    _tag = "";
00129    for( int i = 0; i < 8; ++i ) _tag += is.get();
00130    is >> bp( 0, 4 ); _mcfsizeb = int(bp);
00131    is >> bp( 0, 1 ); _version = int(bp);
00132    is >> bp( 0, 1 ); _revision = int(bp);
00133    is >> bp( 0, 1 ); _release = int(bp);
00134    is >> bp( 0, 1 ); _author = int(bp);
00135    is >> bp( 0, 1 ); int descriptsize = int(bp);
00136    _descript = "";
00137    for( int i = 0; i < descriptsize; ++i ) _descript += is.get();
00138 }

void MCFheader::write BufferBase  ) 
 

Definition at line 97 of file MCFheader.cpp.

References _mcfsizeb, _tag, descriptsize(), and BufferBase.get().

Referenced by operator<<(), and operator>>().

00098 {
00099    bytepack bp;
00100    _tag = "";
00101    for( int i = 0; i < 8; ++i ) _tag += buffer.get();
00102    buffer >> bp( 0, 4 ); _mcfsizeb = int(bp);
00103    buffer >> bp( 0, 1 ); _version = int(bp);
00104    buffer >> bp( 0, 1 ); _revision = int(bp);
00105    buffer >> bp( 0, 1 ); _release = int(bp);
00106    buffer >> bp( 0, 1 ); _author = int(bp);
00107    buffer >> bp( 0, 1 ); int descriptsize = int(bp);
00108    _descript = "";
00109    for( int i = 0; i < descriptsize; ++i ) _descript += buffer.get();
00110 }


Friends And Related Function Documentation

friend class MCFTPheader [friend]
 

Definition at line 86 of file MCFheader.h.

ostream& operator<< ostream &  os,
MCFheader header
[friend]
 

Definition at line 181 of file MCFheader.cpp.

00182 {
00183    header.read(os);
00184    return os;
00185 }

BufferBase& operator<< BufferBase buffer,
MCFheader header
[friend]
 

Definition at line 169 of file MCFheader.cpp.

00170 {
00171    header.read(buffer);
00172    return buffer;
00173 }

istream& operator>> istream &  is,
MCFheader header
[friend]
 

Definition at line 187 of file MCFheader.cpp.

00188 {
00189    header.write(is);
00190    return is;
00191 }

BufferBase& operator>> BufferBase buffer,
MCFheader header
[friend]
 

Definition at line 175 of file MCFheader.cpp.

00176 {
00177    header.write(buffer);
00178    return buffer;
00179 }


Field Documentation

int MCFheader._author [protected]
 

Definition at line 83 of file MCFheader.h.

Referenced by MCFTPheader.copy(), copy(), is_equal(), MCFTPheader.operator()(), and operator()().

string MCFheader._descript [protected]
 

Definition at line 84 of file MCFheader.h.

Referenced by MCFTPheader.copy(), copy(), is_equal(), MCFTPheader.operator()(), and operator()().

int MCFheader._mcfsizeb [protected]
 

Definition at line 79 of file MCFheader.h.

Referenced by MCFTPheader.copy(), copy(), is_equal(), mcfsizeb(), operator()(), read(), report(), set_mcfsizeb(), and write().

int MCFheader._release [protected]
 

Definition at line 82 of file MCFheader.h.

Referenced by MCFTPheader.copy(), copy(), is_equal(), MCFTPheader.operator()(), and operator()().

int MCFheader._revision [protected]
 

Definition at line 81 of file MCFheader.h.

Referenced by MCFTPheader.copy(), copy(), is_equal(), MCFTPheader.operator()(), and operator()().

string MCFheader._tag [protected]
 

Definition at line 78 of file MCFheader.h.

Referenced by MCFTPheader.copy(), copy(), is_equal(), MCFTPheader.operator()(), operator()(), read(), report(), set_tag(), tag(), and write().

int MCFheader._version [protected]
 

Definition at line 80 of file MCFheader.h.

Referenced by MCFTPheader.copy(), copy(), is_equal(), MCFTPheader.operator()(), and operator()().


The documentation for this class was generated from the following files:
Generated on Mon May 31 21:41:10 2004 for SR2k4 Assembler by doxygen 1.3.6