otsdaq  v1_01_03
 All Classes Namespaces Functions
ModuleToFEConfiguration_configuration.cc
1 #include "otsdaq-core/ConfigurationPluginDataFormats/ModuleToFEConfiguration.h"
2 #include "otsdaq-core/Macros/ConfigurationPluginMacros.h"
3 
4 #include <iostream>
5 
6 using namespace ots;
7 
8 //==============================================================================
9 ModuleToFEConfiguration::ModuleToFEConfiguration(void)
10 : ConfigurationBase("ModuleToFEConfiguration")
11 {
13  //WARNING: the names and the order MUST match the ones in the enum //
15  //ModuleToFEConfigurationInfo.xml
16  //<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
17  //<ROOT xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="ConfigurationInfo.xsd">
18  // <CONFIGURATION Name="ModuleToFEConfiguration">
19  // <VIEW Name="MODULE_TO_FE_CONFIGURATION" Type="File,Database,DatabaseTest">
20  // <COLUMN Name="ModuleName" StorageName="MODULE_NAME" DataType="VARCHAR2" />
21  // <COLUMN Name="ModuleType" StorageName="MODULE_TYPE" DataType="VARCHAR2" />
22  // <COLUMN Name="FEWName" StorageName="FEW_NAME" DataType="NUMBER" />
23  // <COLUMN Name="FEWType" StorageName="FEW_TYPE" DataType="VARCHAR2" />
24  // <COLUMN Name="FERName" StorageName="FER_NAME" DataType="NUMBER" />
25  // <COLUMN Name="FERType" StorageName="FER_TYPE" DataType="VARCHAR2" />
26  // </VIEW>
27  // </CONFIGURATION>
28  //</ROOT>
29 
30 }
31 
32 //==============================================================================
33 ModuleToFEConfiguration::~ModuleToFEConfiguration(void)
34 {
35 }
36 
37 //==============================================================================
38 void ModuleToFEConfiguration::init(ConfigurationManager *configManager)
39 {
40  /*
41 std::string enumValue1;
42  unsigned int enumValue2;
43  for(unsigned int row=0; row<ConfigurationBase::activeConfigurationView_->getNumberOfRows(); row++)
44  {
45  ConfigurationBase::activeConfigurationView_->getValue(enumValue1,row,Enum1);
46  ConfigurationBase::activeConfigurationView_->getValue(enumValue2,row,Enum2);
47  }
48  */
49 }
50 
51 //==============================================================================
52 std::list<std::string> ModuleToFEConfiguration::getFEWModulesList(unsigned int FEWNumber) const
53 {
54  std::string moduleName;
55  unsigned int tmpFEW;
56  std::list<std::string> list;
57  for(unsigned int row=0; row<ConfigurationBase::activeConfigurationView_->getNumberOfRows(); row++)
58  {
59  ConfigurationBase::activeConfigurationView_->getValue(tmpFEW,row,FEWName);
60  if(tmpFEW == FEWNumber)
61  {
62  ConfigurationBase::activeConfigurationView_->getValue(moduleName,row,ModuleName);
63  list.push_back(moduleName);
64  }
65  }
66  return list;
67 }
68 
69 //==============================================================================
70 std::list<std::string> ModuleToFEConfiguration::getFERModulesList(unsigned int FERNumber) const
71 {
72  std::string moduleName;
73  unsigned int tmpFER;
74  std::list<std::string> list;
75  for(unsigned int row=0; row<ConfigurationBase::activeConfigurationView_->getNumberOfRows(); row++)
76  {
77  ConfigurationBase::activeConfigurationView_->getValue(tmpFER,row,FERName);
78  if(tmpFER == FERNumber)
79  {
80  ConfigurationBase::activeConfigurationView_->getValue(moduleName,row,ModuleName);
81  list.push_back(moduleName);
82  }
83  }
84  return list;
85 }
86 
87 DEFINE_OTS_CONFIGURATION(ModuleToFEConfiguration)