112027Sjungma@eit.uni-kl.de 212027Sjungma@eit.uni-kl.deTLM-2.0 standard utilities 312027Sjungma@eit.uni-kl.de========================== 412027Sjungma@eit.uni-kl.de 512027Sjungma@eit.uni-kl.deDir: include/tlm_utils 612027Sjungma@eit.uni-kl.de 712027Sjungma@eit.uni-kl.deSubDirs: 812027Sjungma@eit.uni-kl.de 912027Sjungma@eit.uni-kl.deFiles: README.txt 1012027Sjungma@eit.uni-kl.de instance_specific_extensions.h 1112027Sjungma@eit.uni-kl.de multi_passthrough_initiator_socket.h 1212027Sjungma@eit.uni-kl.de multi_passthrough_target_socket.h 1312027Sjungma@eit.uni-kl.de multi_socket_bases.h 1412027Sjungma@eit.uni-kl.de peq_with_get.h 1512027Sjungma@eit.uni-kl.de simple_initiator_socket.h 1612027Sjungma@eit.uni-kl.de simple_target_socket.h 1712027Sjungma@eit.uni-kl.de peq_with_cb_and_phase.h 1812027Sjungma@eit.uni-kl.de passthrough_target_socket.h 1912027Sjungma@eit.uni-kl.de tlm_quantumkeeper.h 2012027Sjungma@eit.uni-kl.de 2112027Sjungma@eit.uni-kl.de 2212027Sjungma@eit.uni-kl.deComments 2312027Sjungma@eit.uni-kl.de======== 2412027Sjungma@eit.uni-kl.de 2512027Sjungma@eit.uni-kl.deThis directory contains a number of ease-of-use and convenience implementations 2612027Sjungma@eit.uni-kl.defor the interoperability standard. All objects defined in the header files of 2712027Sjungma@eit.uni-kl.dethis directory are contained in the tlm_util namespace. 2812027Sjungma@eit.uni-kl.deThere is no tlm_utils.h header files containing all includes in order to avoid 2912027Sjungma@eit.uni-kl.deadditional dependencies for TLM 2.0 3012027Sjungma@eit.uni-kl.de 3112027Sjungma@eit.uni-kl.deFiles: 3212027Sjungma@eit.uni-kl.de simple_initiator_socket.h 3312027Sjungma@eit.uni-kl.de version of an initiator socket that has a default implementation of all 3412027Sjungma@eit.uni-kl.de interfaces and allows to register an implementation for any of the 3512027Sjungma@eit.uni-kl.de interfaces to the socket, either unique interfaces or tagged interfaces 3612027Sjungma@eit.uni-kl.de (carrying an additional id) 3712027Sjungma@eit.uni-kl.de 3812027Sjungma@eit.uni-kl.de simple_target_socket.h 3912027Sjungma@eit.uni-kl.de version of a target socket that has a default implementation of all 4012027Sjungma@eit.uni-kl.de interfaces and allows to register an implementation for any of the 4112027Sjungma@eit.uni-kl.de interfaces to the socket, either unique interfaces or tagged interfaces 4212027Sjungma@eit.uni-kl.de (carrying an additional id) 4312027Sjungma@eit.uni-kl.de This socket allows to register only 1 of the transport interfaces 4412027Sjungma@eit.uni-kl.de (blocking or non-blocking) and implements a conversion in case the 4512027Sjungma@eit.uni-kl.de socket is used on the other interface 4612027Sjungma@eit.uni-kl.de 4712027Sjungma@eit.uni-kl.de passthrough_target_socket.h 4812027Sjungma@eit.uni-kl.de version of a target socket that has a default implementation of all 4912027Sjungma@eit.uni-kl.de interfaces and allows to register an implementation for any of the 5012027Sjungma@eit.uni-kl.de interfaces to the socket. 5112027Sjungma@eit.uni-kl.de 5212027Sjungma@eit.uni-kl.de multi_passthrough_initiator_socket.h 5312027Sjungma@eit.uni-kl.de an implementation of a socket that allows to bind multiple targets to the 5412027Sjungma@eit.uni-kl.de same initiator socket. Implements a mechanism to allow to identify in the 5512027Sjungma@eit.uni-kl.de backward path through which index of the socket the call passed through 5612027Sjungma@eit.uni-kl.de 5712027Sjungma@eit.uni-kl.de multi_passthrough_target_socket.h 5812027Sjungma@eit.uni-kl.de an implementation of a socket that allows to bind multiple initiators to 5912027Sjungma@eit.uni-kl.de the same target socket. Implements a mechanism to allow to identify in the 6012027Sjungma@eit.uni-kl.de forward path through which index of the socket the call passed through 6112027Sjungma@eit.uni-kl.de 6212027Sjungma@eit.uni-kl.de multi_socket_bases.h 6312027Sjungma@eit.uni-kl.de contains base class definitions used by the multi_passthrough sockets 6412027Sjungma@eit.uni-kl.de 6512027Sjungma@eit.uni-kl.de peq_with_get.h 6612027Sjungma@eit.uni-kl.de payload event queue (PEQ) implementation using a pull interface. 6712027Sjungma@eit.uni-kl.de Has a get_next_transaction API that returns the transaction that is 6812027Sjungma@eit.uni-kl.de scheduled in the event queue 6912027Sjungma@eit.uni-kl.de 7012027Sjungma@eit.uni-kl.de peq_with_cb_and_phase.h 7112027Sjungma@eit.uni-kl.de another payload event queue, this one with a push interface (callback 7212027Sjungma@eit.uni-kl.de mechanism ). Allows to register a callback that will be called whenever 7312027Sjungma@eit.uni-kl.de the event in the event queue is triggered, the callback gets transaction 7412027Sjungma@eit.uni-kl.de and phase as arguments 7512027Sjungma@eit.uni-kl.de 7612027Sjungma@eit.uni-kl.de instance_specific_extensions.h 7712027Sjungma@eit.uni-kl.de is an implementation for adding extentions in the generic payload that 7812027Sjungma@eit.uni-kl.de are specific to an instance along the path of a transaction, to allow that 7912027Sjungma@eit.uni-kl.de extentions of the same type can be used by the different blocks along 8012027Sjungma@eit.uni-kl.de the path of the transaction 8112027Sjungma@eit.uni-kl.de 8212027Sjungma@eit.uni-kl.de tlm_quantumkeeper.h 8312027Sjungma@eit.uni-kl.de is an convenience object used to keep track of the local time in 8412027Sjungma@eit.uni-kl.de an initiator (how much it has run ahead of the SystemC time), to 8512027Sjungma@eit.uni-kl.de synchronize with SystemC time etc. 86