SystemC 3.0.0
Accellera SystemC proof-of-concept library
Classes | Namespaces | Macros | Functions
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/utils/sc_string.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 "sysc/datatypes/int/sc_vector_utils.h"
#include "sysc/datatypes/int/sc_signed_inlines.h"
#include "sysc/datatypes/int/sc_unsigned_inlines.h"
#include "sysc/datatypes/int/sc_signed_ops.h"
Include dependency graph for sc_concatref.h:

Go to the source code of this file.

Classes

class  sc_dt::sc_concatref
 
class  sc_dt::sc_concat_bool
 

Namespaces

namespace  sc_dt
 

Macros

#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)
 
static sc_dt::sc_concatrefsc_dt::temporary_concatref ()
 
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)
 

Macro Definition Documentation

◆ SC_CONCAT_BOOL_OP

#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(); \
}
unsigned long long uint64
Definition: sc_nbdefs.h:216
uint64 const sc_uint_base int b
Definition: sc_fxval.h:955
long long int64
Definition: sc_nbdefs.h:215
uint_type value() const
Definition: sc_uint_base.h:805

Definition at line 703 of file sc_concatref.h.

◆ SC_CONCAT_OP

#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 679 of file sc_concatref.h.

◆ SC_CONCAT_OP_TYPE

#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 668 of file sc_concatref.h.