00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00026
00027 #ifndef _CREDIT_
00028 #define _CREDIT_
00029
00030 #include "systemc.h"
00031
00035 struct creditLine {
00036 sc_bit freeVC;
00037 sc_bit freeBuf;
00038
00039
00040 inline bool operator == (const creditLine& rhs) const {
00041 return (rhs.freeVC == freeVC && rhs.freeBuf == freeBuf);
00042 }
00043 };
00044
00045
00046 inline ostream& operator << ( ostream& os, const creditLine& a) {
00047 os << "freeVC: " << a.freeVC << " freeBuf: "<< a.freeBuf << endl;
00048 return os;
00049 }
00050
00051
00052 inline void sc_trace( sc_trace_file*& tf, const creditLine& a, const std::string& name) {
00053 sc_trace( tf, a.freeVC, name+".freeVC");
00054 sc_trace( tf, a.freeBuf, name+".freeBuf");
00055 }
00056
00057 #endif