00001 #include "otsdaq-core/ConfigurationPluginDataFormats/UDPDataListenerProducerConfiguration.h"
00002 #include "otsdaq-core/Macros/ConfigurationPluginMacros.h"
00003
00004 #include <iostream>
00005
00006 using namespace ots;
00007
00008
00009 UDPDataListenerProducerConfiguration::UDPDataListenerProducerConfiguration(void)
00010 : ConfigurationBase("UDPDataListenerProducerConfiguration")
00011 {
00013
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028 }
00029
00030
00031 UDPDataListenerProducerConfiguration::~UDPDataListenerProducerConfiguration(void)
00032 {}
00033
00034
00035 void UDPDataListenerProducerConfiguration::init(ConfigurationManager *configManager)
00036 {
00037 std::string processorUID;
00038 for(unsigned int row = 0; row < ConfigurationBase::activeConfigurationView_->getNumberOfRows(); row++)
00039 {
00040 ConfigurationBase::activeConfigurationView_->getValue(processorUID, row, ProcessorID);
00041 processorIDToRowMap_[processorUID] = row;
00042 }
00043 }
00044
00045
00046 unsigned int UDPDataListenerProducerConfiguration::getBufferSize(std::string processorUID) const
00047 {
00048 check(processorUID);
00049 unsigned int val;
00050 ConfigurationBase::activeConfigurationView_->getValue(val, processorIDToRowMap_.find(processorUID)->second, BufferSize);
00051 return val;
00052 }
00053
00054
00055 std::string UDPDataListenerProducerConfiguration::getIPAddress(std::string processorUID) const
00056 {
00057 check(processorUID);
00058 std::string val;
00059 ConfigurationBase::activeConfigurationView_->getValue(val, processorIDToRowMap_.find(processorUID)->second, IPAddress);
00060 return val;
00061 }
00062
00063
00064 unsigned int UDPDataListenerProducerConfiguration::getPort(std::string processorUID) const
00065 {
00066 check(processorUID);
00067 unsigned int val;
00068 ConfigurationBase::activeConfigurationView_->getValue(val, processorIDToRowMap_.find(processorUID)->second, Port);
00069 return val;
00070 }
00071
00072
00073 void UDPDataListenerProducerConfiguration::check(std::string processorUID) const
00074 {
00075 if(processorIDToRowMap_.find(processorUID) == processorIDToRowMap_.end())
00076 {
00077 std::cout << __COUT_HDR_FL__ << "Couldn't find processor " << processorUID << " in the UDPDataStreamerConsumerConfiguration!" << std::endl;
00078 assert(0);
00079 }
00080 }
00081
00082 DEFINE_OTS_CONFIGURATION(UDPDataListenerProducerConfiguration)