クラス sc_dt::sc_fxnum_subref

#include <sc_fxnum.h>

すべてのメンバ一覧

Public メソッド

 sc_fxnum_subref (const sc_fxnum_subref &)
 ~sc_fxnum_subref ()
bool and_reduce () const
bool nand_reduce () const
bool or_reduce () const
bool nor_reduce () const
bool xor_reduce () const
bool xnor_reduce () const
int length () const
int to_int () const
unsigned int to_uint () const
long to_long () const
unsigned long to_ulong () const
int64 to_int64 () const
uint64 to_uint64 () const
const std::string to_string () const
const std::string to_string (sc_numrep) const
const std::string to_string (sc_numrep, bool) const
 operator sc_bv_base () const
void print (::std::ostream &=::std::cout) const
void scan (::std::istream &=::std::cin)
void dump (::std::ostream &=::std::cout) const

Private メソッド

bool get () const
bool set ()
 sc_fxnum_subref (sc_fxnum &, int, int)
 sc_fxnum_subref ()

Private 変数

sc_fxnumm_num
int m_from
int m_to
sc_bv_basem_bv

フレンド

class sc_fxnum
class sc_fxnum_fast_subref


説明

sc_fxnum.h224 行で定義されています。


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

sc_dt::sc_fxnum_subref::sc_fxnum_subref ( sc_fxnum num_,
int  from_,
int  to_ 
) [inline, private]

sc_fxnum.h1838 行で定義されています。

01839     : m_num( num_ ), m_from( from_ ), m_to( to_ ),
01840       m_bv( *new sc_bv_base( sc_max( m_from, m_to ) -
01841                              sc_min( m_from, m_to ) + 1 ) )
01842 {}

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

sc_fxnum.h1848 行で定義されています。

01849     : m_num( a.m_num ), m_from( a.m_from ), m_to( a.m_to ),
01850       m_bv( *new sc_bv_base( a.m_bv ) )
01851 {}

sc_dt::sc_fxnum_subref::~sc_fxnum_subref (  )  [inline]

sc_fxnum.h1857 行で定義されています。

01858 {
01859     delete &m_bv;
01860 }

sc_dt::sc_fxnum_subref::sc_fxnum_subref (  )  [private]


関数

bool sc_dt::sc_fxnum_subref::get (  )  const [private]

sc_fxnum.cpp156 行で定義されています。

00157 {
00158     return m_num.get_slice( m_from, m_to, m_bv );
00159 }

bool sc_dt::sc_fxnum_subref::set (  )  [private]

sc_fxnum.cpp162 行で定義されています。

00163 {
00164     return m_num.set_slice( m_from, m_to, m_bv );
00165 }

bool sc_dt::sc_fxnum_subref::and_reduce (  )  const

bool sc_dt::sc_fxnum_subref::nand_reduce (  )  const

bool sc_dt::sc_fxnum_subref::or_reduce (  )  const

bool sc_dt::sc_fxnum_subref::nor_reduce (  )  const

bool sc_dt::sc_fxnum_subref::xor_reduce (  )  const

bool sc_dt::sc_fxnum_subref::xnor_reduce (  )  const

int sc_dt::sc_fxnum_subref::length (  )  const [inline]

sc_fxnum.h2043 行で定義されています。

02044 {
02045     return m_bv.length();
02046 }

int sc_dt::sc_fxnum_subref::to_int (  )  const [inline]

sc_fxnum.h2053 行で定義されています。

02054 {
02055     SC_FXNUM_OBSERVER_READ_( m_num )
02056     get();
02057     return m_bv.to_int();
02058 }

unsigned int sc_dt::sc_fxnum_subref::to_uint (  )  const [inline]

sc_fxnum.h2071 行で定義されています。

02072 {
02073     SC_FXNUM_OBSERVER_READ_( m_num )
02074     get();
02075     return m_bv.to_uint();
02076 }

long sc_dt::sc_fxnum_subref::to_long (  )  const [inline]

sc_fxnum.h2089 行で定義されています。

02090 {
02091     SC_FXNUM_OBSERVER_READ_( m_num )
02092     get();
02093     return m_bv.to_long();
02094 }

unsigned long sc_dt::sc_fxnum_subref::to_ulong (  )  const [inline]

sc_fxnum.h2098 行で定義されています。

02099 {
02100     SC_FXNUM_OBSERVER_READ_( m_num )
02101     get();
02102     return m_bv.to_ulong();
02103 }

int64 sc_dt::sc_fxnum_subref::to_int64 (  )  const [inline]

sc_fxnum.h2062 行で定義されています。

02063 {
02064     SC_FXNUM_OBSERVER_READ_( m_num )
02065     get();
02066     return m_bv.to_int64();
02067 }

uint64 sc_dt::sc_fxnum_subref::to_uint64 (  )  const [inline]

sc_fxnum.h2080 行で定義されています。

02081 {
02082     SC_FXNUM_OBSERVER_READ_( m_num )
02083     get();
02084     return m_bv.to_uint64();
02085 }

const std::string sc_dt::sc_fxnum_subref::to_string (  )  const [inline]

sc_fxnum.h2127 行で定義されています。

02128 {
02129     get();
02130     return m_bv.to_string();
02131 }

const std::string sc_dt::sc_fxnum_subref::to_string ( sc_numrep  numrep  )  const [inline]

sc_fxnum.h2135 行で定義されています。

02136 {
02137     get();
02138     return m_bv.to_string( numrep );
02139 }

const std::string sc_dt::sc_fxnum_subref::to_string ( sc_numrep  numrep,
bool  w_prefix 
) const [inline]

sc_fxnum.h2143 行で定義されています。

02144 {
02145     get();
02146     return m_bv.to_string( numrep, w_prefix );
02147 }

sc_dt::sc_fxnum_subref::operator sc_bv_base (  )  const [inline]

sc_fxnum.h2153 行で定義されています。

02154 {
02155     SC_FXNUM_OBSERVER_READ_( m_num )
02156     get();
02157     return m_bv;
02158 }

void sc_dt::sc_fxnum_subref::print ( ::std::ostream &  os = ::std::cout  )  const

sc_fxnum.cpp171 行で定義されています。

00172 {
00173     get();
00174     m_bv.print( os );
00175 }

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

sc_fxnum.cpp178 行で定義されています。

00179 {
00180     m_bv.scan( is );
00181     set();
00182 }

void sc_dt::sc_fxnum_subref::dump ( ::std::ostream &  os = ::std::cout  )  const

sc_fxnum.cpp185 行で定義されています。

00186 {
00187     os << "sc_fxnum_subref" << ::std::endl;
00188     os << "(" << ::std::endl;
00189     os << "num  = ";
00190     m_num.dump( os );
00191     os << "from = " << m_from << ::std::endl;
00192     os << "to   = " << m_to << ::std::endl;
00193     os << ")" << ::std::endl;
00194 }


フレンドと関連する関数

friend class sc_fxnum [friend]

sc_fxnum.h226 行で定義されています。

friend class sc_fxnum_fast_subref [friend]

sc_fxnum.h227 行で定義されています。


変数

sc_fxnum.h367 行で定義されています。

sc_fxnum.h368 行で定義されています。

sc_fxnum.h369 行で定義されています。

sc_fxnum.h371 行で定義されています。


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

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