1 #ifndef _ots_IterateTable_h_
2 #define _ots_IterateTable_h_
4 #include "otsdaq/TableCore/TableBase.h"
29 std::vector<CommandTarget> targets_;
30 std::map<std::string , std::string > params_;
33 std::vector<IterateTable::Command> getPlanCommands(
37 static const std::string COMMAND_CHOOSE_FSM;
38 static const std::string COMMAND_CONFIGURE_ACTIVE_GROUP;
39 static const std::string COMMAND_CONFIGURE_ALIAS;
40 static const std::string COMMAND_CONFIGURE_GROUP;
41 static const std::string COMMAND_ACTIVATE_ALIAS;
42 static const std::string COMMAND_ACTIVATE_GROUP;
43 static const std::string COMMAND_EXECUTE_FE_MACRO;
44 static const std::string COMMAND_EXECUTE_MACRO;
45 static const std::string COMMAND_MODIFY_ACTIVE_GROUP;
46 static const std::string COMMAND_REPEAT_LABEL;
47 static const std::string COMMAND_RUN;
48 static const std::string COMMAND_WAIT;
49 static const std::string COMMAND_START;
50 static const std::string COMMAND_STOP;
51 static const std::string COMMAND_PAUSE;
52 static const std::string COMMAND_RESUME;
53 static const std::string COMMAND_HALT;
55 static const std::string ITERATE_TABLE;
56 static const std::string PLAN_TABLE;
57 static const std::string TARGET_TABLE;
59 static const std::map<std::string, std::string> commandToTableMap_;
62 std::map<std::string, std::string> m;
64 m[COMMAND_CHOOSE_FSM] =
"IterationCommandChooseFSMTable";
65 m[COMMAND_CONFIGURE_ACTIVE_GROUP] =
"";
66 m[COMMAND_CONFIGURE_ALIAS] =
"IterationCommandConfigureAliasTable";
67 m[COMMAND_CONFIGURE_GROUP] =
"IterationCommandConfigureGroupTable";
68 m[COMMAND_ACTIVATE_ALIAS] =
"IterationCommandConfigureAliasTable";
69 m[COMMAND_ACTIVATE_GROUP] =
"IterationCommandConfigureGroupTable";
70 m[COMMAND_EXECUTE_FE_MACRO] =
"IterationCommandExecuteFEMacroTable";
71 m[COMMAND_EXECUTE_MACRO] =
"IterationCommandExecuteMacroTable";
72 m[COMMAND_MODIFY_ACTIVE_GROUP] =
"IterationCommandModifyGroupTable";
73 m[COMMAND_REPEAT_LABEL] =
"IterationCommandRepeatLabelTable";
74 m[COMMAND_RUN] =
"IterationCommandRunTable";
75 m[COMMAND_WAIT] =
"IterationCommandRunTable";
76 m[COMMAND_START] =
"";
78 m[COMMAND_PAUSE] =
"";
79 m[COMMAND_RESUME] =
"";
86 const std::string Label_ =
"Label";
87 } commandBeginLabelParams_;
91 } commandChooseFSMParams_;
95 } commandConfigureActiveParams_;
98 const std::string SystemAlias_ =
"SystemAlias";
99 } commandConfigureAliasParams_;
102 const std::string GroupName_ =
"GroupName";
103 const std::string GroupKey_ =
"GroupKey";
104 } commandConfigureGroupParams_;
107 const std::string SystemAlias_ =
"SystemAlias";
108 } commandActivateAliasParams_;
111 const std::string GroupName_ =
"GroupName";
112 const std::string GroupKey_ =
"GroupKey";
113 } commandActivateGroupParams_;
117 const std::string MacroName_ =
"MacroName";
118 const std::string MacroParameterLink_ =
"LinkToMacroDimensionalLoopTable";
119 const std::string EnableSavingOutput_ =
"EnableSavingOutputsToFile";
120 const std::string OutputFilePath_ =
"OutputFilePath";
121 const std::string OutputFileRadix_ =
"OutputFileRadix";
123 const std::string MacroArgumentString_ =
"MacroArgumentString";
126 } commandExecuteMacroParams_;
130 const std::string DoTrackGroupChanges_ =
"DoTrackGroupChanges";
131 const std::string RelativePathToField_ =
"RelativePathToField";
132 const std::string FieldStartValue_ =
"FieldStartValue";
133 const std::string FieldIterationStepSize_ =
"FieldIterationStepSize";
134 } commandModifyActiveParams_;
137 const std::string Label_ =
"Label";
138 const std::string NumberOfRepetitions_ =
"NumberOfRepetitions";
139 } commandRepeatLabelParams_;
142 const std::string WaitOnRunningThreads_ =
"WaitForAllFrontEndsRunningThread";
143 const std::string DurationInSeconds_ =
"DurationInSeconds";
147 const std::string WaitOnRunningThreads_ =
"WaitForAllFrontEndsRunningThread";
148 const std::string DurationInSeconds_ =
"DurationInSeconds";
149 } commandWaitParams_;
153 const std::string Tables_ =
"CSVTargetTables";
154 const std::string UIDs_ =
"CSVTargetUIDs";
158 const std::string TargetsLink_ =
"LinkToTargets";
159 const std::string TargetsLinkGroupID_ =
"LinkToTargetsGroupID";
161 } commandTargetCols_;
164 const std::string GroupID_ =
"IterationTargetGroupID";
165 const std::string TargetLink_ =
"LinkToTarget";
166 const std::string TargetLinkUID_ =
"LinkToTargetUID";
172 const std::string Priority_ =
"DimensionalLoopPriority";
173 const std::string NumberOfIterations_ =
"NumberOfIterations";
174 const std::string ParamLink_ =
"LinkToDimensionalLoopParameterTable";
178 const std::string Name_ =
"ParameterName";
179 const std::string Value_ =
"ParameterInitialValue";
180 const std::string Step_ =
"ParameterStepSize";
195 const std::string PlanLink_ =
"LinkToIterationPlanTable";
200 const std::string Status_ = TableViewColumnInfo::COL_NAME_STATUS;
201 const std::string GroupID_ =
"IterationPlanGroupID";
202 const std::string CommandLink_ =
"LinkToCommandUID";
203 const std::string CommandType_ =
"CommandType";
void init(ConfigurationManager *configManager)
Methods.
static std::map< std::string, std::string > createCommandToTableMap()
static const std::string COMMAND_BEGIN_LABEL
const std::string NameOfFSM_
by default ""
< treat FE and Macro the same
for macro dimensional loop parameters