pflib v3.12.0-1-g716e801
Pretty Fine HGCROC Interaction Library
Loading...
Searching...
No Matches
zcu_daq.h
1#pragma once
2#include "pflib/DAQ.h"
3#include "pflib/logging/Logging.h"
4#include "pflib/zcu/UIO.h"
5
6namespace pflib {
7namespace zcu {
8
12class ZCU_Capture : public DAQ {
13 public:
14 virtual ~ZCU_Capture() = default;
15 ZCU_Capture(int itarget);
16 virtual void reset() final;
17 virtual int getEventOccupancy() final;
18 virtual void setupLink(int ilink, int l1a_delay,
19 int l1a_capture_width) final {
20 // none of these parameters are relevant for the econd capture,
21 // which is data-pattern based
22 }
23 virtual void getLinkSetup(int ilink, int& l1a_delay,
24 int& l1a_capture_width) final {
25 l1a_delay = -1;
26 l1a_capture_width = -1;
27 }
28 virtual void bufferStatus(int ilink, bool& empty, bool& full) final;
29 virtual void setup(int econid, int samples_per_ror, int soi) final;
30 virtual void enable(bool doenable) final;
31 virtual bool enabled() final;
32 virtual std::vector<uint32_t> getLinkData(int ilink) final;
33 virtual void advanceLinkReadPtr() final;
34 virtual std::map<std::string, uint32_t> get_debug(uint32_t ask) final;
35
36 private:
37 UIO capture_;
38 bool per_econ_;
39 mutable logging::logger the_log_;
40};
41
42} // namespace zcu
43} // namespace pflib
Interface with DAQ via a WishboneInterface.
Definition DAQ.h:19
int soi() const
get the soi
Definition DAQ.cxx:17
int econid() const
get the econid
Definition DAQ.cxx:15
int samples_per_ror() const
get the samples
Definition DAQ.cxx:16
Definition UIO.h:15
Data capture on ZCU when connected with an optical fiber.
Definition zcu_daq.h:12
virtual void setup(int econid, int samples_per_ror, int soi) final
setup overall event information for daq channels
Definition zcu_daq.cxx:83
virtual bool enabled() final
is the readout enabled?
Definition zcu_daq.cxx:101
virtual void getLinkSetup(int ilink, int &l1a_delay, int &l1a_capture_width) final
read link parameters into the passed variables
Definition zcu_daq.h:23
virtual void advanceLinkReadPtr() final
Advance link read pointer.
Definition zcu_daq.cxx:131
virtual void bufferStatus(int ilink, bool &empty, bool &full) final
get empty/full status for the given link and stage
Definition zcu_daq.cxx:78
virtual void enable(bool doenable) final
enable/disable the readout
Definition zcu_daq.cxx:89
virtual void setupLink(int ilink, int l1a_delay, int l1a_capture_width) final
Setup a link.
Definition zcu_daq.h:18
virtual std::vector< uint32_t > getLinkData(int ilink) final
read out link data
Definition zcu_daq.cxx:105
virtual std::map< std::string, uint32_t > get_debug(uint32_t ask) final
get any useful debugging data
Definition zcu_daq.cxx:138
This version of the fast control code interfaces with the CMS Fast control library which can be contr...
Definition Backend.cxx:3
STL namespace.