Lines Matching defs:sc_lv_base

22   sc_lv_base.h -- Arbitrary size logic vector class.
41 // $Log: sc_lv_base.h,v $
78 class sc_lv_base;
82 // CLASS : sc_lv_base
87 class sc_lv_base
88 : public sc_proxy<sc_lv_base>
101 typedef sc_proxy<sc_lv_base> base_type;
106 explicit sc_lv_base( int length_ = sc_length_param().len() )
110 explicit sc_lv_base( const sc_logic& a,
115 sc_lv_base( const char* a );
117 sc_lv_base( const char* a, int length_ );
120 sc_lv_base( const sc_proxy<X>& a )
124 sc_lv_base( const sc_lv_base& a );
128 explicit sc_lv_base( const sc_unsigned& a )
132 explicit sc_lv_base( const sc_signed& a )
136 explicit sc_lv_base( const sc_uint_base& a )
140 explicit sc_lv_base( const sc_int_base& a )
149 virtual ~sc_lv_base()
156 sc_lv_base& operator = ( const sc_proxy<X>& a )
159 sc_lv_base& operator = ( const sc_lv_base& a )
162 sc_lv_base& operator = ( const char* a );
164 sc_lv_base& operator = ( const bool* a )
167 sc_lv_base& operator = ( const sc_logic* a )
170 sc_lv_base& operator = ( const sc_unsigned& a )
173 sc_lv_base& operator = ( const sc_signed& a )
176 sc_lv_base& operator = ( const sc_uint_base& a )
179 sc_lv_base& operator = ( const sc_int_base& a )
182 sc_lv_base& operator = ( unsigned long a )
185 sc_lv_base& operator = ( long a )
188 sc_lv_base& operator = ( unsigned int a )
191 sc_lv_base& operator = ( int a )
194 sc_lv_base& operator = ( uint64 a )
197 sc_lv_base& operator = ( int64 a )
205 sc_lv_base& b_not()
206 { return sc_proxy<sc_lv_base>::b_not(); }
208 const sc_lv_base operator ~ () const
209 { sc_lv_base a( *this ); return a.b_not(); }
214 sc_lv_base& operator <<= ( int n )
215 { return sc_proxy<sc_lv_base>::operator <<= ( n ); }
217 const sc_lv_base operator << ( int n ) const
218 { sc_lv_base a( *this ); return ( a <<= n ); }
223 sc_lv_base& operator >>= ( int n )
224 { return sc_proxy<sc_lv_base>::operator >>= ( n ); }
226 const sc_lv_base operator >> ( int n ) const
227 { sc_lv_base a( *this ); return ( a >>= n ); }
232 sc_lv_base& lrotate( int n )
233 { return sc_proxy<sc_lv_base>::lrotate( n ); }
238 sc_lv_base& rrotate( int n )
239 { return sc_proxy<sc_lv_base>::rrotate( n ); }
295 const sc_lv_base
296 lrotate( const sc_lv_base& x, int n )
298 sc_lv_base a( x );
306 const sc_lv_base
307 rrotate( const sc_lv_base& x, int n )
309 sc_lv_base a( x );
318 sc_lv_base::get_bit( int i ) const
328 sc_lv_base::set_bit( int i, sc_logic_value_t value )
342 sc_lv_base::clean_tail()
368 const sc_lv_base
371 sc_lv_base a( back_cast() );
384 sc_lv_base a( x.length() );
397 sc_lv_base a( x.length() ); \
417 const sc_lv_base
420 sc_lv_base a( px.back_cast() );
428 const sc_lv_base \
431 sc_lv_base a( back_cast() ); \
455 const sc_lv_base \
486 sc_lv_base a( x.length() );
499 sc_lv_base a( x.length() ); \
519 const sc_lv_base
522 sc_lv_base a( px.back_cast() );
530 const sc_lv_base \
533 sc_lv_base a( back_cast() ); \
557 const sc_lv_base \
588 sc_lv_base a( x.length() );
601 sc_lv_base a( x.length() ); \
621 const sc_lv_base
624 sc_lv_base a( px.back_cast() );
632 const sc_lv_base \
635 sc_lv_base a( back_cast() ); \
659 const sc_lv_base \
686 const sc_lv_base
689 sc_lv_base a( back_cast().length()+n );
699 const sc_lv_base
702 sc_lv_base a( back_cast() );
725 sc_lv_base a( x << n );
726 sc_lv_base b( x >> (len - n) );
738 const sc_lv_base
741 sc_lv_base a( x.back_cast() );
764 sc_lv_base a( x >> n );
765 sc_lv_base b( x << (len - n) );
777 const sc_lv_base
780 sc_lv_base a( x.back_cast() );
789 const sc_lv_base
792 sc_lv_base a( x.back_cast() );
829 sc_lv_base y( x.length() ); \
861 sc_concref_r<sc_bitref_r<T>,sc_lv_base>
864 return sc_concref_r<sc_bitref_r<T>,sc_lv_base>(
865 *a.clone(), *new sc_lv_base( b ), 3 );
870 sc_concref_r<sc_lv_base,sc_bitref_r<T> >
873 return sc_concref_r<sc_lv_base,sc_bitref_r<T> >(
874 *new sc_lv_base( a ), *b.clone(), 3 );
879 sc_concref_r<sc_bitref_r<T>,sc_lv_base>
882 return sc_concref_r<sc_bitref_r<T>,sc_lv_base>(
883 *a.clone(), *new sc_lv_base( b, 1 ), 3 );
888 sc_concref_r<sc_lv_base,sc_bitref_r<T> >
891 return sc_concref_r<sc_lv_base,sc_bitref_r<T> >(
892 *new sc_lv_base( a, 1 ), *b.clone(), 3 );
916 sc_concref_r<sc_bitref_r<T>,sc_lv_base>
919 return sc_concref_r<sc_bitref_r<T>,sc_lv_base>(
920 *a.clone(), *new sc_lv_base( b ), 3 );
925 sc_concref_r<sc_lv_base,sc_bitref_r<T> >
928 return sc_concref_r<sc_lv_base,sc_bitref_r<T> >(
929 *new sc_lv_base( a ), *b.clone(), 3 );
934 sc_concref_r<sc_bitref_r<T>,sc_lv_base>
937 return sc_concref_r<sc_bitref_r<T>,sc_lv_base>(
938 *a.clone(), *new sc_lv_base( b, 1 ), 3 );
943 sc_concref_r<sc_lv_base,sc_bitref_r<T> >
946 return sc_concref_r<sc_lv_base,sc_bitref_r<T> >(
947 *new sc_lv_base( a, 1 ), *b.clone(), 3 );
973 sc_concref_r<sc_bitref_r<T>,sc_lv_base>
976 return sc_concref_r<sc_bitref_r<T>,sc_lv_base>(
977 *a.clone(), *new sc_lv_base( b ), 3 );
982 sc_concref_r<sc_lv_base,sc_bitref_r<T> >
985 return sc_concref_r<sc_lv_base,sc_bitref_r<T> >(
986 *new sc_lv_base( a ), *b.clone(), 3 );
991 sc_concref_r<sc_bitref_r<T>,sc_lv_base>
994 return sc_concref_r<sc_bitref_r<T>,sc_lv_base>(
995 *a.clone(), *new sc_lv_base( b, 1 ), 3 );
1000 sc_concref_r<sc_lv_base,sc_bitref_r<T> >
1003 return sc_concref_r<sc_lv_base,sc_bitref_r<T> >(
1004 *new sc_lv_base( a, 1 ), *b.clone(), 3 );
1028 sc_concref_r<sc_bitref_r<T>,sc_lv_base>
1031 return sc_concref_r<sc_bitref_r<T>,sc_lv_base>(
1032 *a.clone(), *new sc_lv_base( b ), 3 );
1037 sc_concref_r<sc_lv_base,sc_bitref_r<T> >
1040 return sc_concref_r<sc_lv_base,sc_bitref_r<T> >(
1041 *new sc_lv_base( a ), *b.clone(), 3 );
1046 sc_concref_r<sc_bitref_r<T>,sc_lv_base>
1049 return sc_concref_r<sc_bitref_r<T>,sc_lv_base>(
1050 *a.clone(), *new sc_lv_base( b, 1 ), 3 );
1055 sc_concref_r<sc_lv_base,sc_bitref_r<T> >
1058 return sc_concref_r<sc_lv_base,sc_bitref_r<T> >(
1059 *new sc_lv_base( a, 1 ), *b.clone(), 3 );
1093 sc_concref_r<sc_subref_r<T>,sc_lv_base>
1096 return sc_concref_r<sc_subref_r<T>,sc_lv_base>(
1097 *a.clone(), *new sc_lv_base( b ), 3 );
1102 sc_concref_r<sc_lv_base,sc_subref_r<T> >
1105 return sc_concref_r<sc_lv_base,sc_subref_r<T> >(
1106 *new sc_lv_base( a ), *b.clone(), 3 );
1111 sc_concref_r<sc_subref_r<T>,sc_lv_base>
1114 return sc_concref_r<sc_subref_r<T>,sc_lv_base>(
1115 *a.clone(), *new sc_lv_base( b, 1 ), 3 );
1120 sc_concref_r<sc_lv_base,sc_subref_r<T> >
1123 return sc_concref_r<sc_lv_base,sc_subref_r<T> >(
1124 *new sc_lv_base( a, 1 ), *b.clone(), 3 );
1148 sc_concref_r<sc_subref_r<T>,sc_lv_base>
1151 return sc_concref_r<sc_subref_r<T>,sc_lv_base>(
1152 *a.clone(), *new sc_lv_base( b ), 3 );
1157 sc_concref_r<sc_lv_base,sc_subref_r<T> >
1160 return sc_concref_r<sc_lv_base,sc_subref_r<T> >(
1161 *new sc_lv_base( a ), *b.clone(), 3 );
1166 sc_concref_r<sc_subref_r<T>,sc_lv_base>
1169 return sc_concref_r<sc_subref_r<T>,sc_lv_base>(
1170 *a.clone(), *new sc_lv_base( b, 1 ), 3 );
1175 sc_concref_r<sc_lv_base,sc_subref_r<T> >
1178 return sc_concref_r<sc_lv_base,sc_subref_r<T> >(
1179 *new sc_lv_base( a, 1 ), *b.clone(), 3 );
1205 sc_concref_r<sc_subref_r<T>,sc_lv_base>
1208 return sc_concref_r<sc_subref_r<T>,sc_lv_base>(
1209 *a.clone(), *new sc_lv_base( b ), 3 );
1214 sc_concref_r<sc_lv_base,sc_subref_r<T> >
1217 return sc_concref_r<sc_lv_base,sc_subref_r<T> >(
1218 *new sc_lv_base( a ), *b.clone(), 3 );
1223 sc_concref_r<sc_subref_r<T>,sc_lv_base>
1226 return sc_concref_r<sc_subref_r<T>,sc_lv_base>(
1227 *a.clone(), *new sc_lv_base( b, 1 ), 3 );
1232 sc_concref_r<sc_lv_base,sc_subref_r<T> >
1235 return sc_concref_r<sc_lv_base,sc_subref_r<T> >(
1236 *new sc_lv_base( a, 1 ), *b.clone(), 3 );
1260 sc_concref_r<sc_subref_r<T>,sc_lv_base>
1263 return sc_concref_r<sc_subref_r<T>,sc_lv_base>(
1264 *a.clone(), *new sc_lv_base( b ), 3 );
1269 sc_concref_r<sc_lv_base,sc_subref_r<T> >
1272 return sc_concref_r<sc_lv_base,sc_subref_r<T> >(
1273 *new sc_lv_base( a ), *b.clone(), 3 );
1278 sc_concref_r<sc_subref_r<T>,sc_lv_base>
1281 return sc_concref_r<sc_subref_r<T>,sc_lv_base>(
1282 *a.clone(), *new sc_lv_base( b, 1 ), 3 );
1287 sc_concref_r<sc_lv_base,sc_subref_r<T> >
1290 return sc_concref_r<sc_lv_base,sc_subref_r<T> >(
1291 *new sc_lv_base( a, 1 ), *b.clone(), 3 );
1326 sc_lv_base t( b ); // (partial) self assignment protection
1345 sc_lv_base t( b ); // (partial) self assignment protection
1370 sc_concref_r<sc_concref_r<T1,T2>,sc_lv_base>
1373 return sc_concref_r<sc_concref_r<T1,T2>,sc_lv_base>(
1374 *a.clone(), *new sc_lv_base( b ), 3 );
1379 sc_concref_r<sc_lv_base,sc_concref_r<T1,T2> >
1382 return sc_concref_r<sc_lv_base,sc_concref_r<T1,T2> >(
1383 *new sc_lv_base( a ), *b.clone(), 3 );
1388 sc_concref_r<sc_concref_r<T1,T2>,sc_lv_base>
1391 return sc_concref_r<sc_concref_r<T1,T2>,sc_lv_base>(
1392 *a.clone(), *new sc_lv_base( b, 1 ), 3 );
1397 sc_concref_r<sc_lv_base,sc_concref_r<T1,T2> >
1400 return sc_concref_r<sc_lv_base,sc_concref_r<T1,T2> >(
1401 *new sc_lv_base( a, 1 ), *b.clone(), 3 );
1425 sc_concref_r<sc_concref_r<T1,T2>,sc_lv_base>
1428 return sc_concref_r<sc_concref_r<T1,T2>,sc_lv_base>
1429 ( *a.clone(), *new sc_lv_base( b ), 3 );
1434 sc_concref_r<sc_lv_base,sc_concref_r<T1,T2> >
1437 return sc_concref_r<sc_lv_base,sc_concref_r<T1,T2> >
1438 ( *new sc_lv_base( a ), *b.clone(), 3 );
1443 sc_concref_r<sc_concref_r<T1,T2>,sc_lv_base>
1446 return sc_concref_r<sc_concref_r<T1,T2>,sc_lv_base>
1447 ( *a.clone(), *new sc_lv_base( b, 1 ), 3 );
1452 sc_concref_r<sc_lv_base,sc_concref_r<T1,T2> >
1455 return sc_concref_r<sc_lv_base,sc_concref_r<T1,T2> >
1456 ( *new sc_lv_base( a, 1 ), *b.clone(), 3 );
1482 sc_concref_r<sc_concref_r<T1,T2>,sc_lv_base>
1485 return sc_concref_r<sc_concref_r<T1,T2>,sc_lv_base>
1486 ( *a.clone(), *new sc_lv_base( b ), 3 );
1491 sc_concref_r<sc_lv_base,sc_concref_r<T1,T2> >
1494 return sc_concref_r<sc_lv_base,sc_concref_r<T1,T2> >
1495 ( *new sc_lv_base( a ), *b.clone(), 3 );
1500 sc_concref_r<sc_concref_r<T1,T2>,sc_lv_base>
1503 return sc_concref_r<sc_concref_r<T1,T2>,sc_lv_base>
1504 ( *a.clone(), *new sc_lv_base( b, 1 ), 3 );
1509 sc_concref_r<sc_lv_base,sc_concref_r<T1,T2> >
1512 return sc_concref_r<sc_lv_base,sc_concref_r<T1,T2> >
1513 ( *new sc_lv_base( a, 1 ), *b.clone(), 3 );
1537 sc_concref_r<sc_concref_r<T1,T2>,sc_lv_base>
1540 return sc_concref_r<sc_concref_r<T1,T2>,sc_lv_base>
1541 ( *a.clone(), *new sc_lv_base( b ), 3 );
1546 sc_concref_r<sc_lv_base,sc_concref_r<T1,T2> >
1549 return sc_concref_r<sc_lv_base,sc_concref_r<T1,T2> >
1550 ( *new sc_lv_base( a ), *b.clone(), 3 );
1555 sc_concref_r<sc_concref_r<T1,T2>,sc_lv_base>
1558 return sc_concref_r<sc_concref_r<T1,T2>,sc_lv_base>
1559 ( *a.clone(), *new sc_lv_base( b, 1 ), 3 );
1564 sc_concref_r<sc_lv_base,sc_concref_r<T1,T2> >
1567 return sc_concref_r<sc_lv_base,sc_concref_r<T1,T2> >
1568 ( *new sc_lv_base( a, 1 ), *b.clone(), 3 );
1603 sc_concref_r<T,sc_lv_base>
1606 return sc_concref_r<T,sc_lv_base>
1607 ( a.back_cast(), *new sc_lv_base( b ), 2 );
1612 sc_concref_r<sc_lv_base,T>
1615 return sc_concref_r<sc_lv_base,T>
1616 ( *new sc_lv_base( a ), b.back_cast(), 1 );
1621 sc_concref_r<T,sc_lv_base>
1624 return sc_concref_r<T,sc_lv_base>
1625 ( a.back_cast(), *new sc_lv_base( b, 1 ), 2 );
1630 sc_concref_r<sc_lv_base,T>
1633 return sc_concref_r<sc_lv_base,T>
1634 ( *new sc_lv_base( a, 1 ), b.back_cast(), 1 );
1658 sc_concref_r<T,sc_lv_base>
1661 return sc_concref_r<T,sc_lv_base>
1662 ( a.back_cast(), *new sc_lv_base( b ), 2 );
1667 sc_concref_r<sc_lv_base,T>
1670 return sc_concref_r<sc_lv_base,T>
1671 ( *new sc_lv_base( a ), b.back_cast(), 1 );
1676 sc_concref_r<T,sc_lv_base>
1679 return sc_concref_r<T,sc_lv_base>
1680 ( a.back_cast(), *new sc_lv_base( b, 1 ), 2 );
1685 sc_concref_r<sc_lv_base,T>
1688 return sc_concref_r<sc_lv_base,T>
1689 ( *new sc_lv_base( a, 1 ), b.back_cast(), 1 );
1715 sc_concref_r<T,sc_lv_base>
1718 return sc_concref_r<T,sc_lv_base>
1719 ( a.back_cast(), *new sc_lv_base( b ), 2 );
1724 sc_concref_r<sc_lv_base,T>
1727 return sc_concref_r<sc_lv_base,T>
1728 ( *new sc_lv_base( a ), b.back_cast(), 1 );
1733 sc_concref_r<T,sc_lv_base>
1736 return sc_concref_r<T,sc_lv_base>
1737 ( a.back_cast(), *new sc_lv_base( b, 1 ), 2 );
1742 sc_concref_r<sc_lv_base,T>
1745 return sc_concref_r<sc_lv_base,T>
1746 ( *new sc_lv_base( a, 1 ), b.back_cast(), 1 );
1770 sc_concref_r<T,sc_lv_base>
1773 return sc_concref_r<T,sc_lv_base>
1774 ( a.back_cast(), *new sc_lv_base( b ), 2 );
1779 sc_concref_r<sc_lv_base,T>
1782 return sc_concref_r<sc_lv_base,T>
1783 ( *new sc_lv_base( a ), b.back_cast(), 1 );
1788 sc_concref_r<T,sc_lv_base>
1791 return sc_concref_r<T,sc_lv_base>
1792 ( a.back_cast(), *new sc_lv_base( b, 1 ), 2 );
1797 sc_concref_r<sc_lv_base,T>
1800 return sc_concref_r<sc_lv_base,T>
1801 ( *new sc_lv_base( a, 1 ), b.back_cast(), 1 );