86 void init(
int length_,
bool init_value =
false );
88 void assign_from_string(
const std::string& );
101 : m_len( 0 ), m_size( 0 ), m_data( 0 )
106 : m_len( 0 ), m_size( 0 ), m_data( 0 )
107 { init( length_, a ); }
115 : m_len( 0 ), m_size( 0 ), m_data( 0 )
116 { init( a.
back_cast().length() ); base_type::assign_( a ); }
120 #ifdef SC_DT_DEPRECATED 123 : m_len( 0 ), m_size( 0 ), m_data( 0 )
124 { init( a.
length() ); base_type::assign_( a ); }
127 : m_len( 0 ), m_size( 0 ), m_data( 0 )
128 { init( a.
length() ); base_type::assign_( a ); }
131 : m_len( 0 ), m_size( 0 ), m_data( 0 )
132 { init( a.
length() ); base_type::assign_( a ); }
135 : m_len( 0 ), m_size( 0 ), m_data( 0 )
136 { init( a.
length() ); base_type::assign_( a ); }
144 {
delete [] m_data; }
159 { base_type::assign_( a );
return *
this; }
162 { base_type::assign_( a );
return *
this; }
165 { base_type::assign_( a );
return *
this; }
168 { base_type::assign_( a );
return *
this; }
171 { base_type::assign_( a );
return *
this; }
174 { base_type::assign_( a );
return *
this; }
177 { base_type::assign_( a );
return *
this; }
180 { base_type::assign_( a );
return *
this; }
183 { base_type::assign_( a );
return *
this; }
186 { base_type::assign_( a );
return *
this; }
189 { base_type::assign_( a );
return *
this; }
192 { base_type::assign_( a );
return *
this; }
203 value_type get_bit(
int i )
const;
204 void set_bit(
int i, value_type
value );
207 {
return m_data[i]; }
215 void set_cword(
int i,
sc_digit w );
280 m_data[wi] &= value << bi | ~mask;
sc_bv_base(const sc_proxy< X > &a)
void set_bit(int i, value_type value)
void set_word(int i, sc_digit w)
Arbitrary precision signed number.
const sc_digit SC_DIGIT_ONE
Base class template for bit/logic vector classes.
Arbitrary precision unsigned number.
value_type get_bit(int i) const
const sc_lv_base lrotate(const sc_proxy< X > &x, int n)
Arbitrary size logic vector base class.
#define SC_REPORT_WARNING(msg_type, msg)
sc_clock period is zero sc_clock low time is zero sc_fifo< T > cannot have more than one writer bind interface to port failed complete binding failed remove port failed insert primitive channel failed sc_signal< T > cannot have more than one driver resolved port not bound to resolved signal sc_semaphore requires an initial value
base_type::value_type value_type
Report ids for the datatypes/bit code.
const sc_digit SC_DIGIT_ZERO
sc_bv_base(int length_=sc_length_param().len())
sc_bv_base(bool a, int length_=sc_length_param().len())
sc_digit get_word(int i) const
void assign_p_(sc_proxy< X > &px, const sc_proxy< Y > &py)
Proxy classes for vector data types.
const sc_lv_base rrotate(const sc_proxy< X > &x, int n)
sc_digit get_cword(int) const
sc_proxy< sc_bv_base > base_type
Arbitrary size bit vector base class.
void set_cword(int i, sc_digit w)
Proxy base class for vector data types.