Draft: more general handling of board and "scouting pipelines"
The needed scone version to handle cases where links from multiple sources are sent to the same scouting board. This MR is needed in order to make scone work with this new firmware structure in scouting-preprocessor!80
The main idea is to have a structure like this in the board configuration parameters
"l1ds_pipelines" : {
"ugt" : {
"sourceIdx" : 0,
"enable" : 1,
"nInputLinks" : 20,
"nRegions" : 5,
"input_link_map" : [0,1,2,3, 4,5,6,7, 8,9,10,11, 12,13,14,15, 16,18,17,19],
"tcp_stream_map" : [0]
},
"calo" : {
"sourceIdx" : 1,
"enable" : 1,
"nInputLinks" : 8,
"nRegions" : 2,
"input_link_map" : [0,1,2,3, 4,5,6,7],
"tcp_stream_map" : [1, 2, 3, 4]
}
},
Examples:
Example 1: configure ugt + calo (simplified)
curl -X POST localhost:8080/v2/vcu128_ugtcalo/0/reset
curl -X POST -H "Content-type: application/json" -d '{"l1ds_pipelines":{"ugt" : {"enable":1}, "calo" : {"enable":1}}}' localhost:8080/v2/vcu128_ugtcalo/0/configure
curl -X POST localhost:8080/v2/vcu128_ugtcalo/0/start
Example 1: configure ugt + calo (complete)
curl -X POST localhost:8080/v2/vcu128_ugtcalo/0/reset
curl -X POST -H "Content-type: application/json" -d '{"l1ds_pipelines":{"ugt" : {"enable":1}, "calo" : {"enable":1}}, "daq_enable":[1,1], "tcp_stream_enable":[1,1,1,1,1], "tcp_daq_map" : [0, 1, 1, 1, 1], "sourceIp":["192.168.1.16", "192.168.2.17"], "destIp":["192.168.1.200", "192.168.2.202"], "sourcePort" : [[10000], [10010, 10020, 10030, 10040]], "destPort" : [[10000], [10000, 10000, 10000, 10000]]}' localhost:8080/v2/vcu128_ugtcalo/0/configure
curl -X POST localhost:8080/v2/vcu128_ugtcalo/0/start
Example 2: only ugt and no calo (simplified)
curl -X POST localhost:8080/v2/vcu128_ugtcalo/0/reset
curl -X POST -H "Content-type: application/json" -d '{"l1ds_pipelines":{"ugt" : {"enable":1}, "calo" : {"enable":0}}}' localhost:8080/v2/vcu128_ugtcalo/0/configure
curl -X POST localhost:8080/v2/vcu128_ugtcalo/0/start
Example 2: only ugt and no calo (complete)
curl -X POST localhost:8080/v2/vcu128_ugtcalo/0/reset
curl -X POST -H "Content-type: application/json" -d '{"l1ds_pipelines":{"ugt" : {"enable":1}, "calo" : {"enable":0}}, "daq_enable":[1,0], "tcp_stream_enable":[1,0,0,0,0], "tcp_daq_map" : [0, 1, 1, 1, 1], "sourceIp":["192.168.1.16", "192.168.2.17"], "destIp":["192.168.1.200", "192.168.2.202"], "sourcePort" : [[10000], [10010, 10020, 10030, 10040]], "destPort" : [[10000], [10000, 10000, 10000, 10000]]}' localhost:8080/v2/vcu128_ugtcalo/0/configure
curl -X POST localhost:8080/v2/vcu128_ugtcalo/0/start