$treeview $search $mathjax $extrastylesheet
otsdaq
v2_03_00
$projectbrief
|
$projectbrief
|
$searchbox |
00001 #include <iostream> 00002 #include "otsdaq-core/ConfigurationPluginDataFormats/UDPDataStreamerConsumerTable.h" 00003 #include "otsdaq-coreMacros/TablePluginMacros.h" 00004 00005 using namespace ots; 00006 00007 //============================================================================== 00008 UDPDataStreamerConsumerConfiguration::UDPDataStreamerConsumerConfiguration(void) 00009 : TableBase("UDPDataStreamerConsumerConfiguration") 00010 { 00012 // WARNING: the names and the order MUST match the ones in the enum // 00014 // <?xml version="1.0" encoding="UTF-8" standalone="no" ?> 00015 // <ROOT xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 00016 // xsi:noNamespaceSchemaLocation="TableInfo.xsd"> <CONFIGURATION 00017 // Name="UDPDataStreamerConsumerConfiguration"> <VIEW 00018 // Name="UDP_DATA_LISTENER_PRODUCER_CONFIGURATION" Type="File,Database,DatabaseTest"> 00019 // <COLUMN Name="ProcessorID" StorageName="PROCESSOR_ID" 00020 // DataType="VARCHAR2"/> <COLUMN Name="IPAddress" 00021 // StorageName="IP_ADDRESS" DataType="VARCHAR2"/> <COLUMN 00022 // Name="Port" StorageName="PORT" DataType="NUMBER" /> <COLUMN 00023 // Name="StreamToIPAddress" StorageName="STREAM_TO_IP_ADDRESS" DataType="VARCHAR2"/> 00024 // <COLUMN Name="StreamToPort" StorageName="STREAM_TO_PORT" 00025 // DataType="NUMBER" /> 00026 // </VIEW> 00027 // </CONFIGURATION> 00028 // </ROOT> 00029 } 00030 00031 //============================================================================== 00032 UDPDataStreamerConsumerConfiguration::~UDPDataStreamerConsumerConfiguration(void) {} 00033 00034 //============================================================================== 00035 void UDPDataStreamerConsumerConfiguration::init(ConfigurationManager* configManager) 00036 { 00037 std::string processorUID; 00038 for(unsigned int row = 0; row < TableBase::activeTableView_->getNumberOfRows(); row++) 00039 { 00040 TableBase::activeTableView_->getValue(processorUID, row, ProcessorID); 00041 processorIDToRowMap_[processorUID] = row; 00042 } 00043 } 00044 00045 //============================================================================== 00046 std::string UDPDataStreamerConsumerConfiguration::getIPAddress( 00047 std::string processorUID) const 00048 { 00049 check(processorUID); 00050 std::string val; 00051 TableBase::activeTableView_->getValue( 00052 val, processorIDToRowMap_.find(processorUID)->second, IPAddress); 00053 return val; 00054 } 00055 00056 //============================================================================== 00057 unsigned int UDPDataStreamerConsumerConfiguration::getPort(std::string processorUID) const 00058 { 00059 check(processorUID); 00060 unsigned int val; 00061 TableBase::activeTableView_->getValue( 00062 val, processorIDToRowMap_.find(processorUID)->second, Port); 00063 return val; 00064 } 00065 00066 //============================================================================== 00067 std::string UDPDataStreamerConsumerConfiguration::getStreamToIPAddress( 00068 std::string processorUID) const 00069 { 00070 check(processorUID); 00071 std::string val; 00072 TableBase::activeTableView_->getValue( 00073 val, processorIDToRowMap_.find(processorUID)->second, StreamToIPAddress); 00074 return val; 00075 } 00076 00077 //============================================================================== 00078 unsigned int UDPDataStreamerConsumerConfiguration::getStreamToPort( 00079 std::string processorUID) const 00080 { 00081 check(processorUID); 00082 unsigned int val; 00083 TableBase::activeTableView_->getValue( 00084 val, processorIDToRowMap_.find(processorUID)->second, StreamToPort); 00085 return val; 00086 } 00087 00088 //============================================================================== 00089 void UDPDataStreamerConsumerConfiguration::check(std::string processorUID) const 00090 { 00091 if(processorIDToRowMap_.find(processorUID) == processorIDToRowMap_.end()) 00092 { 00093 std::cout << __COUT_HDR_FL__ << "Couldn't find processor " << processorUID 00094 << " in the UDPDataStreamerConsumerConfiguration!" << std::endl; 00095 assert(0); 00096 } 00097 } 00098 00099 DEFINE_OTS_CONFIGURATION(UDPDataStreamerConsumerConfiguration)