25 #ifndef __TLM_CORE_IFS_H__ 26 #define __TLM_CORE_IFS_H__ 36 template <
typename REQ ,
typename RSP >
42 virtual void transport(
const REQ &req , RSP &rsp ) {
51 template <
typename T >
56 virtual void get( T &t ) { t =
get(); }
60 template <
typename T >
64 virtual void put(
const T &t ) = 0;
69 template <
typename T >
73 virtual bool nb_get( T &t ) = 0;
74 virtual bool nb_can_get(
tlm_tag<T> *t = 0 )
const = 0;
78 template <
typename T >
82 virtual bool nb_put(
const T &t ) = 0;
83 virtual bool nb_can_put(
tlm_tag<T> *t = 0 )
const = 0;
90 template <
typename T >
95 template <
typename T >
103 template <
typename T >
107 virtual T peek(
tlm_tag<T> *t = 0 )
const = 0;
112 template <
typename T >
116 virtual bool nb_peek( T &t )
const = 0;
117 virtual bool nb_can_peek(
tlm_tag<T> *t = 0 )
const = 0;
121 template <
typename T >
128 template <
typename T >
133 template <
typename T >
139 template <
typename T >
virtual void peek(T &t) const
virtual void transport(const REQ &req, RSP &rsp)
virtual RSP transport(const REQ &)=0