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

MRAmlevel Class Reference

#include <MRAmlevel.h>

Collaboration diagram for MRAmlevel:

Collaboration graph
[legend]

Public Member Functions

MRAmlevelcopy (int m)
MRAmlevelcopy (const MRAmlevel &)
int dim ()
bool is_equal (const MRAmlevel &rhs)
 MRAmlevel (int dim=0)
 MRAmlevel (const MRAmlevel &)
bool operator!= (const MRAmlevel &rhs)
MRAmleveloperator() (int dim=0)
MRAmleveloperator() (const MRAmlevel &)
MRAmlevel operator+ (int)
MRAmleveloperator+= (int)
MRAmlevel operator- (int)
MRAmleveloperator-= (int)
MRAmleveloperator<< (BufferBase &)
MRAmleveloperator= (int m)
MRAmleveloperator= (const MRAmlevel &)
bool operator== (const MRAmlevel &rhs)
MRAmleveloperator>> (BufferBase &)
intoperator[] (int d)
void read (ostream &)
void read (BufferBase &)
void report (ostream &os=cout)
void set_dim (int)
int sizeb ()
void write (istream &)
void write (BufferBase &)

Static Public Attributes

const int mmax_limit = 31
const int mmin_limit = 0

Private Attributes

int _dim
int _m [MRA_MAXDIM]

Friends

class MRAmrange
ostream & operator<< (ostream &, MRAmlevel &)
BufferBaseoperator<< (BufferBase &, MRAmlevel &)
istream & operator>> (istream &, MRAmlevel &)
BufferBaseoperator>> (BufferBase &, MRAmlevel &)

Constructor & Destructor Documentation

MRAmlevel::MRAmlevel const MRAmlevel  ) 
 

Definition at line 86 of file MRAmlevel.h.

References _dim, and _m.

00087   : _dim(mlevel._dim)
00088 {
00089    for( int d = 0; d < _dim; ++d ) _m[d] = mlevel._m[d];
00090 }

MRAmlevel::MRAmlevel int  dim = 0  ) 
 

Definition at line 83 of file MRAmlevel.h.

00083 : _dim(dim) {}


Member Function Documentation

MRAmlevel & MRAmlevel::copy int  m  ) 
 

Definition at line 101 of file MRAmlevel.h.

References _dim, and _m.

00102 {
00103    for( int d = 0; d < _dim; ++d ) _m[d] = m;
00104    return *this;
00105 }

MRAmlevel & MRAmlevel::copy const MRAmlevel  ) 
 

Definition at line 93 of file MRAmlevel.h.

References _dim, and _m.

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

00094 {
00095    _dim = mlevel._dim;
00096    for( int d = 0; d < _dim; ++d ) _m[d] = mlevel._m[d];
00097    return *this;
00098 }

int MRAmlevel::dim  ) 
 

Definition at line 188 of file MRAmlevel.h.

References _dim.

Referenced by MRAsbObject.set_mpart().

00188 { return _dim; }

bool MRAmlevel::is_equal const MRAmlevel rhs  ) 
 

Definition at line 130 of file MRAmlevel.h.

References _dim, and _m.

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

00131 {
00132    if ( _dim != rhs._dim ) return false;
00133    for( int d = 0; d < _dim; ++d ) 
00134       if ( _m[d] != rhs._m[d] ) return false;
00135    return true;
00136 }

bool MRAmlevel::operator!= const MRAmlevel rhs  ) 
 

Definition at line 142 of file MRAmlevel.h.

References is_equal().

00142 { return !is_equal(rhs); }

MRAmlevel & MRAmlevel::operator() int  dim = 0  ) 
 

Definition at line 120 of file MRAmlevel.h.

References _dim.

00121 { 
00122    _dim = dim;
00123    return *this;
00124 }

MRAmlevel & MRAmlevel::operator() const MRAmlevel  ) 
 

Definition at line 114 of file MRAmlevel.h.

References copy().

00115 { 
00116    return copy(mlevel); 
00117 }

MRAmlevel MRAmlevel::operator+ int   ) 
 

Definition at line 145 of file MRAmlevel.h.

00146 {
00147    MRAmlevel mlevel(*this);
00148    mlevel += m;
00149    return mlevel;
00150 }

MRAmlevel & MRAmlevel::operator+= int   ) 
 

Definition at line 153 of file MRAmlevel.h.

References _dim, and _m.

00154 {
00155    for( int d = 0; d < _dim; ++d ) _m[d] += m;
00156    return *this;
00157 }

MRAmlevel MRAmlevel::operator- int   ) 
 

Definition at line 160 of file MRAmlevel.h.

00161 {
00162    MRAmlevel mlevel(*this);
00163    mlevel -= m;
00164    return mlevel;
00165 }

MRAmlevel & MRAmlevel::operator-= int   ) 
 

Definition at line 168 of file MRAmlevel.h.

References _dim, and _m.

00169 {
00170    for( int d = 0; d < _dim; ++d ) _m[d] -= m;
00171    return *this;
00172 }

MRAmlevel & MRAmlevel::operator<< BufferBase  ) 
 

Definition at line 203 of file MRAmlevel.h.

References write().

00204 {
00205    write(buffer);
00206    return *this;
00207 }

MRAmlevel & MRAmlevel::operator= int  m  ) 
 

Definition at line 111 of file MRAmlevel.h.

References copy().

00111 { return copy(rhs); }

MRAmlevel & MRAmlevel::operator= const MRAmlevel  ) 
 

Definition at line 108 of file MRAmlevel.h.

References copy().

00108 { return copy(rhs); }

bool MRAmlevel::operator== const MRAmlevel rhs  ) 
 

Definition at line 139 of file MRAmlevel.h.

References is_equal().

00139 { return is_equal(rhs); }

MRAmlevel & MRAmlevel::operator>> BufferBase  ) 
 

Definition at line 217 of file MRAmlevel.h.

References read().

00218 {
00219    read(buffer);
00220    return *this;
00221 }

int & MRAmlevel::operator[] int  d  ) 
 

Definition at line 127 of file MRAmlevel.h.

References _m.

00127 { return _m[d]; }

void MRAmlevel::read ostream &   ) 
 

Definition at line 233 of file MRAmlevel.h.

References _dim, and _m.

00234 {
00235    bytepack bp;
00236    for( int d = 0; d < _dim; ++d ) os << bp( _m[d], 1 );
00237 }

void MRAmlevel::read BufferBase  ) 
 

Definition at line 210 of file MRAmlevel.h.

References _dim, and _m.

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

00211 {
00212    bytepack bp;
00213    for( int d = 0; d < _dim; ++d ) buffer << bp( _m[d], 1 );
00214 }

void MRAmlevel::report ostream &  os = cout  ) 
 

Definition at line 175 of file MRAmlevel.h.

References _dim, and _m.

Referenced by MRAsbObject.check_mpart().

00175                                     {
00176    os << "MRAmlevel::report(){\n";
00177    os << "dim = " << _dim << '\n';
00178    for( int d = 0; d < _dim; ++d ) {
00179        os << "m[] = " << _m[d] << '\n';
00180    }
00181    os << "}\n";
00182 }

void MRAmlevel::set_dim int   ) 
 

Definition at line 185 of file MRAmlevel.h.

References _dim.

00185 { _dim = dim; }

int MRAmlevel::sizeb  ) 
 

Definition at line 191 of file MRAmlevel.h.

References _dim.

Referenced by MRAmrange.sizeb().

00191 { return _dim; }

void MRAmlevel::write istream &   ) 
 

Definition at line 224 of file MRAmlevel.h.

References _dim, and _m.

00225 {
00226    bytepack bp;
00227    for( int d = 0; d < _dim; ++d ) {
00228       is >> bp( 0, 1 ); _m[d] = int(bp);
00229    }
00230 }

void MRAmlevel::write BufferBase  ) 
 

Definition at line 194 of file MRAmlevel.h.

References _dim, and _m.

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

00195 {
00196    bytepack bp;
00197    for( int d = 0; d < _dim; ++d ) {
00198       buffer >> bp( 0, 1 ); _m[d] = int(bp);
00199    }
00200 }


Friends And Related Function Documentation

friend class MRAmrange [friend]
 

Definition at line 73 of file MRAmlevel.h.

ostream& operator<< ostream &  os,
MRAmlevel mlevel
[friend]
 

Definition at line 263 of file MRAmlevel.h.

00264 {
00265    mlevel.read(os);
00266    return os;
00267 }

BufferBase& operator<< BufferBase buffer,
MRAmlevel mlevel
[friend]
 

Definition at line 249 of file MRAmlevel.h.

00250 {
00251    mlevel.read(buffer);
00252    return buffer;
00253 }

istream& operator>> istream &  is,
MRAmlevel mlevel
[friend]
 

Definition at line 256 of file MRAmlevel.h.

00257 {
00258    mlevel.write(is);
00259    return is;
00260 }

BufferBase& operator>> BufferBase buffer,
MRAmlevel mlevel
[friend]
 

Definition at line 242 of file MRAmlevel.h.

00243 {
00244    mlevel.write(buffer);
00245    return buffer;
00246 }


Field Documentation

int MRAmlevel._dim [private]
 

Definition at line 70 of file MRAmlevel.h.

Referenced by copy(), dim(), is_equal(), MRAmlevel(), MRAmrange.MRAmrange(), MRAmrange.operator()(), operator()(), operator+=(), operator-=(), read(), report(), set_dim(), sizeb(), and write().

int MRAmlevel._m[MRA_MAXDIM] [private]
 

Definition at line 71 of file MRAmlevel.h.

Referenced by copy(), is_equal(), MRAmlevel(), operator+=(), operator-=(), operator[](), read(), report(), and write().

const int MRAmlevel.mmax_limit = 31 [static]
 

Definition at line 28 of file MRAmlevel.h.

const int MRAmlevel.mmin_limit = 0 [static]
 

Definition at line 27 of file MRAmlevel.h.


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