DUNE-DAQ
DUNE Trigger and Data Acquisition software
Loading...
Searching...
No Matches
TCMakerPlaneCoincidenceAlgorithm.hpp
Go to the documentation of this file.
1
9#ifndef TRIGGERALGS_PLANECOINCIDENCE_TRIGGERCANDIDATEMAKERPLANECOINCIDENCE_HPP_
10#define TRIGGERALGS_PLANECOINCIDENCE_TRIGGERCANDIDATEMAKERPLANECOINCIDENCE_HPP_
11
14#include <fstream>
15#include <vector>
16
17namespace triggeralgs {
19{
20
21public:
22 // The function that gets called when there is a new activity
23 void process(const TriggerActivity&, std::vector<TriggerCandidate>&);
24 void configure(const nlohmann::json& config);
25
26private:
27
29 bool check_adjacency() const;
30
32 uint64_t m_activity_count = 0; // NOLINT(build/unsigned)
33
34 // Configurable parameters.
35 bool m_trigger_on_adc = false;
37 uint32_t m_adc_threshold = 1200000;
38 uint16_t m_n_channels_threshold = 600; // 80ish for frames, O(200 - 600) for tpslink
40 int tc_number = 0;
41
42 // For debugging and performance study purposes.
43 void add_window_to_record(TAWindow window);
44 void dump_window_record();
45 std::vector<TAWindow> m_window_record;
46};
47} // namespace triggeralgs
48#endif // TRIGGERALGS_PLANECOINCIDENCE_TRIGGERCANDIDATEMAKERPLANECOINCIDENCE_HPP_
void process(const TriggerActivity &, std::vector< TriggerCandidate > &)
TA processing function that creates & fills TCs.
dunedaq::trgdataformats::timestamp_t timestamp_t
Definition Types.hpp:16