$treeview $search $mathjax $extrastylesheet
artdaq  v3_04_00
$projectbrief
$projectbrief
$searchbox

artdaq::DataSenderManager Class Reference

Sends Fragment objects using TransferInterface plugins. Uses Routing Tables if confgiured, otherwise will Round-Robin Fragments to the destinations. More...

#include <artdaq/DAQrate/DataSenderManager.hh>

List of all members.

Classes

struct  Config
 Configuration of DataSenderManager. May be used for parameter validation. More...
struct  DestinationsConfig
 Configuration for transfers to destinations. More...
struct  RoutingTableConfig
 Configuration for Routing table reception. More...

Public Member Functions

 DataSenderManager (const fhicl::ParameterSet &ps)
 DataSenderManager Constructor.
virtual ~DataSenderManager ()
 DataSenderManager Destructor.
std::pair< int,
TransferInterface::CopyStatus
sendFragment (Fragment &&frag)
 Send the given Fragment. Return the rank of the destination to which the Fragment was sent.
size_t count () const
 Return the count of Fragment objects sent by this DataSenderManagerq.
size_t slotCount (size_t rank) const
 Get the count of Fragment objects sent by this DataSenderManager to a given destination.
size_t destinationCount () const
 Get the number of configured destinations.
std::set< int > enabled_destinations () const
 Get the list of enabled destinations.
size_t GetRoutingTableEntryCount () const
 Gets the current size of the Routing Table, in case other parts of the system want to use this information.
size_t GetRemainingRoutingTableEntries () const
 Gets the number of sends remaining in the routing table, in case other parts of the system want to use this information.
void StopSender ()
 Stop the DataSenderManager, aborting any sends in progress.

Detailed Description

Sends Fragment objects using TransferInterface plugins. Uses Routing Tables if confgiured, otherwise will Round-Robin Fragments to the destinations.

Definition at line 30 of file DataSenderManager.hh.


Constructor & Destructor Documentation

artdaq::DataSenderManager::DataSenderManager ( const fhicl::ParameterSet &  ps  )  [explicit]

DataSenderManager Constructor.

Parameters:
ps ParameterSet used to configure the DataSenderManager. See artdaq::DataSenderManager::Config

Definition at line 16 of file DataSenderManager.cc.


Member Function Documentation

size_t artdaq::DataSenderManager::count (  )  const [inline]

Return the count of Fragment objects sent by this DataSenderManagerq.

Returns:
The count of Fragment objects sent by this DataSenderManager

Definition at line 201 of file DataSenderManager.hh.

size_t artdaq::DataSenderManager::destinationCount (  )  const [inline]

Get the number of configured destinations.

Returns:
The number of configured destinations

Definition at line 125 of file DataSenderManager.hh.

std::set<int> artdaq::DataSenderManager::enabled_destinations (  )  const [inline]

Get the list of enabled destinations.

Returns:
The list of enabled destiantion ranks

Definition at line 131 of file DataSenderManager.hh.

size_t artdaq::DataSenderManager::GetRemainingRoutingTableEntries (  )  const

Gets the number of sends remaining in the routing table, in case other parts of the system want to use this information.

Returns:
The number of sends remaining in the routing table

Definition at line 359 of file DataSenderManager.cc.

size_t artdaq::DataSenderManager::GetRoutingTableEntryCount (  )  const

Gets the current size of the Routing Table, in case other parts of the system want to use this information.

Returns:
The current size of the Routing Table.

Definition at line 353 of file DataSenderManager.cc.

std::pair< int, artdaq::TransferInterface::CopyStatus > artdaq::DataSenderManager::sendFragment ( Fragment &&  frag  ) 

Send the given Fragment. Return the rank of the destination to which the Fragment was sent.

Parameters:
frag Fragment to sent
Returns:
Pair containing Rank of destination for Fragment and the CopyStatus from the send call

Definition at line 421 of file DataSenderManager.cc.

size_t artdaq::DataSenderManager::slotCount ( size_t  rank  )  const [inline]

Get the count of Fragment objects sent by this DataSenderManager to a given destination.

Parameters:
rank Destination rank to get count for
Returns:
The count of Fragment objects sent by this DataSenderManager to the destination

Definition at line 209 of file DataSenderManager.hh.


The documentation for this class was generated from the following files:

Generated on 5 Mar 2019 for artdaq by  doxygen 1.6.1