pflib v3.0.0-rc1-29-g3a901ac
Pretty Fine HGCROC Interaction Library
All Classes Namespaces Files Functions Variables Typedefs Pages
FastControl.h
1#ifndef PFLIB_FastControl_H_
2#define PFLIB_FastControl_H_
3
4#include <vector>
5
6namespace pflib {
7
12 public:
17
19 virtual void sendL1A() = 0;
20
22 virtual void linkreset_rocs() = 0;
23
25 virtual void bufferclear() = 0;
26
28 virtual void chargepulse() = 0;
29
31 virtual void ledpulse() = 0;
32
34 virtual void clear_run() { }
35
37 virtual void fc_setup_calib(int pulse_len, int l1a_offset) { }
38
40 virtual void fc_get_setup_calib(int& pulse_len, int& l1a_offset) { }
41
43 virtual void read_counters(int& spill_count, int& header_occ, int& event_count, int& vetoed_counter) { }
44
46 virtual void fc_enables_read(bool& ext_l1a, bool& ext_spill, bool& timer_l1a) { }
47
49 virtual void fc_enables(bool ext_l1a, bool ext_spill, bool timer_l1a) { }
50
52 virtual int fc_timer_setup_read() { return -1; }
53
55 virtual void fc_timer_setup(int usdelay) { }
56
57};
58
59// factories
60FastControl* make_FastControlCMS_MMap();
61
62}
63
64#endif // PFLIB_FastControl_H_
Representation of FastControl controller.
Definition FastControl.h:11
virtual void chargepulse()=0
send a single calib pulse
virtual void read_counters(int &spill_count, int &header_occ, int &event_count, int &vetoed_counter)
read counters from the FC side
Definition FastControl.h:43
virtual void fc_enables_read(bool &ext_l1a, bool &ext_spill, bool &timer_l1a)
check the enables for various trigger/spill sources
Definition FastControl.h:46
virtual std::vector< uint32_t > getCmdCounters()=0
Get the counters for all the different fast control commands.
Definition FastControl.cxx:22
virtual void fc_setup_calib(int pulse_len, int l1a_offset)
calib pulse setup
Definition FastControl.h:37
virtual void fc_timer_setup(int usdelay)
set the period in us for the timer trigger
Definition FastControl.h:55
virtual void bufferclear()=0
send a buffer clear
virtual void clear_run()
reset counters for a new run
Definition FastControl.h:34
virtual void linkreset_rocs()=0
send a link reset
virtual void ledpulse()=0
send a single calib pulse
virtual void fc_enables(bool ext_l1a, bool ext_spill, bool timer_l1a)
set the enables for various trigger/spill sources
Definition FastControl.h:49
virtual int fc_timer_setup_read()
get the period in us for the timer trigger
Definition FastControl.h:52
virtual void sendL1A()=0
send a single L1A
virtual void fc_get_setup_calib(int &pulse_len, int &l1a_offset)
calib pulse setup
Definition FastControl.h:40
This version of the fast control code interfaces with the CMS Fast control library which can be contr...
Definition Backend.cxx:3