sysc/datatypes/misc/sc_concatref.h File Reference

#include "sysc/kernel/sc_object.h"
#include "sysc/datatypes/misc/sc_value_base.h"
#include "sysc/utils/sc_temporary.h"
#include "sysc/datatypes/bit/sc_bv.h"
#include "sysc/datatypes/bit/sc_lv.h"
#include "sysc/datatypes/int/sc_int_base.h"
#include "sysc/datatypes/int/sc_uint_base.h"
#include "sysc/datatypes/int/sc_signed.h"
#include "sysc/datatypes/int/sc_unsigned.h"
Include dependency graph for sc_concatref.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  sc_dt::sc_concatref
class  sc_dt::sc_concat_bool

Namespaces

namespace  sc_core
namespace  sc_dt

Defines

#define SC_CONCAT_OP_TYPE(RESULT, OP, OTHER_TYPE)
#define SC_CONCAT_OP(RESULT, OP)
#define SC_CONCAT_BOOL_OP(OP)

Functions

bool sc_dt::and_reduce (const sc_concatref &a)
bool sc_dt::nand_reduce (const sc_concatref &a)
bool sc_dt::or_reduce (const sc_concatref &a)
bool sc_dt::nor_reduce (const sc_concatref &a)
bool sc_dt::xor_reduce (const sc_concatref &a)
bool sc_dt::xnor_reduce (const sc_concatref &a)
const sc_unsigned sc_dt::operator<< (const sc_concatref &target, uint64 shift)
const sc_unsigned sc_dt::operator<< (const sc_concatref &target, int64 shift)
const sc_unsigned sc_dt::operator<< (const sc_concatref &target, unsigned long shift)
const sc_unsigned sc_dt::operator<< (const sc_concatref &target, int shift)
const sc_unsigned sc_dt::operator<< (const sc_concatref &target, unsigned int shift)
const sc_unsigned sc_dt::operator<< (const sc_concatref &target, long shift)
const sc_unsigned sc_dt::operator>> (const sc_concatref &target, uint64 shift)
const sc_unsigned sc_dt::operator>> (const sc_concatref &target, int64 shift)
const sc_unsigned sc_dt::operator>> (const sc_concatref &target, unsigned long shift)
const sc_unsigned sc_dt::operator>> (const sc_concatref &target, int shift)
const sc_unsigned sc_dt::operator>> (const sc_concatref &target, unsigned int shift)
const sc_unsigned sc_dt::operator>> (const sc_concatref &target, long shift)
inline::std::ostream & sc_dt::operator<< (::std::ostream &os, const sc_concatref &v)
inline::std::istream & sc_dt::operator>> (::std::istream &is, sc_concatref &a)
sc_dt::sc_concatrefsc_dt::concat (sc_dt::sc_value_base &a, sc_dt::sc_value_base &b)
const sc_dt::sc_concatrefsc_dt::concat (const sc_dt::sc_value_base &a, const sc_dt::sc_value_base &b)
const sc_dt::sc_concatrefsc_dt::concat (const sc_dt::sc_value_base &a, bool b)
const sc_dt::sc_concatrefsc_dt::concat (bool a, const sc_dt::sc_value_base &b)
sc_dt::sc_concatrefsc_dt::operator, (sc_dt::sc_value_base &a, sc_dt::sc_value_base &b)
const sc_dt::sc_concatrefsc_dt::operator, (const sc_dt::sc_value_base &a, const sc_dt::sc_value_base &b)
const sc_dt::sc_concatrefsc_dt::operator, (const sc_dt::sc_value_base &a, bool b)
const sc_dt::sc_concatrefsc_dt::operator, (bool a, const sc_dt::sc_value_base &b)

Variables

sc_byte_heap sc_core::sc_temp_heap

Define Documentation

#define SC_CONCAT_BOOL_OP ( OP   ) 
Value:
inline bool operator OP ( const sc_concatref& a, const sc_concatref& b ) \
    { \
        return a.value() OP b.value(); \
    }  \
    SC_CONCAT_OP_TYPE(bool,OP,int) \
    SC_CONCAT_OP_TYPE(bool,OP,long) \
    SC_CONCAT_OP_TYPE(bool,OP,int64) \
    SC_CONCAT_OP_TYPE(bool,OP,unsigned int) \
    SC_CONCAT_OP_TYPE(bool,OP,unsigned long) \
    SC_CONCAT_OP_TYPE(bool,OP,uint64) \
    SC_CONCAT_OP_TYPE(bool,OP,const sc_int_base&) \
    SC_CONCAT_OP_TYPE(bool,OP,const sc_uint_base&) \
    SC_CONCAT_OP_TYPE(bool,OP,const sc_signed&) \
    SC_CONCAT_OP_TYPE(bool,OP,const sc_unsigned&) \
    inline bool operator OP ( const sc_concatref& a, bool b ) \
    { \
        return a.value() OP (int)b; \
    } \
    inline bool operator OP ( bool a, const sc_concatref& b ) \
    { \
        return (int)a OP b.value(); \
    }

Definition at line 707 of file sc_concatref.h.

#define SC_CONCAT_OP ( RESULT,
OP   ) 
Value:
inline RESULT operator OP ( const sc_concatref& a, const sc_concatref& b ) \
    { \
        return a.value() OP b.value(); \
    }  \
    SC_CONCAT_OP_TYPE(const sc_signed,OP,int) \
    SC_CONCAT_OP_TYPE(const sc_signed,OP,long) \
    SC_CONCAT_OP_TYPE(const sc_signed,OP,int64) \
    SC_CONCAT_OP_TYPE(RESULT,OP,unsigned int) \
    SC_CONCAT_OP_TYPE(RESULT,OP,unsigned long) \
    SC_CONCAT_OP_TYPE(RESULT,OP,uint64) \
    SC_CONCAT_OP_TYPE(const sc_signed,OP,const sc_int_base&) \
    SC_CONCAT_OP_TYPE(RESULT,OP,const sc_uint_base&) \
    SC_CONCAT_OP_TYPE(const sc_signed,OP,const sc_signed&) \
    SC_CONCAT_OP_TYPE(RESULT,OP,const sc_unsigned&) \
    inline RESULT operator OP ( const sc_concatref& a, bool b ) \
    { \
        return a.value() OP (int)b; \
    } \
    inline RESULT operator OP ( bool a, const sc_concatref& b ) \
    { \
        return (int)a OP b.value(); \
    }

Definition at line 683 of file sc_concatref.h.

#define SC_CONCAT_OP_TYPE ( RESULT,
OP,
OTHER_TYPE   ) 
Value:
inline RESULT operator OP ( const sc_concatref& a, OTHER_TYPE b ) \
    { \
        return a.value() OP b; \
    } \
    inline RESULT operator OP ( OTHER_TYPE a, const sc_concatref& b ) \
    { \
        return a OP b.value(); \
    }

Definition at line 672 of file sc_concatref.h.


Generated on 30 Sep 2015 for SystemC by  doxygen 1.6.1