#include "sysc/kernel/sc_cmnhdr.h"#include "sysc/utils/sc_iostream.h"#include "sysc/datatypes/int/sc_signed.h"#include "sysc/datatypes/int/sc_unsigned.h"#include "sysc/datatypes/int/sc_int_base.h"#include "sysc/datatypes/int/sc_uint_base.h"#include "sysc/utils/sc_string.h"#include "sysc/datatypes/bit/sc_bit.h"#include "sysc/datatypes/bit/sc_bit_ids.h"#include "sysc/datatypes/bit/sc_logic.h"#include "sysc/kernel/sc_macros.h"Go to the source code of this file.
Namespaces | |
| namespace | sc_dt |
Classes | |
| class | sc_dt::sc_proxy< X > |
Defines | |
| #define | DECL_BITWISE_AND_OP_T(tp) |
| #define | DECL_BITWISE_OR_OP_T(tp) |
| #define | DECL_BITWISE_XOR_OP_T(tp) |
| #define | DECL_REL_OP_T(tp) |
| #define | DEFN_REL_OP_T(tp) |
Functions | |
| template<class X, class Y> | |
| void | sc_dt::assign_p_ (sc_proxy< X > &px, const sc_proxy< Y > &py) |
| template<class X, class T> | |
| void | sc_dt::assign_v_ (sc_proxy< X > &px, const T &a) |
| const std::string | sc_dt::convert_to_bin (const char *s) |
| const std::string | sc_dt::convert_to_fmt (const std::string &s, sc_numrep numrep, bool w_prefix) |
| template<class X, class Y> | |
| X & | sc_dt::operator &= (sc_proxy< X > &px, const sc_proxy< Y > &py) |
| template<class X, class Y> | |
| const sc_lv_base | sc_dt::operator & (const sc_proxy< X > &px, const sc_proxy< Y > &py) |
| template<class X> | |
| const sc_lv_base | sc_dt::operator & (const char *b, const sc_proxy< X > &px) |
| template<class X> | |
| const sc_lv_base | sc_dt::operator & (const bool *b, const sc_proxy< X > &px) |
| template<class X> | |
| const sc_lv_base | sc_dt::operator & (const sc_logic *b, const sc_proxy< X > &px) |
| template<class X> | |
| const sc_lv_base | sc_dt::operator & (const sc_unsigned &b, const sc_proxy< X > &px) |
| template<class X> | |
| const sc_lv_base | sc_dt::operator & (const sc_signed &b, const sc_proxy< X > &px) |
| template<class X> | |
| const sc_lv_base | sc_dt::operator & (const sc_uint_base &b, const sc_proxy< X > &px) |
| template<class X> | |
| const sc_lv_base | sc_dt::operator & (const sc_int_base &b, const sc_proxy< X > &px) |
| template<class X> | |
| const sc_lv_base | sc_dt::operator & (unsigned long b, const sc_proxy< X > &px) |
| template<class X> | |
| const sc_lv_base | sc_dt::operator & (long b, const sc_proxy< X > &px) |
| template<class X> | |
| const sc_lv_base | sc_dt::operator & (unsigned int b, const sc_proxy< X > &px) |
| template<class X> | |
| const sc_lv_base | sc_dt::operator & (int b, const sc_proxy< X > &px) |
| template<class X> | |
| const sc_lv_base | sc_dt::operator & (uint64 b, const sc_proxy< X > &px) |
| template<class X> | |
| const sc_lv_base | sc_dt::operator & (int64 b, const sc_proxy< X > &px) |
| template<class X, class Y> | |
| X & | sc_dt::operator|= (sc_proxy< X > &px, const sc_proxy< Y > &py) |
| template<class X, class Y> | |
| const sc_lv_base | sc_dt::operator| (const sc_proxy< X > &px, const sc_proxy< Y > &py) |
| template<class X> | |
| const sc_lv_base | sc_dt::operator| (const char *b, const sc_proxy< X > &px) |
| template<class X> | |
| const sc_lv_base | sc_dt::operator| (const bool *b, const sc_proxy< X > &px) |
| template<class X> | |
| const sc_lv_base | sc_dt::operator| (const sc_logic *b, const sc_proxy< X > &px) |
| template<class X> | |
| const sc_lv_base | sc_dt::operator| (const sc_unsigned &b, const sc_proxy< X > &px) |
| template<class X> | |
| const sc_lv_base | sc_dt::operator| (const sc_signed &b, const sc_proxy< X > &px) |
| template<class X> | |
| const sc_lv_base | sc_dt::operator| (const sc_uint_base &b, const sc_proxy< X > &px) |
| template<class X> | |
| const sc_lv_base | sc_dt::operator| (const sc_int_base &b, const sc_proxy< X > &px) |
| template<class X> | |
| const sc_lv_base | sc_dt::operator| (unsigned long b, const sc_proxy< X > &px) |
| template<class X> | |
| const sc_lv_base | sc_dt::operator| (long b, const sc_proxy< X > &px) |
| template<class X> | |
| const sc_lv_base | sc_dt::operator| (unsigned int b, const sc_proxy< X > &px) |
| template<class X> | |
| const sc_lv_base | sc_dt::operator| (int b, const sc_proxy< X > &px) |
| template<class X> | |
| const sc_lv_base | sc_dt::operator| (uint64 b, const sc_proxy< X > &px) |
| template<class X> | |
| const sc_lv_base | sc_dt::operator| (int64 b, const sc_proxy< X > &px) |
| template<class X, class Y> | |
| X & | sc_dt::operator^= (sc_proxy< X > &px, const sc_proxy< Y > &py) |
| template<class X, class Y> | |
| const sc_lv_base | sc_dt::operator^ (const sc_proxy< X > &px, const sc_proxy< Y > &py) |
| template<class X> | |
| const sc_lv_base | sc_dt::operator^ (const char *b, const sc_proxy< X > &px) |
| template<class X> | |
| const sc_lv_base | sc_dt::operator^ (const bool *b, const sc_proxy< X > &px) |
| template<class X> | |
| const sc_lv_base | sc_dt::operator^ (const sc_logic *b, const sc_proxy< X > &px) |
| template<class X> | |
| const sc_lv_base | sc_dt::operator^ (const sc_unsigned &b, const sc_proxy< X > &px) |
| template<class X> | |
| const sc_lv_base | sc_dt::operator^ (const sc_signed &b, const sc_proxy< X > &px) |
| template<class X> | |
| const sc_lv_base | sc_dt::operator^ (const sc_uint_base &b, const sc_proxy< X > &px) |
| template<class X> | |
| const sc_lv_base | sc_dt::operator^ (const sc_int_base &b, const sc_proxy< X > &px) |
| template<class X> | |
| const sc_lv_base | sc_dt::operator^ (unsigned long b, const sc_proxy< X > &px) |
| template<class X> | |
| const sc_lv_base | sc_dt::operator^ (long b, const sc_proxy< X > &px) |
| template<class X> | |
| const sc_lv_base | sc_dt::operator^ (unsigned int b, const sc_proxy< X > &px) |
| template<class X> | |
| const sc_lv_base | sc_dt::operator^ (int b, const sc_proxy< X > &px) |
| template<class X> | |
| const sc_lv_base | sc_dt::operator^ (uint64 b, const sc_proxy< X > &px) |
| template<class X> | |
| const sc_lv_base | sc_dt::operator^ (int64 b, const sc_proxy< X > &px) |
| template<class X, class Y> | |
| bool | sc_dt::operator== (const sc_proxy< X > &px, const sc_proxy< Y > &py) |
| template<class X, class Y> | |
| bool | sc_dt::operator!= (const sc_proxy< X > &px, const sc_proxy< Y > &py) |
| template<class X> | |
| bool | sc_dt::operator== (const char *b, const sc_proxy< X > &px) |
| template<class X> | |
| bool | sc_dt::operator!= (const sc_proxy< X > &px, const char *b) |
| template<class X> | |
| bool | sc_dt::operator!= (const char *b, const sc_proxy< X > &px) |
| template<class X> | |
| bool | sc_dt::operator== (const bool *b, const sc_proxy< X > &px) |
| template<class X> | |
| bool | sc_dt::operator!= (const sc_proxy< X > &px, const bool *b) |
| template<class X> | |
| bool | sc_dt::operator!= (const bool *b, const sc_proxy< X > &px) |
| template<class X> | |
| bool | sc_dt::operator== (const sc_logic *b, const sc_proxy< X > &px) |
| template<class X> | |
| bool | sc_dt::operator!= (const sc_proxy< X > &px, const sc_logic *b) |
| template<class X> | |
| bool | sc_dt::operator!= (const sc_logic *b, const sc_proxy< X > &px) |
| template<class X> | |
| bool | sc_dt::operator== (const sc_unsigned &b, const sc_proxy< X > &px) |
| template<class X> | |
| bool | sc_dt::operator!= (const sc_proxy< X > &px, const sc_unsigned &b) |
| template<class X> | |
| bool | sc_dt::operator!= (const sc_unsigned &b, const sc_proxy< X > &px) |
| template<class X> | |
| bool | sc_dt::operator== (const sc_signed &b, const sc_proxy< X > &px) |
| template<class X> | |
| bool | sc_dt::operator!= (const sc_proxy< X > &px, const sc_signed &b) |
| template<class X> | |
| bool | sc_dt::operator!= (const sc_signed &b, const sc_proxy< X > &px) |
| template<class X> | |
| bool | sc_dt::operator== (const sc_uint_base &b, const sc_proxy< X > &px) |
| template<class X> | |
| bool | sc_dt::operator!= (const sc_proxy< X > &px, const sc_uint_base &b) |
| template<class X> | |
| bool | sc_dt::operator!= (const sc_uint_base &b, const sc_proxy< X > &px) |
| template<class X> | |
| bool | sc_dt::operator== (const sc_int_base &b, const sc_proxy< X > &px) |
| template<class X> | |
| bool | sc_dt::operator!= (const sc_proxy< X > &px, const sc_int_base &b) |
| template<class X> | |
| bool | sc_dt::operator!= (const sc_int_base &b, const sc_proxy< X > &px) |
| template<class X> | |
| bool | sc_dt::operator== (unsigned long b, const sc_proxy< X > &px) |
| template<class X> | |
| bool | sc_dt::operator!= (const sc_proxy< X > &px, unsigned long b) |
| template<class X> | |
| bool | sc_dt::operator!= (unsigned long b, const sc_proxy< X > &px) |
| template<class X> | |
| bool | sc_dt::operator== (long b, const sc_proxy< X > &px) |
| template<class X> | |
| bool | sc_dt::operator!= (const sc_proxy< X > &px, long b) |
| template<class X> | |
| bool | sc_dt::operator!= (long b, const sc_proxy< X > &px) |
| template<class X> | |
| bool | sc_dt::operator== (unsigned int b, const sc_proxy< X > &px) |
| template<class X> | |
| bool | sc_dt::operator!= (const sc_proxy< X > &px, unsigned int b) |
| template<class X> | |
| bool | sc_dt::operator!= (unsigned int b, const sc_proxy< X > &px) |
| template<class X> | |
| bool | sc_dt::operator== (int b, const sc_proxy< X > &px) |
| template<class X> | |
| bool | sc_dt::operator!= (const sc_proxy< X > &px, int b) |
| template<class X> | |
| bool | sc_dt::operator!= (int b, const sc_proxy< X > &px) |
| template<class X> | |
| bool | sc_dt::operator== (uint64 b, const sc_proxy< X > &px) |
| template<class X> | |
| bool | sc_dt::operator!= (const sc_proxy< X > &px, uint64 b) |
| template<class X> | |
| bool | sc_dt::operator!= (uint64 b, const sc_proxy< X > &px) |
| template<class X> | |
| bool | sc_dt::operator== (int64 b, const sc_proxy< X > &px) |
| template<class X> | |
| bool | sc_dt::operator!= (const sc_proxy< X > &px, int64 b) |
| template<class X> | |
| bool | sc_dt::operator!= (int64 b, const sc_proxy< X > &px) |
| template<class X> | |
| void | sc_dt::get_words_ (const X &x, int wi, unsigned long &x_dw, unsigned long &x_cw) |
| template<class X> | |
| void | sc_dt::set_words_ (X &x, int wi, unsigned long x_dw, unsigned long x_cw) |
| template<class X> | |
| void | sc_dt::extend_sign_w_ (X &x, int wi, bool sign) |
| template<class X, class Y> | |
| X & | sc_dt::b_and_assign_ (sc_proxy< X > &px, const sc_proxy< Y > &py) |
| template<class X, class Y> | |
| X & | sc_dt::b_or_assign_ (sc_proxy< X > &px, const sc_proxy< Y > &py) |
| template<class X, class Y> | |
| X & | sc_dt::b_xor_assign_ (sc_proxy< X > &a, const sc_proxy< Y > &b) |
| template<class X> | |
| const sc_lv_base | sc_dt::lrotate (const sc_proxy< X > &x, int n) |
| template<class X> | |
| const sc_lv_base | sc_dt::rrotate (const sc_proxy< X > &x, int n) |
| template<class X> | |
| const sc_lv_base | sc_dt::reverse (const sc_proxy< X > &x) |
| template<class X> | |
| sc_logic_value_t | sc_dt::and_reduce (const sc_proxy< X > &a) |
| template<class X> | |
| sc_logic_value_t | sc_dt::nand_reduce (const sc_proxy< X > &a) |
| template<class X> | |
| sc_logic_value_t | sc_dt::or_reduce (const sc_proxy< X > &a) |
| template<class X> | |
| sc_logic_value_t | sc_dt::nor_reduce (const sc_proxy< X > &a) |
| template<class X> | |
| sc_logic_value_t | sc_dt::xor_reduce (const sc_proxy< X > &a) |
| template<class X> | |
| sc_logic_value_t | sc_dt::xnor_reduce (const sc_proxy< X > &a) |
| template<class X> | |
| inline::std::ostream & | sc_dt::operator<< (::std::ostream &os, const sc_proxy< X > &a) |
| template<class X> | |
| inline::std::istream & | sc_dt::operator>> (::std::istream &is, sc_proxy< X > &a) |
Variables | |
| const int | sc_dt::UL_SIZE = BITS_PER_BYTE * sizeof( unsigned long ) |
| const unsigned long | sc_dt::UL_ZERO = 0ul |
| const unsigned long | sc_dt::UL_ONE = 1ul |
| const unsigned long | sc_dt::UL_TWO = 2ul |
| #define DECL_BITWISE_AND_OP_T | ( | tp | ) |
Value:
template <class X> \ inline \ const sc_lv_base \ operator & ( tp b, const sc_proxy<X>& px );
| #define DECL_BITWISE_OR_OP_T | ( | tp | ) |
Value:
template <class X> \ inline \ const sc_lv_base \ operator | ( tp a, const sc_proxy<X>& px );
| #define DECL_BITWISE_XOR_OP_T | ( | tp | ) |
Value:
template <class X> \ inline \ const sc_lv_base \ operator ^ ( tp a, const sc_proxy<X>& px );
| #define DECL_REL_OP_T | ( | tp | ) |
Value:
template <class X> \ inline \ bool \ operator == ( tp b, const sc_proxy<X>& px ); \ \ template <class X> \ inline \ bool \ operator != ( const sc_proxy<X>& px, tp b ); \ \ template <class X> \ inline \ bool \ operator != ( tp b, const sc_proxy<X>& px );
| #define DEFN_REL_OP_T | ( | tp | ) |
Value:
template <class X> \ inline \ bool \ operator == ( tp b, const sc_proxy<X>& px ) \ { \ return ( px == b ); \ } \ \ template <class X> \ inline \ bool \ operator != ( const sc_proxy<X>& px, tp b ) \ { \ return !( px == b ); \ } \ \ template <class X> \ inline \ bool \ operator != ( tp b, const sc_proxy<X>& px ) \ { \ return !( px == b ); \ }