$treeview $search $mathjax $extrastylesheet
artdaq_demo
v3_04_01
$projectbrief
|
$projectbrief
|
$searchbox |
Demonstration TransferInterface plugin showing how to discard events Intended for use in the transfer_to_dispatcher case, NOT for primary data stream! More...
Public Member Functions | |
NthEventTransfer (fhicl::ParameterSet const &ps, artdaq::TransferInterface::Role role) | |
NthEventTransfer Constructor. | |
TransferInterface::CopyStatus | transfer_fragment_min_blocking_mode (artdaq::Fragment const &fragment, size_t send_timeout_usec) override |
Transfer a Fragment to the destination. May not necessarily be reliable, but will not block longer than send_timeout_usec. | |
TransferInterface::CopyStatus | transfer_fragment_reliable_mode (artdaq::Fragment &&fragment) override |
Copy a fragment, using the reliable channel. moveFragment assumes ownership of the fragment. | |
int | receiveFragment (artdaq::Fragment &fragment, size_t receiveTimeout) override |
Receive a fragment from the transfer plugin. | |
int | receiveFragmentHeader (detail::RawFragmentHeader &header, size_t receiveTimeout) override |
Receive a Fragment Header from the transport mechanism. | |
int | receiveFragmentData (RawDataType *destination, size_t wordCount) override |
Receive the body of a Fragment to the given destination pointer. | |
int | source_rank () const override |
Get the source rank from the physical transfer. | |
int | destination_rank () const override |
Get the destination rank from the physical transfer. | |
bool | isRunning () override |
Determine whether the TransferInterface plugin is able to send/receive data. | |
void | flush_buffers () override |
Flush any in-flight data. This should be used by the receiver after the receive loop has ended. |
Demonstration TransferInterface plugin showing how to discard events Intended for use in the transfer_to_dispatcher case, NOT for primary data stream!
Definition at line 28 of file NthEvent_transfer.cc.
artdaq::NthEventTransfer::NthEventTransfer | ( | fhicl::ParameterSet const & | ps, | |
artdaq::TransferInterface::Role | role | |||
) |
NthEventTransfer Constructor.
ps | fhicl::ParameterSet used to configure TransferInterface. Contains "nth", the interval at which events will be transferred, and "physical_transfer_plugin", a table configuring the TransferInterface plugin used for those transfers | |
role | Either kSend or kReceive, see TransferInterface constructor |
Definition at line 126 of file NthEvent_transfer.cc.
int artdaq::NthEventTransfer::destination_rank | ( | ) | const [inline, override] |
Get the destination rank from the physical transfer.
Definition at line 102 of file NthEvent_transfer.cc.
bool artdaq::NthEventTransfer::isRunning | ( | ) | [inline, override] |
Determine whether the TransferInterface plugin is able to send/receive data.
Definition at line 109 of file NthEvent_transfer.cc.
int artdaq::NthEventTransfer::receiveFragment | ( | artdaq::Fragment & | fragment, | |
size_t | receiveTimeout | |||
) | [inline, override] |
Receive a fragment from the transfer plugin.
fragment | Reference to output Fragment object | |
receiveTimeout | Timeout before aborting receive |
Definition at line 63 of file NthEvent_transfer.cc.
int artdaq::NthEventTransfer::receiveFragmentData | ( | RawDataType * | destination, | |
size_t | wordCount | |||
) | [inline, override] |
Receive the body of a Fragment to the given destination pointer.
destination | Pointer to memory region where Fragment data should be stored | |
wordCount | Number of words of Fragment data to receive |
Definition at line 87 of file NthEvent_transfer.cc.
int artdaq::NthEventTransfer::receiveFragmentHeader | ( | detail::RawFragmentHeader & | header, | |
size_t | receiveTimeout | |||
) | [inline, override] |
Receive a Fragment Header from the transport mechanism.
[out] | header | Received Fragment Header |
receiveTimeout | Timeout for receive |
Definition at line 76 of file NthEvent_transfer.cc.
int artdaq::NthEventTransfer::source_rank | ( | ) | const [inline, override] |
Get the source rank from the physical transfer.
Definition at line 96 of file NthEvent_transfer.cc.
TransferInterface::CopyStatus artdaq::NthEventTransfer::transfer_fragment_min_blocking_mode | ( | artdaq::Fragment const & | fragment, | |
size_t | send_timeout_usec | |||
) | [override] |
Transfer a Fragment to the destination. May not necessarily be reliable, but will not block longer than send_timeout_usec.
fragment | Fragment to transfer | |
send_timeout_usec | Timeout for send, in microseconds |
Definition at line 152 of file NthEvent_transfer.cc.
TransferInterface::CopyStatus artdaq::NthEventTransfer::transfer_fragment_reliable_mode | ( | artdaq::Fragment && | fragment | ) | [override] |
Copy a fragment, using the reliable channel. moveFragment assumes ownership of the fragment.
fragment | Fragment to copy |
Definition at line 167 of file NthEvent_transfer.cc.