Trigger Primitive Communication Interface for testing at protoDUNE Brett Viren
with input from Phil, Kurt, Josh Physics Department DAQ DS – 15 Feb 2019
Trigger Primitive Communication Interface for testing at protoDUNE - - PowerPoint PPT Presentation
Trigger Primitive Communication Interface for testing at protoDUNE Brett Viren with input from Phil, Kurt, Josh Physics Department DAQ DS 15 Feb 2019 What we have now (from Kurt) Brett Viren (BNL) TP IPC API 15 Feb 2019 2 / 9 What we
with input from Phil, Kurt, Josh Physics Department DAQ DS – 15 Feb 2019
Brett Viren (BNL) TP IPC API 15 Feb 2019 2 / 9
Brett Viren (BNL) TP IPC API 15 Feb 2019 3 / 9
// TP finder TPSink s(cfg); TPSet tps; while (true) { make_tps(tps); auto rc = s(tps); if (rc) { cerr << "Oops!\n" } } // new TP BR TPSource s(cfg); TPSet tps; while (0 == s(tps)) { // serve TPs to EB }
Brett Viren (BNL) TP IPC API 15 Feb 2019 4 / 9
TPSet with metadata about its TrigPrim’s
detid APA face number or smaller address count sequence each set datatime absolute time measured by det. elec. timespan of all TPs in the set chanspan dittor for channels TrigPrim values self-explanatory
Data rate here is not an issue, room to add more.
Brett Viren (BNL) TP IPC API 15 Feb 2019 5 / 9
Why not just pass individual TrigPrim messages?
packet rate if each TP is sent as one message.
metadata.
read TP data.
Brett Viren (BNL) TP IPC API 15 Feb 2019 6 / 9
Will provide a “PTMP” software package:
Brett Viren (BNL) TP IPC API 15 Feb 2019 7 / 9
Brett Viren (BNL) TP IPC API 15 Feb 2019 8 / 9
Use PUSH/PULL instead of PUB/SUB Make direct sink/source connect, eg between two threads in same app.
Can replace or even remove intervening actors:
These added value/features are for free.
Brett Viren (BNL) TP IPC API 15 Feb 2019 9 / 9