00001 #define TRACE_NAME "requestReceiver"
00002
00003 #include <boost/program_options.hpp>
00004 #include "fhiclcpp/make_ParameterSet.h"
00005 namespace bpo = boost::program_options;
00006
00007 #include "artdaq/DAQrate/RequestReceiver.hh"
00008 #include "artdaq-core/Utilities/configureMessageFacility.hh"
00009 #include "artdaq/Application/LoadParameterSet.hh"
00010
00011 int main(int argc, char* argv[])
00012 {
00013 artdaq::configureMessageFacility("requestReceiver");
00014
00015 auto pset = LoadParameterSet<artdaq::RequestReceiver::Config>(argc, argv, "receiver", "This is a simple application which listens for Data Request messages and prints their contents");
00016
00017 int rc = 0;
00018
00019 fhicl::ParameterSet tempPset;
00020 if (pset.has_key("request_receiver"))
00021 {
00022 tempPset = pset.get<fhicl::ParameterSet>("request_receiver");
00023 }
00024 else
00025 {
00026 tempPset = pset;
00027 }
00028
00029 artdaq::RequestReceiver recvr(tempPset);
00030 recvr.startRequestReception();
00031
00032 while (true)
00033 {
00034 for (auto req : recvr.GetAndClearRequests())
00035 {
00036 TLOG(TLVL_INFO) << "Received Request for Sequence ID " << req.first << ", timestamp " << req.second ;
00037 }
00038 usleep(10000);
00039 }
00040
00041 return rc;
00042 }