00001 // MRAsb.h 00002 ////////////////////////////////////////////////////////////////////// 00003 // (c) Copyright 2002 Brown Deer Technology, LLC. 00004 // All rights reserved. 00005 ////////////////////////////////////////////////////////////////////// 00006 00007 #ifndef MRASB_H 00008 #define MRASB_H 00009 00010 #ifdef USE_STD 00011 #include <iostream> 00012 using namespace std; 00013 #else 00014 #include <iostream.h> 00015 #endif 00016 00017 #include "Buffer.h" 00018 #include "MRAmrange.h" 00019 #include "MRAsbBase.h" 00020 00021 class MRAsb : public MRAsbBase 00022 { 00023 public: 00024 00025 string isa() const { return "MRAsb"; } 00026 00027 MRAsb(); 00028 MRAsb( const MRAsb& ); 00029 MRAsb( const MRAsbBase& ); 00030 MRAsb( const MRAmpEncode& ); 00031 00032 ~MRAsb() {} 00033 00034 const char* c_str(); 00035 }; 00036 00037 inline 00038 MRAsb::MRAsb() : MRAsbBase( new Buffer ) {} 00039 00040 inline 00041 MRAsb::MRAsb( const MRAsbBase& sb ) : MRAsbBase( sb, new Buffer ) {} 00042 00043 inline 00044 MRAsb::MRAsb( const MRAsb& sb ) 00045 : MRAsbBase(sb, new Buffer( *dynamic_cast<Buffer*>(sb._ptbuffer) ) ) 00046 {} 00047 00048 inline 00049 MRAsb::MRAsb( const MRAmpEncode& mpenc ) : MRAsbBase( mpenc, new Buffer ) {} 00050 00051 inline 00052 const char* MRAsb::c_str() { return dynamic_cast<Buffer*>(_ptbuffer)->c_str(); } 00053 00054 #endif 00055
1.3.6