113511Sgabeblack@google.com
213511Sgabeblack@google.comTLM-2.0 standard utilities
313511Sgabeblack@google.com==========================
413511Sgabeblack@google.com
513511Sgabeblack@google.comDir: include/tlm_utils
613511Sgabeblack@google.com
713511Sgabeblack@google.comSubDirs:
813511Sgabeblack@google.com
913511Sgabeblack@google.comFiles: README.txt
1013511Sgabeblack@google.com       instance_specific_extensions.h
1113511Sgabeblack@google.com       multi_passthrough_initiator_socket.h
1213511Sgabeblack@google.com       multi_passthrough_target_socket.h
1313511Sgabeblack@google.com       multi_socket_bases.h
1413511Sgabeblack@google.com       peq_with_get.h
1513511Sgabeblack@google.com       simple_initiator_socket.h
1613511Sgabeblack@google.com       simple_target_socket.h
1713511Sgabeblack@google.com       peq_with_cb_and_phase.h
1813511Sgabeblack@google.com       passthrough_target_socket.h
1913511Sgabeblack@google.com       tlm_quantumkeeper.h
2013511Sgabeblack@google.com
2113511Sgabeblack@google.com
2213511Sgabeblack@google.comComments
2313511Sgabeblack@google.com========
2413511Sgabeblack@google.com
2513511Sgabeblack@google.comThis directory contains a number of ease-of-use and convenience implementations
2613511Sgabeblack@google.comfor the interoperability standard. All objects defined in the header files of
2713511Sgabeblack@google.comthis directory are contained in the tlm_util namespace.
2813511Sgabeblack@google.comThere is no tlm_utils.h header files containing all includes in order to avoid
2913511Sgabeblack@google.comadditional dependencies for TLM 2.0
3013511Sgabeblack@google.com
3113511Sgabeblack@google.comFiles:
3213511Sgabeblack@google.com  simple_initiator_socket.h
3313511Sgabeblack@google.com     version of an initiator socket that has a default implementation of all
3413511Sgabeblack@google.com     interfaces and allows to register an implementation for any of the
3513511Sgabeblack@google.com     interfaces to the socket, either unique interfaces or tagged interfaces
3613511Sgabeblack@google.com     (carrying an additional id)
3713511Sgabeblack@google.com
3813511Sgabeblack@google.com  simple_target_socket.h
3913511Sgabeblack@google.com     version of a target socket that has a default implementation of all
4013511Sgabeblack@google.com     interfaces and allows to register an implementation for any of the
4113511Sgabeblack@google.com     interfaces to the socket, either unique interfaces or tagged interfaces
4213511Sgabeblack@google.com     (carrying an additional id)
4313511Sgabeblack@google.com     This socket allows to register only 1 of the transport interfaces
4413511Sgabeblack@google.com     (blocking or non-blocking) and implements a conversion in case the
4513511Sgabeblack@google.com     socket is used on the other interface
4613511Sgabeblack@google.com
4713511Sgabeblack@google.com  passthrough_target_socket.h
4813511Sgabeblack@google.com     version of a target socket that has a default implementation of all
4913511Sgabeblack@google.com     interfaces and allows to register an implementation for any of the
5013511Sgabeblack@google.com     interfaces to the socket.
5113511Sgabeblack@google.com
5213511Sgabeblack@google.com  multi_passthrough_initiator_socket.h
5313511Sgabeblack@google.com     an implementation of a socket that allows to bind multiple targets to the
5413511Sgabeblack@google.com     same initiator socket. Implements a mechanism to allow to identify in the
5513511Sgabeblack@google.com     backward path through which index of the socket the call passed through
5613511Sgabeblack@google.com
5713511Sgabeblack@google.com  multi_passthrough_target_socket.h
5813511Sgabeblack@google.com     an implementation of a socket that allows to bind multiple initiators to
5913511Sgabeblack@google.com     the same target socket. Implements a mechanism to allow to identify in the
6013511Sgabeblack@google.com     forward path through which index of the socket the call passed through
6113511Sgabeblack@google.com
6213511Sgabeblack@google.com  multi_socket_bases.h
6313511Sgabeblack@google.com     contains base class definitions used by the multi_passthrough sockets
6413511Sgabeblack@google.com
6513511Sgabeblack@google.com  peq_with_get.h
6613511Sgabeblack@google.com     payload event queue (PEQ) implementation using a pull interface.
6713511Sgabeblack@google.com     Has a get_next_transaction API that returns the transaction that is
6813511Sgabeblack@google.com     scheduled in the event queue
6913511Sgabeblack@google.com
7013511Sgabeblack@google.com  peq_with_cb_and_phase.h
7113511Sgabeblack@google.com     another payload event queue, this one with a push interface (callback
7213511Sgabeblack@google.com     mechanism ). Allows to register a callback that will be called whenever
7313511Sgabeblack@google.com     the event in the event queue is triggered, the callback gets transaction
7413511Sgabeblack@google.com     and phase as arguments
7513511Sgabeblack@google.com
7613511Sgabeblack@google.com  instance_specific_extensions.h
7713511Sgabeblack@google.com     is an implementation for adding extentions in the generic payload that
7813511Sgabeblack@google.com     are specific to an instance along the path of a transaction, to allow that
7913511Sgabeblack@google.com     extentions of the same type can be used by the different blocks along
8013511Sgabeblack@google.com     the path of the transaction
8113511Sgabeblack@google.com
8213511Sgabeblack@google.com  tlm_quantumkeeper.h
8313511Sgabeblack@google.com     is an convenience object used to keep track of the local time in
8413511Sgabeblack@google.com     an initiator (how much it has run ahead of the SystemC time), to
8513511Sgabeblack@google.com     synchronize with SystemC time etc.
86