クラス テンプレート tlm_utils::simple_target_socket_tagged< MODULE, BUSWIDTH, TYPES >

#include <simple_target_socket.h>

tlm_utils::simple_target_socket_tagged< MODULE, BUSWIDTH, TYPES >に対する継承グラフ

Inheritance graph
[凡例]
tlm_utils::simple_target_socket_tagged< MODULE, BUSWIDTH, TYPES >のコラボレーション図

Collaboration graph
[凡例]

すべてのメンバ一覧

Public 型

typedef TYPES::tlm_payload_type transaction_type
typedef TYPES::tlm_phase_type phase_type
typedef tlm::tlm_sync_enum sync_enum_type
typedef
tlm::tlm_fw_transport_if
< TYPES > 
fw_interface_type
typedef
tlm::tlm_bw_transport_if
< TYPES > 
bw_interface_type
typedef tlm::tlm_target_socket
< BUSWIDTH, TYPES > 
base_type

Public メソッド

 simple_target_socket_tagged (const char *n="simple_target_socket_tagged")
tlm::tlm_bw_transport_if< TYPES > * operator-> ()
void register_nb_transport_fw (MODULE *mod, sync_enum_type(MODULE::*cb)(int id, transaction_type &, phase_type &, sc_core::sc_time &), int id)
void register_b_transport (MODULE *mod, void(MODULE::*cb)(int id, transaction_type &, sc_core::sc_time &), int id)
void register_transport_dbg (MODULE *mod, unsigned int(MODULE::*cb)(int id, transaction_type &), int id)
void register_get_direct_mem_ptr (MODULE *mod, bool(MODULE::*cb)(int id, transaction_type &, tlm::tlm_dmi &), int id)

Private メソッド

sync_enum_type bw_nb_transport (transaction_type &trans, phase_type &phase, sc_core::sc_time &t)
void bw_invalidate_direct_mem_ptr (sc_dt::uint64 s, sc_dt::uint64 e)

Private 変数

fw_process m_fw_process
bw_process m_bw_process
std::map< transaction_type
*, sc_core::sc_event * > 
m_pending_trans
sc_core::sc_event m_end_request
transaction_typem_current_transaction

フレンド

class fw_process
class bw_process

構成

class  bw_process
class  fw_process


説明

template<typename MODULE, unsigned int BUSWIDTH = 32, typename TYPES = tlm::tlm_base_protocol_types>
class tlm_utils::simple_target_socket_tagged< MODULE, BUSWIDTH, TYPES >

simple_target_socket.h543 行で定義されています。


型定義

template<typename MODULE, unsigned int BUSWIDTH = 32, typename TYPES = tlm::tlm_base_protocol_types>
typedef TYPES::tlm_payload_type tlm_utils::simple_target_socket_tagged< MODULE, BUSWIDTH, TYPES >::transaction_type

simple_target_socket.h549 行で定義されています。

template<typename MODULE, unsigned int BUSWIDTH = 32, typename TYPES = tlm::tlm_base_protocol_types>
typedef TYPES::tlm_phase_type tlm_utils::simple_target_socket_tagged< MODULE, BUSWIDTH, TYPES >::phase_type

simple_target_socket.h550 行で定義されています。

template<typename MODULE, unsigned int BUSWIDTH = 32, typename TYPES = tlm::tlm_base_protocol_types>
typedef tlm::tlm_sync_enum tlm_utils::simple_target_socket_tagged< MODULE, BUSWIDTH, TYPES >::sync_enum_type

simple_target_socket.h551 行で定義されています。

template<typename MODULE, unsigned int BUSWIDTH = 32, typename TYPES = tlm::tlm_base_protocol_types>
typedef tlm::tlm_fw_transport_if<TYPES> tlm_utils::simple_target_socket_tagged< MODULE, BUSWIDTH, TYPES >::fw_interface_type

tlm::tlm_base_target_socket< BUSWIDTH, FW_IF, BW_IF, N, POL >を再定義しています。

simple_target_socket.h552 行で定義されています。

template<typename MODULE, unsigned int BUSWIDTH = 32, typename TYPES = tlm::tlm_base_protocol_types>
typedef tlm::tlm_bw_transport_if<TYPES> tlm_utils::simple_target_socket_tagged< MODULE, BUSWIDTH, TYPES >::bw_interface_type

tlm::tlm_base_target_socket< BUSWIDTH, FW_IF, BW_IF, N, POL >を再定義しています。

simple_target_socket.h553 行で定義されています。

template<typename MODULE, unsigned int BUSWIDTH = 32, typename TYPES = tlm::tlm_base_protocol_types>
typedef tlm::tlm_target_socket<BUSWIDTH, TYPES> tlm_utils::simple_target_socket_tagged< MODULE, BUSWIDTH, TYPES >::base_type

tlm::tlm_base_target_socket< BUSWIDTH, FW_IF, BW_IF, N, POL >を再定義しています。

simple_target_socket.h554 行で定義されています。


コンストラクタとデストラクタ

template<typename MODULE, unsigned int BUSWIDTH = 32, typename TYPES = tlm::tlm_base_protocol_types>
tlm_utils::simple_target_socket_tagged< MODULE, BUSWIDTH, TYPES >::simple_target_socket_tagged ( const char *  n = "simple_target_socket_tagged< MODULE, BUSWIDTH, TYPES >"  )  [inline, explicit]


関数

template<typename MODULE, unsigned int BUSWIDTH = 32, typename TYPES = tlm::tlm_base_protocol_types>
tlm::tlm_bw_transport_if<TYPES>* tlm_utils::simple_target_socket_tagged< MODULE, BUSWIDTH, TYPES >::operator-> (  )  [inline]

template<typename MODULE, unsigned int BUSWIDTH = 32, typename TYPES = tlm::tlm_base_protocol_types>
void tlm_utils::simple_target_socket_tagged< MODULE, BUSWIDTH, TYPES >::register_nb_transport_fw ( MODULE *  mod,
sync_enum_type(MODULE::*)(int id, transaction_type &, phase_type &, sc_core::sc_time &)  cb,
int  id 
) [inline]

template<typename MODULE, unsigned int BUSWIDTH = 32, typename TYPES = tlm::tlm_base_protocol_types>
void tlm_utils::simple_target_socket_tagged< MODULE, BUSWIDTH, TYPES >::register_b_transport ( MODULE *  mod,
void(MODULE::*)(int id, transaction_type &, sc_core::sc_time &)  cb,
int  id 
) [inline]

template<typename MODULE, unsigned int BUSWIDTH = 32, typename TYPES = tlm::tlm_base_protocol_types>
void tlm_utils::simple_target_socket_tagged< MODULE, BUSWIDTH, TYPES >::register_transport_dbg ( MODULE *  mod,
unsigned int(MODULE::*)(int id, transaction_type &)  cb,
int  id 
) [inline]

template<typename MODULE, unsigned int BUSWIDTH = 32, typename TYPES = tlm::tlm_base_protocol_types>
void tlm_utils::simple_target_socket_tagged< MODULE, BUSWIDTH, TYPES >::register_get_direct_mem_ptr ( MODULE *  mod,
bool(MODULE::*)(int id, transaction_type &, tlm::tlm_dmi &)  cb,
int  id 
) [inline]

template<typename MODULE, unsigned int BUSWIDTH = 32, typename TYPES = tlm::tlm_base_protocol_types>
sync_enum_type tlm_utils::simple_target_socket_tagged< MODULE, BUSWIDTH, TYPES >::bw_nb_transport ( transaction_type trans,
phase_type phase,
sc_core::sc_time &  t 
) [inline, private]

template<typename MODULE, unsigned int BUSWIDTH = 32, typename TYPES = tlm::tlm_base_protocol_types>
void tlm_utils::simple_target_socket_tagged< MODULE, BUSWIDTH, TYPES >::bw_invalidate_direct_mem_ptr ( sc_dt::uint64  s,
sc_dt::uint64  e 
) [inline, private]


フレンドと関連する関数

template<typename MODULE, unsigned int BUSWIDTH = 32, typename TYPES = tlm::tlm_base_protocol_types>
friend class fw_process [friend]

simple_target_socket.h546 行で定義されています。

template<typename MODULE, unsigned int BUSWIDTH = 32, typename TYPES = tlm::tlm_base_protocol_types>
friend class bw_process [friend]

simple_target_socket.h547 行で定義されています。


変数

template<typename MODULE, unsigned int BUSWIDTH = 32, typename TYPES = tlm::tlm_base_protocol_types>
fw_process tlm_utils::simple_target_socket_tagged< MODULE, BUSWIDTH, TYPES >::m_fw_process [private]

template<typename MODULE, unsigned int BUSWIDTH = 32, typename TYPES = tlm::tlm_base_protocol_types>
bw_process tlm_utils::simple_target_socket_tagged< MODULE, BUSWIDTH, TYPES >::m_bw_process [private]

template<typename MODULE, unsigned int BUSWIDTH = 32, typename TYPES = tlm::tlm_base_protocol_types>
std::map<transaction_type*, sc_core::sc_event *> tlm_utils::simple_target_socket_tagged< MODULE, BUSWIDTH, TYPES >::m_pending_trans [private]

template<typename MODULE, unsigned int BUSWIDTH = 32, typename TYPES = tlm::tlm_base_protocol_types>
sc_core::sc_event tlm_utils::simple_target_socket_tagged< MODULE, BUSWIDTH, TYPES >::m_end_request [private]

template<typename MODULE, unsigned int BUSWIDTH = 32, typename TYPES = tlm::tlm_base_protocol_types>
transaction_type* tlm_utils::simple_target_socket_tagged< MODULE, BUSWIDTH, TYPES >::m_current_transaction [private]


このクラスの説明は次のファイルから生成されました:

TLM 2.0に対してWed Jun 11 00:11:03 2008に生成されました。  doxygen 1.5.6