artdaq  3.13.00
artdaq::RequestSender Class Reference

The RequestSender contains methods used to send data requests and Routing tokens. More...

#include <artdaq/DAQrate/detail/RequestSender.hh>

Classes

struct  Config
 Configuration of the RequestSender. May be used for parameter validation More...
 

Public Types

using Parameters = fhicl::WrappedTable< Config >
 Used for ParameterSet validation (if desired)
 

Public Member Functions

 RequestSender ()=delete
 Default Constructor is deleted.
 
 RequestSender (RequestSender const &)=delete
 Copy Constructor is deleted.
 
RequestSenderoperator= (RequestSender const &)=delete
 Copy Assignment operator is deleted. More...
 
 RequestSender (RequestSender &&)=delete
 Move Constructor is deleted.
 
RequestSenderoperator= (RequestSender &&)=delete
 Move-assignment operator is deleted.
 
 RequestSender (const fhicl::ParameterSet &pset)
 RequestSender Constructor. More...
 
virtual ~RequestSender ()
 RequestSender Destructor.
 
void SetRequestMode (detail::RequestMessageMode mode)
 Set the mode for RequestMessages. Used to indicate when RequestSender should enter "EndOfRun" mode. More...
 
detail::RequestMessageMode GetRequestMode () const
 Get the mode for RequestMessages. More...
 
void SendRequest (bool endOfRunOnly=false)
 Send a request message containing all current requests. More...
 
void AddRequest (Fragment::sequence_id_t seqID, Fragment::timestamp_t timestamp)
 Add a request to the request list. More...
 
void RemoveRequest (Fragment::sequence_id_t seqID)
 Remove a request from the request list. More...
 
void SetRunNumber (uint32_t run)
 Set the run number to be used in request messages. More...
 
bool RequestsInFlight ()
 Determine if the RequestSender is currently sending any requests. More...
 
size_t GetSentMessageCount ()
 Get the number of requests sent by this RequestSender. More...
 

Detailed Description

The RequestSender contains methods used to send data requests and Routing tokens.

Definition at line 26 of file RequestSender.hh.

Constructor & Destructor Documentation

artdaq::RequestSender::RequestSender ( const fhicl::ParameterSet &  pset)
explicit

RequestSender Constructor.

Parameters
psetParameterSet used to configured RequestSender. See artdaq::RequestSender::Config

Definition at line 23 of file RequestSender.cc.

Member Function Documentation

void artdaq::RequestSender::AddRequest ( Fragment::sequence_id_t  seqID,
Fragment::timestamp_t  timestamp 
)

Add a request to the request list.

Parameters
seqIDSequence ID for request
timestampTimestamp to request

Definition at line 224 of file RequestSender.cc.

detail::RequestMessageMode artdaq::RequestSender::GetRequestMode ( ) const
inline

Get the mode for RequestMessages.

Returns
Current RequestMessageMode of the RequestSender

Definition at line 91 of file RequestSender.hh.

size_t artdaq::RequestSender::GetSentMessageCount ( )
inline

Get the number of requests sent by this RequestSender.

Returns
The number of requests sent

Definition at line 130 of file RequestSender.hh.

RequestSender& artdaq::RequestSender::operator= ( RequestSender const &  )
delete

Copy Assignment operator is deleted.

Returns
RequestSender copy
void artdaq::RequestSender::RemoveRequest ( Fragment::sequence_id_t  seqID)

Remove a request from the request list.

Parameters
seqIDSequence ID of request

Definition at line 248 of file RequestSender.cc.

bool artdaq::RequestSender::RequestsInFlight ( )
inline

Determine if the RequestSender is currently sending any requests.

Returns
True if RequestSender has requests to send

This function is used for testing

Definition at line 124 of file RequestSender.hh.

void artdaq::RequestSender::SendRequest ( bool  endOfRunOnly = false)

Send a request message containing all current requests.

Parameters
endOfRunOnlyWhether the request should only be sent in EndOfRun RequestMessageMode (default: false)

Definition at line 200 of file RequestSender.cc.

void artdaq::RequestSender::SetRequestMode ( detail::RequestMessageMode  mode)

Set the mode for RequestMessages. Used to indicate when RequestSender should enter "EndOfRun" mode.

Parameters
modeMode to set

Definition at line 74 of file RequestSender.cc.

void artdaq::RequestSender::SetRunNumber ( uint32_t  run)
inline

Set the run number to be used in request messages.

Parameters
runRun number

Definition at line 116 of file RequestSender.hh.


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