クラス sc_dt::sc_uint_subref

#include <sc_uint_base.h>

sc_dt::sc_uint_subrefに対する継承グラフ

Inheritance graph
[凡例]

すべてのメンバ一覧

Public メソッド

 sc_uint_subref (const sc_uint_subref &init)
sc_uint_subrefoperator= (uint_type v)
sc_uint_subrefoperator= (const sc_uint_base &a)
sc_uint_subrefoperator= (const sc_uint_subref_r &a)
sc_uint_subrefoperator= (const sc_uint_subref &a)
template<class T>
sc_uint_subrefoperator= (const sc_generic_base< T > &a)
sc_uint_subrefoperator= (const char *a)
sc_uint_subrefoperator= (unsigned long a)
sc_uint_subrefoperator= (long a)
sc_uint_subrefoperator= (unsigned int a)
sc_uint_subrefoperator= (int a)
sc_uint_subrefoperator= (int64 a)
sc_uint_subrefoperator= (double a)
sc_uint_subrefoperator= (const sc_signed &)
sc_uint_subrefoperator= (const sc_unsigned &)
sc_uint_subrefoperator= (const sc_bv_base &)
sc_uint_subrefoperator= (const sc_lv_base &)
virtual void concat_set (int64 src, int low_i)
virtual void concat_set (const sc_signed &src, int low_i)
virtual void concat_set (const sc_unsigned &src, int low_i)
virtual void concat_set (uint64 src, int low_i)
void scan (::std::istream &is=::std::cin)

Protected メソッド

 sc_uint_subref ()

Static Protected 変数

static sc_core::sc_vpool
< sc_uint_subref
m_pool

フレンド

class sc_uint_base
class sc_core::sc_vpool< sc_uint_subref >


説明

sc_uint_base.h423 行で定義されています。


コンストラクタとデストラクタ

sc_dt::sc_uint_subref::sc_uint_subref (  )  [inline, protected]

sc_uint_base.h433 行で定義されています。

00434         {}

sc_dt::sc_uint_subref::sc_uint_subref ( const sc_uint_subref init  )  [inline]

sc_uint_base.h437 行で定義されています。

00437                                                  : sc_uint_subref_r(init)
00438         {}


関数

sc_uint_subref & sc_dt::sc_uint_subref::operator= ( uint_type  v  ) 

sc_uint_base.cpp227 行で定義されています。

00228 {
00229     uint_type val = m_obj_p->m_val;
00230     uint_type mask = mask_int[m_left][m_right];
00231     val &= mask;
00232     val |= (v << m_right) & ~mask;
00233     m_obj_p->m_val = val;
00234     m_obj_p->extend_sign();
00235     return *this;
00236 }

sc_uint_subref & sc_dt::sc_uint_subref::operator= ( const sc_uint_base a  )  [inline]

sc_uint_base.h1154 行で定義されています。

01155 {
01156     return operator = ( a.operator uint_type() );
01157 }

sc_uint_subref& sc_dt::sc_uint_subref::operator= ( const sc_uint_subref_r a  )  [inline]

sc_dt::sc_uint_subref_rを再定義しています。

sc_uint_base.h448 行で定義されています。

00449         { return operator = ( a.operator uint_type() ); }

sc_uint_subref& sc_dt::sc_uint_subref::operator= ( const sc_uint_subref a  )  [inline]

sc_uint_base.h451 行で定義されています。

00452         { return operator = ( a.operator uint_type() ); }

template<class T>
sc_uint_subref& sc_dt::sc_uint_subref::operator= ( const sc_generic_base< T > &  a  )  [inline]

sc_uint_base.h455 行で定義されています。

00456         { return operator = ( a->to_uint64() ); }

sc_uint_subref & sc_dt::sc_uint_subref::operator= ( const char *  a  )  [inline]

sc_uint_base.h1161 行で定義されています。

01162 {
01163     sc_uint_base aa( length() );
01164     return ( *this = aa = a );
01165 }

sc_uint_subref& sc_dt::sc_uint_subref::operator= ( unsigned long  a  )  [inline]

sc_uint_base.h460 行で定義されています。

00461         { return operator = ( (uint_type) a ); }

sc_uint_subref& sc_dt::sc_uint_subref::operator= ( long  a  )  [inline]

sc_uint_base.h463 行で定義されています。

00464         { return operator = ( (uint_type) a ); }

sc_uint_subref& sc_dt::sc_uint_subref::operator= ( unsigned int  a  )  [inline]

sc_uint_base.h466 行で定義されています。

00467         { return operator = ( (uint_type) a ); }

sc_uint_subref& sc_dt::sc_uint_subref::operator= ( int  a  )  [inline]

sc_uint_base.h469 行で定義されています。

00470         { return operator = ( (uint_type) a ); }

sc_uint_subref& sc_dt::sc_uint_subref::operator= ( int64  a  )  [inline]

sc_uint_base.h472 行で定義されています。

00473         { return operator = ( (uint_type) a ); }

sc_uint_subref& sc_dt::sc_uint_subref::operator= ( double  a  )  [inline]

sc_uint_base.h475 行で定義されています。

00476         { return operator = ( (uint_type) a ); }

sc_uint_subref & sc_dt::sc_uint_subref::operator= ( const sc_signed a  ) 

sc_uint_base.cpp239 行で定義されています。

00240 {
00241     sc_uint_base aa( length() );
00242     return ( *this = aa = a );
00243 }

sc_uint_subref & sc_dt::sc_uint_subref::operator= ( const sc_unsigned a  ) 

sc_uint_base.cpp246 行で定義されています。

00247 {
00248     sc_uint_base aa( length() );
00249     return ( *this = aa = a );
00250 }

sc_uint_subref & sc_dt::sc_uint_subref::operator= ( const sc_bv_base a  ) 

sc_uint_base.cpp253 行で定義されています。

00254 {
00255     sc_uint_base aa( length() );
00256     return ( *this = aa = a );
00257 }

sc_uint_subref & sc_dt::sc_uint_subref::operator= ( const sc_lv_base a  ) 

sc_uint_base.cpp260 行で定義されています。

00261 {
00262     sc_uint_base aa( length() );
00263     return ( *this = aa = a );
00264 }

void sc_dt::sc_uint_subref::concat_set ( int64  src,
int  low_i 
) [virtual]

sc_dt::sc_value_baseを再定義しています。

sc_uint_base.cpp269 行で定義されています。

00270 {
00271     sc_uint_base aa( length() );
00272     *this = aa = (low_i < 64) ? src >> low_i : src >> 63;
00273 }

void sc_dt::sc_uint_subref::concat_set ( const sc_signed src,
int  low_i 
) [virtual]

sc_dt::sc_value_baseを再定義しています。

sc_uint_base.cpp275 行で定義されています。

00276 {
00277     sc_uint_base aa( length() );   
00278     if ( low_i < src.length() )
00279         *this = aa = src >> low_i;
00280     else
00281         *this = aa = (src < 0) ? (int_type)-1 : 0;
00282 }

void sc_dt::sc_uint_subref::concat_set ( const sc_unsigned src,
int  low_i 
) [virtual]

sc_dt::sc_value_baseを再定義しています。

sc_uint_base.cpp284 行で定義されています。

00285 {
00286     sc_uint_base aa( length() );
00287     if ( low_i < src.length() )
00288         *this = aa = src >> low_i;
00289     else
00290         *this = aa = 0;
00291 } 

void sc_dt::sc_uint_subref::concat_set ( uint64  src,
int  low_i 
) [virtual]

sc_dt::sc_value_baseを再定義しています。

sc_uint_base.cpp293 行で定義されています。

00294 {      
00295     sc_uint_base aa( length() );
00296     *this = aa = (low_i < 64) ? src >> low_i : 0;
00297 }

void sc_dt::sc_uint_subref::scan ( ::std::istream &  is = ::std::cin  ) 

sc_uint_base.cpp302 行で定義されています。

00303 {
00304     std::string s;
00305     is >> s;
00306     *this = s.c_str();
00307 }


フレンドと関連する関数

friend class sc_uint_base [friend]

sc_dt::sc_uint_subref_rを再定義しています。

sc_uint_base.h426 行で定義されています。

friend class sc_core::sc_vpool< sc_uint_subref > [friend]

sc_uint_base.h427 行で定義されています。


変数

sc_uint_base.h495 行で定義されています。


このクラスの説明は次のファイルから生成されました:

SystemCに対してFri Jun 6 20:13:01 2008に生成されました。  doxygen 1.5.6