クラス sc_dt::sc_int_bitref

#include <sc_int_base.h>

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

Inheritance graph
[凡例]

すべてのメンバ一覧

Public メソッド

 sc_int_bitref (const sc_int_bitref &a)
sc_int_bitrefoperator= (const sc_int_bitref_r &b)
sc_int_bitrefoperator= (const sc_int_bitref &b)
sc_int_bitrefoperator= (bool b)
sc_int_bitrefoperator &= (bool b)
sc_int_bitrefoperator|= (bool b)
sc_int_bitrefoperator^= (bool b)
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)

Static Public 変数

static sc_core::sc_vpool
< sc_int_bitref
m_pool

Private メソッド

 sc_int_bitref ()

フレンド

class sc_int_base
class sc_core::sc_vpool< sc_int_bitref >


説明

sc_int_base.h244 行で定義されています。


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

sc_dt::sc_int_bitref::sc_int_bitref (  )  [inline, private]

sc_int_base.h253 行で定義されています。

00254       {}

sc_dt::sc_int_bitref::sc_int_bitref ( const sc_int_bitref a  )  [inline]

sc_int_base.h261 行で定義されています。

00261                                             : sc_int_bitref_r( a )
00262       {}


関数

sc_int_bitref & sc_dt::sc_int_bitref::operator= ( const sc_int_bitref_r b  )  [inline]

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

sc_int_base.h923 行で定義されています。

00924 {
00925     m_obj_p->set( m_index, (bool) b );
00926     m_obj_p->extend_sign();
00927     return *this;
00928 }

sc_int_bitref & sc_dt::sc_int_bitref::operator= ( const sc_int_bitref b  )  [inline]

sc_int_base.h932 行で定義されています。

00933 {
00934     m_obj_p->set( m_index, (bool) b );
00935     m_obj_p->extend_sign();
00936     return *this;
00937 }

sc_int_bitref & sc_dt::sc_int_bitref::operator= ( bool  b  )  [inline]

sc_int_base.h941 行で定義されています。

00942 {
00943     m_obj_p->set( m_index, b );
00944     m_obj_p->extend_sign();
00945     return *this;
00946 }

sc_int_bitref & sc_dt::sc_int_bitref::operator &= ( bool  b  )  [inline]

sc_int_base.h951 行で定義されています。

00952 {
00953     if( ! b ) {
00954         m_obj_p->set( m_index, b );
00955         m_obj_p->extend_sign();
00956     }
00957     return *this;
00958 }

sc_int_bitref & sc_dt::sc_int_bitref::operator|= ( bool  b  )  [inline]

sc_int_base.h962 行で定義されています。

00963 {
00964     if( b ) {
00965         m_obj_p->set( m_index, b );
00966         m_obj_p->extend_sign();
00967     }
00968     return *this;
00969 }

sc_int_bitref & sc_dt::sc_int_bitref::operator^= ( bool  b  )  [inline]

sc_int_base.h973 行で定義されています。

00974 {
00975     if( b ) {
00976         m_obj_p->m_val ^= (UINT_ONE << m_index);
00977         m_obj_p->extend_sign();
00978     }
00979     return *this;
00980 }

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

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

sc_int_base.cpp89 行で定義されています。

00090 {
00091     sc_int_base aa( 1 );
00092     *this = aa = (low_i < 64) ? src >> low_i : src >> 63;
00093 }

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

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

sc_int_base.cpp95 行で定義されています。

00096 {
00097     sc_int_base aa( 1 );
00098     if ( low_i < src.length() )
00099         *this = aa = 1 & (src >> low_i);
00100     else
00101         *this = aa = (src < 0) ? (int_type)-1 : 0;
00102 }

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

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

sc_int_base.cpp104 行で定義されています。

00105 {
00106     sc_int_base aa( 1 );
00107     if ( low_i < src.length() )
00108         *this = aa = 1 & (src >> low_i);
00109     else
00110         *this = aa = 0;
00111 }

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

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

sc_int_base.cpp113 行で定義されています。

00114 {
00115     sc_int_base aa( 1 );
00116     *this = aa = (low_i < 64) ? src >> low_i : 0;
00117 }

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

sc_int_base.cpp123 行で定義されています。

00124 {
00125     bool b;
00126     is >> b;
00127     *this = b;
00128 }


フレンドと関連する関数

friend class sc_int_base [friend]

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

sc_int_base.h247 行で定義されています。

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

sc_int_base.h248 行で定義されています。


変数

sc_int_base.h287 行で定義されています。


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

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