DUNE-DAQ
DUNE Trigger and Data Acquisition software
Loading...
Searching...
No Matches
dunedaq::appmodel::FEMBSettings Class Reference

#include <FEMBSettings.hpp>

Inheritance diagram for dunedaq::appmodel::FEMBSettings:
[legend]
Collaboration diagram for dunedaq::appmodel::FEMBSettings:
[legend]

Public Member Functions

virtual void print (unsigned int offset, bool print_header, std::ostream &s) const
 Print details of the FEMBSettings object.
 
virtual std::vector< const dunedaq::conffwk::DalObject * > get (const std::string &name, bool upcast_unregistered=true) const
 Get values of relationships and results of some algorithms as a vector of dunedaq::conffwk::DalObject pointers.
 
bool get_enabled () const
 Get "enabled" attribute value. True of FEMB should be configured and read out by WIB.
 
void set_enabled (bool value)
 Set "enabled" attribute value. True of FEMB should be configured and read out by WIB.
 
bool get_test_cap () const
 Get "test_cap" attribute value. Enable the test capacitor.
 
void set_test_cap (bool value)
 Set "test_cap" attribute value. Enable the test capacitor.
 
uint8_t get_gain () const
 Get "gain" attribute value. Channel gain selector: 14, 25, 7.8, 4.7 mV/fC (0 - 3)
 
void set_gain (uint8_t value)
 Set "gain" attribute value. Channel gain selector: 14, 25, 7.8, 4.7 mV/fC (0 - 3)
 
uint8_t get_peak_time () const
 Get "peak_time" attribute value. Channel peak time selector: 1.0, 0.5, 3, 2 us (0 - 3)
 
void set_peak_time (uint8_t value)
 Set "peak_time" attribute value. Channel peak time selector: 1.0, 0.5, 3, 2 us (0 - 3)
 
uint8_t get_baseline () const
 Get "baseline" attribute value. Baseline selector: 0 (900 mV), 1 (200 mV), 2 (200 mV collection, 900 mV induction)
 
void set_baseline (uint8_t value)
 Set "baseline" attribute value. Baseline selector: 0 (900 mV), 1 (200 mV), 2 (200 mV collection, 900 mV induction)
 
uint8_t get_pulse_dac () const
 Get "pulse_dac" attribute value. Pulser DAC setting [0-63].
 
void set_pulse_dac (uint8_t value)
 Set "pulse_dac" attribute value. Pulser DAC setting [0-63].
 
bool get_gain_match () const
 Get "gain_match" attribute value. Enable pulser DAC gain matching.
 
void set_gain_match (bool value)
 Set "gain_match" attribute value. Enable pulser DAC gain matching.
 
uint8_t get_leak () const
 Get "leak" attribute value. Leak current selector: 0 (500 pA), 1 (100 pA)
 
void set_leak (uint8_t value)
 Set "leak" attribute value. Leak current selector: 0 (500 pA), 1 (100 pA)
 
bool get_leak_10x () const
 Get "leak_10x" attribute value. Multiply leak current by 10 if true.
 
void set_leak_10x (bool value)
 Set "leak_10x" attribute value. Multiply leak current by 10 if true.
 
bool get_ac_couple () const
 Get "ac_couple" attribute value. false (DC coupling), true (AC coupling)
 
void set_ac_couple (bool value)
 Set "ac_couple" attribute value. false (DC coupling), true (AC coupling)
 
uint8_t get_buffering () const
 Get "buffering" attribute value. 0 (no buffer), 1 (se buffer), 2 (sedc buffer)
 
void set_buffering (uint8_t value)
 Set "buffering" attribute value. 0 (no buffer), 1 (se buffer), 2 (sedc buffer)
 
uint8_t get_strobe_skip () const
 Get "strobe_skip" attribute value. 2MHz periods to skip after strobe (pulser period 0-255)
 
void set_strobe_skip (uint8_t value)
 Set "strobe_skip" attribute value. 2MHz periods to skip after strobe (pulser period 0-255)
 
uint8_t get_strobe_delay () const
 Get "strobe_delay" attribute value. 64MHz periods to skip after 2MHz edge for strobe (pulser offset 0-255)
 
void set_strobe_delay (uint8_t value)
 Set "strobe_delay" attribute value. 64MHz periods to skip after 2MHz edge for strobe (pulser offset 0-255)
 
uint8_t get_strobe_length () const
 Get "strobe_length" attribute value. Length of strobe in 64MHz periods (pulser length 0-255)
 
void set_strobe_length (uint8_t value)
 Set "strobe_length" attribute value. Length of strobe in 64MHz periods (pulser length 0-255)
 
const std::vector< uint8_t > & get_line_driver () const
 Get "line_driver" attribute value. 0 (Default), 1 (Short), 2 (25 m warm), 3 (35 m warm), 4 (25 m cold), 5 (35 m cold). Can submit up to 2 values for the two COLDATA.
 
void set_line_driver (const std::vector< uint8_t > &value)
 Set "line_driver" attribute value. 0 (Default), 1 (Short), 2 (25 m warm), 3 (35 m warm), 4 (25 m cold), 5 (35 m cold). Can submit up to 2 values for the two COLDATA.
 
const std::vector< bool > & get_pulse_channels () const
 Get "pulse_channels" attribute value. Array of up to 16 true/false values, for whether to send pulser to each corresponding channel per LArASIC.
 
void set_pulse_channels (const std::vector< bool > &value)
 Set "pulse_channels" attribute value. Array of up to 16 true/false values, for whether to send pulser to each corresponding channel per LArASIC.
 
virtual void print (unsigned int offset, bool print_header, std::ostream &s) const
 Print details of the FEMBSettings object.
 
virtual std::vector< const dunedaq::conffwk::DalObject * > get (const std::string &name, bool upcast_unregistered=true) const
 Get values of relationships and results of some algorithms as a vector of dunedaq::conffwk::DalObject pointers.
 
bool get_enabled () const
 Get "enabled" attribute value. True of FEMB should be configured and read out by WIB.
 
void set_enabled (bool value)
 Set "enabled" attribute value. True of FEMB should be configured and read out by WIB.
 
bool get_test_cap () const
 Get "test_cap" attribute value. Enable the test capacitor.
 
void set_test_cap (bool value)
 Set "test_cap" attribute value. Enable the test capacitor.
 
uint8_t get_gain () const
 Get "gain" attribute value. Channel gain selector: 14, 25, 7.8, 4.7 mV/fC (0 - 3)
 
void set_gain (uint8_t value)
 Set "gain" attribute value. Channel gain selector: 14, 25, 7.8, 4.7 mV/fC (0 - 3)
 
uint8_t get_peak_time () const
 Get "peak_time" attribute value. Channel peak time selector: 1.0, 0.5, 3, 2 us (0 - 3)
 
void set_peak_time (uint8_t value)
 Set "peak_time" attribute value. Channel peak time selector: 1.0, 0.5, 3, 2 us (0 - 3)
 
uint8_t get_baseline () const
 Get "baseline" attribute value. Baseline selector: 0 (900 mV), 1 (200 mV), 2 (200 mV collection, 900 mV induction)
 
void set_baseline (uint8_t value)
 Set "baseline" attribute value. Baseline selector: 0 (900 mV), 1 (200 mV), 2 (200 mV collection, 900 mV induction)
 
uint8_t get_pulse_dac () const
 Get "pulse_dac" attribute value. Pulser DAC setting [0-63].
 
void set_pulse_dac (uint8_t value)
 Set "pulse_dac" attribute value. Pulser DAC setting [0-63].
 
bool get_gain_match () const
 Get "gain_match" attribute value. Enable pulser DAC gain matching.
 
void set_gain_match (bool value)
 Set "gain_match" attribute value. Enable pulser DAC gain matching.
 
uint8_t get_leak () const
 Get "leak" attribute value. Leak current selector: 0 (500 pA), 1 (100 pA)
 
void set_leak (uint8_t value)
 Set "leak" attribute value. Leak current selector: 0 (500 pA), 1 (100 pA)
 
bool get_leak_10x () const
 Get "leak_10x" attribute value. Multiply leak current by 10 if true.
 
void set_leak_10x (bool value)
 Set "leak_10x" attribute value. Multiply leak current by 10 if true.
 
bool get_ac_couple () const
 Get "ac_couple" attribute value. false (DC coupling), true (AC coupling)
 
void set_ac_couple (bool value)
 Set "ac_couple" attribute value. false (DC coupling), true (AC coupling)
 
uint8_t get_buffering () const
 Get "buffering" attribute value. 0 (no buffer), 1 (se buffer), 2 (sedc buffer)
 
void set_buffering (uint8_t value)
 Set "buffering" attribute value. 0 (no buffer), 1 (se buffer), 2 (sedc buffer)
 
uint8_t get_strobe_skip () const
 Get "strobe_skip" attribute value. 2MHz periods to skip after strobe (pulser period 0-255)
 
void set_strobe_skip (uint8_t value)
 Set "strobe_skip" attribute value. 2MHz periods to skip after strobe (pulser period 0-255)
 
uint8_t get_strobe_delay () const
 Get "strobe_delay" attribute value. 64MHz periods to skip after 2MHz edge for strobe (pulser offset 0-255)
 
void set_strobe_delay (uint8_t value)
 Set "strobe_delay" attribute value. 64MHz periods to skip after 2MHz edge for strobe (pulser offset 0-255)
 
uint8_t get_strobe_length () const
 Get "strobe_length" attribute value. Length of strobe in 64MHz periods (pulser length 0-255)
 
void set_strobe_length (uint8_t value)
 Set "strobe_length" attribute value. Length of strobe in 64MHz periods (pulser length 0-255)
 
const std::vector< uint8_t > & get_line_driver () const
 Get "line_driver" attribute value. 0 (Default), 1 (Short), 2 (25 m warm), 3 (35 m warm), 4 (25 m cold), 5 (35 m cold). Can submit up to 2 values for the two COLDATA.
 
void set_line_driver (const std::vector< uint8_t > &value)
 Set "line_driver" attribute value. 0 (Default), 1 (Short), 2 (25 m warm), 3 (35 m warm), 4 (25 m cold), 5 (35 m cold). Can submit up to 2 values for the two COLDATA.
 
const std::vector< bool > & get_pulse_channels () const
 Get "pulse_channels" attribute value. Array of up to 16 true/false values, for whether to send pulser to each corresponding channel per LArASIC.
 
void set_pulse_channels (const std::vector< bool > &value)
 Set "pulse_channels" attribute value. Array of up to 16 true/false values, for whether to send pulser to each corresponding channel per LArASIC.
 
- Public Member Functions inherited from dunedaq::conffwk::DalObject
const std::string & UID () const noexcept
 
const std::string & class_name () const noexcept
 
bool castable (const std::string &target) const noexcept
 
bool castable (const std::string *target) const noexcept
 
template<class TARGET >
const TARGET * cast () const noexcept
 Casts object to different class.
 
std::string full_name () const noexcept
 
const ConfigObjectconfig_object () const
 
DalRegistryregistry () const noexcept
 
Configurationconfiguration () const noexcept
 
void unread ()
 
void set (const ConfigObject &o) noexcept
 
void move (const std::string &at)
 
void rename (const std::string &new_id)
 
void p_hdr (std::ostream &s, unsigned int indent, const std::string &cl, const char *nm=nullptr) const
 print object headers
 
std::ostream & print_object (std::ostream &s) const
 print object details
 
void throw_init_ex (dunedaq::conffwk::Exception &ex)
 throw object initialisation exception (i.e.
 

Static Public Member Functions

static const std::string & __get_enabled_str () noexcept
 
static const std::string & __get_test_cap_str () noexcept
 
static const std::string & __get_gain_str () noexcept
 
static const std::string & __get_peak_time_str () noexcept
 
static const std::string & __get_baseline_str () noexcept
 
static const std::string & __get_pulse_dac_str () noexcept
 
static const std::string & __get_gain_match_str () noexcept
 
static const std::string & __get_leak_str () noexcept
 
static const std::string & __get_leak_10x_str () noexcept
 
static const std::string & __get_ac_couple_str () noexcept
 
static const std::string & __get_buffering_str () noexcept
 
static const std::string & __get_strobe_skip_str () noexcept
 
static const std::string & __get_strobe_delay_str () noexcept
 
static const std::string & __get_strobe_length_str () noexcept
 
static const std::string & __get_line_driver_str () noexcept
 
static const std::string & __get_pulse_channels_str () noexcept
 
static const std::string & __get_enabled_str () noexcept
 
static const std::string & __get_test_cap_str () noexcept
 
static const std::string & __get_gain_str () noexcept
 
static const std::string & __get_peak_time_str () noexcept
 
static const std::string & __get_baseline_str () noexcept
 
static const std::string & __get_pulse_dac_str () noexcept
 
static const std::string & __get_gain_match_str () noexcept
 
static const std::string & __get_leak_str () noexcept
 
static const std::string & __get_leak_10x_str () noexcept
 
static const std::string & __get_ac_couple_str () noexcept
 
static const std::string & __get_buffering_str () noexcept
 
static const std::string & __get_strobe_skip_str () noexcept
 
static const std::string & __get_strobe_delay_str () noexcept
 
static const std::string & __get_strobe_length_str () noexcept
 
static const std::string & __get_line_driver_str () noexcept
 
static const std::string & __get_pulse_channels_str () noexcept
 
- Static Public Member Functions inherited from dunedaq::conffwk::DalObject
static void p_null (std::ostream &s)
 print "(null)"
 
static void p_rm (std::ostream &s)
 print "(deleted object)"
 
static void p_error (std::ostream &s, dunedaq::conffwk::Exception &ex)
 print error text
 
static void throw_get_ex (const std::string &what, const std::string &class_name, const DalObject *obj)
 throw exception in generated get method (i.e.
 
static bool is_null (const DalObject *ref) noexcept
 check a pointer on DAL object is null
 

Static Public Attributes

static const std::string & s_class_name
 
static const std::string s_enabled = "enabled"
 
static const std::string s_test_cap = "test_cap"
 
static const std::string s_gain = "gain"
 
static const std::string s_peak_time = "peak_time"
 
static const std::string s_baseline = "baseline"
 
static const std::string s_pulse_dac = "pulse_dac"
 
static const std::string s_gain_match = "gain_match"
 
static const std::string s_leak = "leak"
 
static const std::string s_leak_10x = "leak_10x"
 
static const std::string s_ac_couple = "ac_couple"
 
static const std::string s_buffering = "buffering"
 
static const std::string s_strobe_skip = "strobe_skip"
 
static const std::string s_strobe_delay = "strobe_delay"
 
static const std::string s_strobe_length = "strobe_length"
 
static const std::string s_line_driver = "line_driver"
 
static const std::string s_pulse_channels = "pulse_channels"
 

Protected Member Functions

 FEMBSettings (conffwk::DalRegistry &db, const conffwk::ConfigObject &obj) noexcept
 
virtual ~FEMBSettings () noexcept
 
virtual void init (bool init_children)
 
bool get (const std::string &name, std::vector< const dunedaq::conffwk::DalObject * > &vec, bool upcast_unregistered, bool first_call) const
 
 FEMBSettings (conffwk::DalRegistry &db, const conffwk::ConfigObject &obj) noexcept
 
virtual ~FEMBSettings () noexcept
 
virtual void init (bool init_children)
 
bool get (const std::string &name, std::vector< const dunedaq::conffwk::DalObject * > &vec, bool upcast_unregistered, bool first_call) const
 
- Protected Member Functions inherited from dunedaq::conffwk::DalObject
 DalObject (DalRegistry &db, const ConfigObject &o) noexcept
 
virtual ~DalObject ()
 
void clear () noexcept
 
void check () const
 
bool is_deleted () const
 
void increment_created () noexcept
 
void increment_read () noexcept
 
void check_init () const
 Check and initialize object if necessary.
 
template<typename T >
void _set_object (const std::string &name, const T *value)
 Helper method for generated set single-value relationship methods.
 
template<typename T >
void _set_objects (const std::string &name, const std::vector< const T * > &value)
 Helper method for generated set multi-value relationship methods.
 
bool get_rel_objects (const std::string &name, bool upcast_unregistered, std::vector< const DalObject * > &objs) const
 Read relationship values as DAL objects using DAL factory.
 
bool get_algo_objects (const std::string &name, std::vector< const DalObject * > &objs) const
 Run algorithm and return result as DAL objects using DAL factory.
 

Private Attributes

bool m_enabled
 
bool m_test_cap
 
uint8_t m_gain
 
uint8_t m_peak_time
 
uint8_t m_baseline
 
uint8_t m_pulse_dac
 
bool m_gain_match
 
uint8_t m_leak
 
bool m_leak_10x
 
bool m_ac_couple
 
uint8_t m_buffering
 
uint8_t m_strobe_skip
 
uint8_t m_strobe_delay
 
uint8_t m_strobe_length
 
std::vector< uint8_t > m_line_driver
 
std::vector< bool > m_pulse_channels
 

Friends

class conffwk::Configuration
 
class conffwk::DalObject
 
class conffwk::DalFactory
 
class conffwk::DalRegistry
 

Additional Inherited Members

- Protected Attributes inherited from dunedaq::conffwk::DalObject
std::mutex m_mutex
 Used to protect changes of DAL object.
 
bool p_was_read
 is true, if the object was read
 
DalRegistryp_registry
 Configuration object.
 
ConfigObject p_obj
 Config object used by given template object.
 
std::string p_UID
 Is used for template objects (see dqm_conffwk)
 

Detailed Description

Definition at line 20 of file FEMBSettings.hpp.

Constructor & Destructor Documentation

◆ FEMBSettings() [1/2]

dunedaq::appmodel::FEMBSettings::FEMBSettings ( conffwk::DalRegistry & db,
const conffwk::ConfigObject & obj )
protectednoexcept

Definition at line 26 of file FEMBSettings.cpp.

26 :
28 {
29 ;
30 }
The base class for any generated DAL object.
Definition DalObject.hpp:45

◆ ~FEMBSettings() [1/2]

dunedaq::appmodel::FEMBSettings::~FEMBSettings ( )
protectedvirtualnoexcept

Definition at line 98 of file FEMBSettings.cpp.

99 {
100 }

◆ FEMBSettings() [2/2]

dunedaq::appmodel::FEMBSettings::FEMBSettings ( conffwk::DalRegistry & db,
const conffwk::ConfigObject & obj )
protectednoexcept

◆ ~FEMBSettings() [2/2]

virtual dunedaq::appmodel::FEMBSettings::~FEMBSettings ( )
protectedvirtualnoexcept

Member Function Documentation

◆ __get_ac_couple_str() [1/2]

static const std::string & dunedaq::appmodel::FEMBSettings::__get_ac_couple_str ( )
inlinestaticnoexcept

Definition at line 119 of file FEMBSettings.hpp.

119{ return s_ac_couple; }
static const std::string s_ac_couple

◆ __get_ac_couple_str() [2/2]

static const std::string & dunedaq::appmodel::FEMBSettings::__get_ac_couple_str ( )
inlinestaticnoexcept

Definition at line 119 of file FEMBSettings.hpp.

119{ return s_ac_couple; }

◆ __get_baseline_str() [1/2]

static const std::string & dunedaq::appmodel::FEMBSettings::__get_baseline_str ( )
inlinestaticnoexcept

Definition at line 114 of file FEMBSettings.hpp.

114{ return s_baseline; }
static const std::string s_baseline

◆ __get_baseline_str() [2/2]

static const std::string & dunedaq::appmodel::FEMBSettings::__get_baseline_str ( )
inlinestaticnoexcept

Definition at line 114 of file FEMBSettings.hpp.

114{ return s_baseline; }

◆ __get_buffering_str() [1/2]

static const std::string & dunedaq::appmodel::FEMBSettings::__get_buffering_str ( )
inlinestaticnoexcept

Definition at line 120 of file FEMBSettings.hpp.

120{ return s_buffering; }
static const std::string s_buffering

◆ __get_buffering_str() [2/2]

static const std::string & dunedaq::appmodel::FEMBSettings::__get_buffering_str ( )
inlinestaticnoexcept

Definition at line 120 of file FEMBSettings.hpp.

120{ return s_buffering; }

◆ __get_enabled_str() [1/2]

static const std::string & dunedaq::appmodel::FEMBSettings::__get_enabled_str ( )
inlinestaticnoexcept

Definition at line 110 of file FEMBSettings.hpp.

110{ return s_enabled; }
static const std::string s_enabled

◆ __get_enabled_str() [2/2]

static const std::string & dunedaq::appmodel::FEMBSettings::__get_enabled_str ( )
inlinestaticnoexcept

Definition at line 110 of file FEMBSettings.hpp.

110{ return s_enabled; }

◆ __get_gain_match_str() [1/2]

static const std::string & dunedaq::appmodel::FEMBSettings::__get_gain_match_str ( )
inlinestaticnoexcept

Definition at line 116 of file FEMBSettings.hpp.

116{ return s_gain_match; }
static const std::string s_gain_match

◆ __get_gain_match_str() [2/2]

static const std::string & dunedaq::appmodel::FEMBSettings::__get_gain_match_str ( )
inlinestaticnoexcept

Definition at line 116 of file FEMBSettings.hpp.

116{ return s_gain_match; }

◆ __get_gain_str() [1/2]

static const std::string & dunedaq::appmodel::FEMBSettings::__get_gain_str ( )
inlinestaticnoexcept

Definition at line 112 of file FEMBSettings.hpp.

112{ return s_gain; }
static const std::string s_gain

◆ __get_gain_str() [2/2]

static const std::string & dunedaq::appmodel::FEMBSettings::__get_gain_str ( )
inlinestaticnoexcept

Definition at line 112 of file FEMBSettings.hpp.

112{ return s_gain; }

◆ __get_leak_10x_str() [1/2]

static const std::string & dunedaq::appmodel::FEMBSettings::__get_leak_10x_str ( )
inlinestaticnoexcept

Definition at line 118 of file FEMBSettings.hpp.

118{ return s_leak_10x; }
static const std::string s_leak_10x

◆ __get_leak_10x_str() [2/2]

static const std::string & dunedaq::appmodel::FEMBSettings::__get_leak_10x_str ( )
inlinestaticnoexcept

Definition at line 118 of file FEMBSettings.hpp.

118{ return s_leak_10x; }

◆ __get_leak_str() [1/2]

static const std::string & dunedaq::appmodel::FEMBSettings::__get_leak_str ( )
inlinestaticnoexcept

Definition at line 117 of file FEMBSettings.hpp.

117{ return s_leak; }
static const std::string s_leak

◆ __get_leak_str() [2/2]

static const std::string & dunedaq::appmodel::FEMBSettings::__get_leak_str ( )
inlinestaticnoexcept

Definition at line 117 of file FEMBSettings.hpp.

117{ return s_leak; }

◆ __get_line_driver_str() [1/2]

static const std::string & dunedaq::appmodel::FEMBSettings::__get_line_driver_str ( )
inlinestaticnoexcept

Definition at line 124 of file FEMBSettings.hpp.

124{ return s_line_driver; }
static const std::string s_line_driver

◆ __get_line_driver_str() [2/2]

static const std::string & dunedaq::appmodel::FEMBSettings::__get_line_driver_str ( )
inlinestaticnoexcept

Definition at line 124 of file FEMBSettings.hpp.

124{ return s_line_driver; }

◆ __get_peak_time_str() [1/2]

static const std::string & dunedaq::appmodel::FEMBSettings::__get_peak_time_str ( )
inlinestaticnoexcept

Definition at line 113 of file FEMBSettings.hpp.

113{ return s_peak_time; }
static const std::string s_peak_time

◆ __get_peak_time_str() [2/2]

static const std::string & dunedaq::appmodel::FEMBSettings::__get_peak_time_str ( )
inlinestaticnoexcept

Definition at line 113 of file FEMBSettings.hpp.

113{ return s_peak_time; }

◆ __get_pulse_channels_str() [1/2]

static const std::string & dunedaq::appmodel::FEMBSettings::__get_pulse_channels_str ( )
inlinestaticnoexcept

Definition at line 125 of file FEMBSettings.hpp.

125{ return s_pulse_channels; }
static const std::string s_pulse_channels

◆ __get_pulse_channels_str() [2/2]

static const std::string & dunedaq::appmodel::FEMBSettings::__get_pulse_channels_str ( )
inlinestaticnoexcept

Definition at line 125 of file FEMBSettings.hpp.

125{ return s_pulse_channels; }

◆ __get_pulse_dac_str() [1/2]

static const std::string & dunedaq::appmodel::FEMBSettings::__get_pulse_dac_str ( )
inlinestaticnoexcept

Definition at line 115 of file FEMBSettings.hpp.

115{ return s_pulse_dac; }
static const std::string s_pulse_dac

◆ __get_pulse_dac_str() [2/2]

static const std::string & dunedaq::appmodel::FEMBSettings::__get_pulse_dac_str ( )
inlinestaticnoexcept

Definition at line 115 of file FEMBSettings.hpp.

115{ return s_pulse_dac; }

◆ __get_strobe_delay_str() [1/2]

static const std::string & dunedaq::appmodel::FEMBSettings::__get_strobe_delay_str ( )
inlinestaticnoexcept

Definition at line 122 of file FEMBSettings.hpp.

122{ return s_strobe_delay; }
static const std::string s_strobe_delay

◆ __get_strobe_delay_str() [2/2]

static const std::string & dunedaq::appmodel::FEMBSettings::__get_strobe_delay_str ( )
inlinestaticnoexcept

Definition at line 122 of file FEMBSettings.hpp.

122{ return s_strobe_delay; }

◆ __get_strobe_length_str() [1/2]

static const std::string & dunedaq::appmodel::FEMBSettings::__get_strobe_length_str ( )
inlinestaticnoexcept

Definition at line 123 of file FEMBSettings.hpp.

123{ return s_strobe_length; }
static const std::string s_strobe_length

◆ __get_strobe_length_str() [2/2]

static const std::string & dunedaq::appmodel::FEMBSettings::__get_strobe_length_str ( )
inlinestaticnoexcept

Definition at line 123 of file FEMBSettings.hpp.

123{ return s_strobe_length; }

◆ __get_strobe_skip_str() [1/2]

static const std::string & dunedaq::appmodel::FEMBSettings::__get_strobe_skip_str ( )
inlinestaticnoexcept

Definition at line 121 of file FEMBSettings.hpp.

121{ return s_strobe_skip; }
static const std::string s_strobe_skip

◆ __get_strobe_skip_str() [2/2]

static const std::string & dunedaq::appmodel::FEMBSettings::__get_strobe_skip_str ( )
inlinestaticnoexcept

Definition at line 121 of file FEMBSettings.hpp.

121{ return s_strobe_skip; }

◆ __get_test_cap_str() [1/2]

static const std::string & dunedaq::appmodel::FEMBSettings::__get_test_cap_str ( )
inlinestaticnoexcept

Definition at line 111 of file FEMBSettings.hpp.

111{ return s_test_cap; }
static const std::string s_test_cap

◆ __get_test_cap_str() [2/2]

static const std::string & dunedaq::appmodel::FEMBSettings::__get_test_cap_str ( )
inlinestaticnoexcept

Definition at line 111 of file FEMBSettings.hpp.

111{ return s_test_cap; }

◆ get() [1/4]

std::vector< const dunedaq::conffwk::DalObject * > dunedaq::appmodel::FEMBSettings::get ( const std::string & name,
bool upcast_unregistered = true ) const
virtual

Get values of relationships and results of some algorithms as a vector of dunedaq::conffwk::DalObject pointers.

Parameters are:

Parameters
namename of the relationship or algorithm
Returns
value of relationship or result of algorithm
Exceptions
std::exceptionif there is no relationship or algorithm with such name in this and base classes

Implements dunedaq::conffwk::DalObject.

Definition at line 102 of file FEMBSettings.cpp.

103 {
104 std::vector<const dunedaq::conffwk::DalObject *> vec;
105
106 if (!get(name, vec, upcast_unregistered, true))
107 throw_get_ex(name, s_class_name, this);
108
109 return vec;
110 }
virtual std::vector< const dunedaq::conffwk::DalObject * > get(const std::string &name, bool upcast_unregistered=true) const
Get values of relationships and results of some algorithms as a vector of dunedaq::conffwk::DalObject...
static const std::string & s_class_name
static void throw_get_ex(const std::string &what, const std::string &class_name, const DalObject *obj)
throw exception in generated get method (i.e.
Definition DalObject.cpp:82

◆ get() [2/4]

virtual std::vector< const dunedaq::conffwk::DalObject * > dunedaq::appmodel::FEMBSettings::get ( const std::string & name,
bool upcast_unregistered = true ) const
virtual

Get values of relationships and results of some algorithms as a vector of dunedaq::conffwk::DalObject pointers.

Parameters are:

Parameters
namename of the relationship or algorithm
Returns
value of relationship or result of algorithm
Exceptions
std::exceptionif there is no relationship or algorithm with such name in this and base classes

Implements dunedaq::conffwk::DalObject.

◆ get() [3/4]

bool dunedaq::appmodel::FEMBSettings::get ( const std::string & name,
std::vector< const dunedaq::conffwk::DalObject * > & vec,
bool upcast_unregistered,
bool first_call ) const
protected

Definition at line 112 of file FEMBSettings.cpp.

113 {
114 if (first_call)
115 {
116 std::lock_guard scoped_lock(m_mutex);
117
118 check();
119 check_init();
120
121 if (get_rel_objects(name, upcast_unregistered, vec))
122 return true;
123 }
124
125 if (first_call)
126 return get_algo_objects(name, vec);
127
128 return false;
129 }
bool get_rel_objects(const std::string &name, bool upcast_unregistered, std::vector< const DalObject * > &objs) const
Read relationship values as DAL objects using DAL factory.
Definition DalObject.cpp:8
std::mutex m_mutex
Used to protect changes of DAL object.
bool get_algo_objects(const std::string &name, std::vector< const DalObject * > &objs) const
Run algorithm and return result as DAL objects using DAL factory.
Definition DalObject.cpp:25
void check_init() const
Check and initialize object if necessary.

◆ get() [4/4]

bool dunedaq::appmodel::FEMBSettings::get ( const std::string & name,
std::vector< const dunedaq::conffwk::DalObject * > & vec,
bool upcast_unregistered,
bool first_call ) const
protected

◆ get_ac_couple() [1/2]

bool dunedaq::appmodel::FEMBSettings::get_ac_couple ( ) const
inline

Get "ac_couple" attribute value. false (DC coupling), true (AC coupling)

Returns
the attribute value
Exceptions
dunedaq::conffwk::Generic,dunedaq::conffwk::DeletedObject

Definition at line 433 of file FEMBSettings.hpp.

434 {
435 std::lock_guard scoped_lock(m_mutex);
436 check();
437 check_init();
438 return m_ac_couple;
439 }

◆ get_ac_couple() [2/2]

bool dunedaq::appmodel::FEMBSettings::get_ac_couple ( ) const
inline

Get "ac_couple" attribute value. false (DC coupling), true (AC coupling)

Returns
the attribute value
Exceptions
dunedaq::conffwk::Generic,dunedaq::conffwk::DeletedObject

Definition at line 433 of file FEMBSettings.hpp.

434 {
435 std::lock_guard scoped_lock(m_mutex);
436 check();
437 check_init();
438 return m_ac_couple;
439 }

◆ get_baseline() [1/2]

uint8_t dunedaq::appmodel::FEMBSettings::get_baseline ( ) const
inline

Get "baseline" attribute value. Baseline selector: 0 (900 mV), 1 (200 mV), 2 (200 mV collection, 900 mV induction)

Returns
the attribute value
Exceptions
dunedaq::conffwk::Generic,dunedaq::conffwk::DeletedObject

Definition at line 268 of file FEMBSettings.hpp.

269 {
270 std::lock_guard scoped_lock(m_mutex);
271 check();
272 check_init();
273 return m_baseline;
274 }

◆ get_baseline() [2/2]

uint8_t dunedaq::appmodel::FEMBSettings::get_baseline ( ) const
inline

Get "baseline" attribute value. Baseline selector: 0 (900 mV), 1 (200 mV), 2 (200 mV collection, 900 mV induction)

Returns
the attribute value
Exceptions
dunedaq::conffwk::Generic,dunedaq::conffwk::DeletedObject

Definition at line 268 of file FEMBSettings.hpp.

269 {
270 std::lock_guard scoped_lock(m_mutex);
271 check();
272 check_init();
273 return m_baseline;
274 }

◆ get_buffering() [1/2]

uint8_t dunedaq::appmodel::FEMBSettings::get_buffering ( ) const
inline

Get "buffering" attribute value. 0 (no buffer), 1 (se buffer), 2 (sedc buffer)

Returns
the attribute value
Exceptions
dunedaq::conffwk::Generic,dunedaq::conffwk::DeletedObject

Definition at line 466 of file FEMBSettings.hpp.

467 {
468 std::lock_guard scoped_lock(m_mutex);
469 check();
470 check_init();
471 return m_buffering;
472 }

◆ get_buffering() [2/2]

uint8_t dunedaq::appmodel::FEMBSettings::get_buffering ( ) const
inline

Get "buffering" attribute value. 0 (no buffer), 1 (se buffer), 2 (sedc buffer)

Returns
the attribute value
Exceptions
dunedaq::conffwk::Generic,dunedaq::conffwk::DeletedObject

Definition at line 466 of file FEMBSettings.hpp.

467 {
468 std::lock_guard scoped_lock(m_mutex);
469 check();
470 check_init();
471 return m_buffering;
472 }

◆ get_enabled() [1/2]

bool dunedaq::appmodel::FEMBSettings::get_enabled ( ) const
inline

Get "enabled" attribute value. True of FEMB should be configured and read out by WIB.

Returns
the attribute value
Exceptions
dunedaq::conffwk::Generic,dunedaq::conffwk::DeletedObject

Definition at line 136 of file FEMBSettings.hpp.

137 {
138 std::lock_guard scoped_lock(m_mutex);
139 check();
140 check_init();
141 return m_enabled;
142 }

◆ get_enabled() [2/2]

bool dunedaq::appmodel::FEMBSettings::get_enabled ( ) const
inline

Get "enabled" attribute value. True of FEMB should be configured and read out by WIB.

Returns
the attribute value
Exceptions
dunedaq::conffwk::Generic,dunedaq::conffwk::DeletedObject

Definition at line 136 of file FEMBSettings.hpp.

137 {
138 std::lock_guard scoped_lock(m_mutex);
139 check();
140 check_init();
141 return m_enabled;
142 }

◆ get_gain() [1/2]

uint8_t dunedaq::appmodel::FEMBSettings::get_gain ( ) const
inline

Get "gain" attribute value. Channel gain selector: 14, 25, 7.8, 4.7 mV/fC (0 - 3)

Returns
the attribute value
Exceptions
dunedaq::conffwk::Generic,dunedaq::conffwk::DeletedObject

Definition at line 202 of file FEMBSettings.hpp.

203 {
204 std::lock_guard scoped_lock(m_mutex);
205 check();
206 check_init();
207 return m_gain;
208 }

◆ get_gain() [2/2]

uint8_t dunedaq::appmodel::FEMBSettings::get_gain ( ) const
inline

Get "gain" attribute value. Channel gain selector: 14, 25, 7.8, 4.7 mV/fC (0 - 3)

Returns
the attribute value
Exceptions
dunedaq::conffwk::Generic,dunedaq::conffwk::DeletedObject

Definition at line 202 of file FEMBSettings.hpp.

203 {
204 std::lock_guard scoped_lock(m_mutex);
205 check();
206 check_init();
207 return m_gain;
208 }

◆ get_gain_match() [1/2]

bool dunedaq::appmodel::FEMBSettings::get_gain_match ( ) const
inline

Get "gain_match" attribute value. Enable pulser DAC gain matching.

Returns
the attribute value
Exceptions
dunedaq::conffwk::Generic,dunedaq::conffwk::DeletedObject

Definition at line 334 of file FEMBSettings.hpp.

335 {
336 std::lock_guard scoped_lock(m_mutex);
337 check();
338 check_init();
339 return m_gain_match;
340 }

◆ get_gain_match() [2/2]

bool dunedaq::appmodel::FEMBSettings::get_gain_match ( ) const
inline

Get "gain_match" attribute value. Enable pulser DAC gain matching.

Returns
the attribute value
Exceptions
dunedaq::conffwk::Generic,dunedaq::conffwk::DeletedObject

Definition at line 334 of file FEMBSettings.hpp.

335 {
336 std::lock_guard scoped_lock(m_mutex);
337 check();
338 check_init();
339 return m_gain_match;
340 }

◆ get_leak() [1/2]

uint8_t dunedaq::appmodel::FEMBSettings::get_leak ( ) const
inline

Get "leak" attribute value. Leak current selector: 0 (500 pA), 1 (100 pA)

Returns
the attribute value
Exceptions
dunedaq::conffwk::Generic,dunedaq::conffwk::DeletedObject

Definition at line 367 of file FEMBSettings.hpp.

368 {
369 std::lock_guard scoped_lock(m_mutex);
370 check();
371 check_init();
372 return m_leak;
373 }

◆ get_leak() [2/2]

uint8_t dunedaq::appmodel::FEMBSettings::get_leak ( ) const
inline

Get "leak" attribute value. Leak current selector: 0 (500 pA), 1 (100 pA)

Returns
the attribute value
Exceptions
dunedaq::conffwk::Generic,dunedaq::conffwk::DeletedObject

Definition at line 367 of file FEMBSettings.hpp.

368 {
369 std::lock_guard scoped_lock(m_mutex);
370 check();
371 check_init();
372 return m_leak;
373 }

◆ get_leak_10x() [1/2]

bool dunedaq::appmodel::FEMBSettings::get_leak_10x ( ) const
inline

Get "leak_10x" attribute value. Multiply leak current by 10 if true.

Returns
the attribute value
Exceptions
dunedaq::conffwk::Generic,dunedaq::conffwk::DeletedObject

Definition at line 400 of file FEMBSettings.hpp.

401 {
402 std::lock_guard scoped_lock(m_mutex);
403 check();
404 check_init();
405 return m_leak_10x;
406 }

◆ get_leak_10x() [2/2]

bool dunedaq::appmodel::FEMBSettings::get_leak_10x ( ) const
inline

Get "leak_10x" attribute value. Multiply leak current by 10 if true.

Returns
the attribute value
Exceptions
dunedaq::conffwk::Generic,dunedaq::conffwk::DeletedObject

Definition at line 400 of file FEMBSettings.hpp.

401 {
402 std::lock_guard scoped_lock(m_mutex);
403 check();
404 check_init();
405 return m_leak_10x;
406 }

◆ get_line_driver() [1/2]

const std::vector< uint8_t > & dunedaq::appmodel::FEMBSettings::get_line_driver ( ) const
inline

Get "line_driver" attribute value. 0 (Default), 1 (Short), 2 (25 m warm), 3 (35 m warm), 4 (25 m cold), 5 (35 m cold). Can submit up to 2 values for the two COLDATA.

Returns
the attribute value
Exceptions
dunedaq::conffwk::Generic,dunedaq::conffwk::DeletedObject

Definition at line 598 of file FEMBSettings.hpp.

599 {
600 std::lock_guard scoped_lock(m_mutex);
601 check();
602 check_init();
603 return m_line_driver;
604 }
std::vector< uint8_t > m_line_driver

◆ get_line_driver() [2/2]

const std::vector< uint8_t > & dunedaq::appmodel::FEMBSettings::get_line_driver ( ) const
inline

Get "line_driver" attribute value. 0 (Default), 1 (Short), 2 (25 m warm), 3 (35 m warm), 4 (25 m cold), 5 (35 m cold). Can submit up to 2 values for the two COLDATA.

Returns
the attribute value
Exceptions
dunedaq::conffwk::Generic,dunedaq::conffwk::DeletedObject

Definition at line 598 of file FEMBSettings.hpp.

599 {
600 std::lock_guard scoped_lock(m_mutex);
601 check();
602 check_init();
603 return m_line_driver;
604 }

◆ get_peak_time() [1/2]

uint8_t dunedaq::appmodel::FEMBSettings::get_peak_time ( ) const
inline

Get "peak_time" attribute value. Channel peak time selector: 1.0, 0.5, 3, 2 us (0 - 3)

Returns
the attribute value
Exceptions
dunedaq::conffwk::Generic,dunedaq::conffwk::DeletedObject

Definition at line 235 of file FEMBSettings.hpp.

236 {
237 std::lock_guard scoped_lock(m_mutex);
238 check();
239 check_init();
240 return m_peak_time;
241 }

◆ get_peak_time() [2/2]

uint8_t dunedaq::appmodel::FEMBSettings::get_peak_time ( ) const
inline

Get "peak_time" attribute value. Channel peak time selector: 1.0, 0.5, 3, 2 us (0 - 3)

Returns
the attribute value
Exceptions
dunedaq::conffwk::Generic,dunedaq::conffwk::DeletedObject

Definition at line 235 of file FEMBSettings.hpp.

236 {
237 std::lock_guard scoped_lock(m_mutex);
238 check();
239 check_init();
240 return m_peak_time;
241 }

◆ get_pulse_channels() [1/2]

const std::vector< bool > & dunedaq::appmodel::FEMBSettings::get_pulse_channels ( ) const
inline

Get "pulse_channels" attribute value. Array of up to 16 true/false values, for whether to send pulser to each corresponding channel per LArASIC.

Returns
the attribute value
Exceptions
dunedaq::conffwk::Generic,dunedaq::conffwk::DeletedObject

Definition at line 631 of file FEMBSettings.hpp.

632 {
633 std::lock_guard scoped_lock(m_mutex);
634 check();
635 check_init();
636 return m_pulse_channels;
637 }
std::vector< bool > m_pulse_channels

◆ get_pulse_channels() [2/2]

const std::vector< bool > & dunedaq::appmodel::FEMBSettings::get_pulse_channels ( ) const
inline

Get "pulse_channels" attribute value. Array of up to 16 true/false values, for whether to send pulser to each corresponding channel per LArASIC.

Returns
the attribute value
Exceptions
dunedaq::conffwk::Generic,dunedaq::conffwk::DeletedObject

Definition at line 631 of file FEMBSettings.hpp.

632 {
633 std::lock_guard scoped_lock(m_mutex);
634 check();
635 check_init();
636 return m_pulse_channels;
637 }

◆ get_pulse_dac() [1/2]

uint8_t dunedaq::appmodel::FEMBSettings::get_pulse_dac ( ) const
inline

Get "pulse_dac" attribute value. Pulser DAC setting [0-63].

Returns
the attribute value
Exceptions
dunedaq::conffwk::Generic,dunedaq::conffwk::DeletedObject

Definition at line 301 of file FEMBSettings.hpp.

302 {
303 std::lock_guard scoped_lock(m_mutex);
304 check();
305 check_init();
306 return m_pulse_dac;
307 }

◆ get_pulse_dac() [2/2]

uint8_t dunedaq::appmodel::FEMBSettings::get_pulse_dac ( ) const
inline

Get "pulse_dac" attribute value. Pulser DAC setting [0-63].

Returns
the attribute value
Exceptions
dunedaq::conffwk::Generic,dunedaq::conffwk::DeletedObject

Definition at line 301 of file FEMBSettings.hpp.

302 {
303 std::lock_guard scoped_lock(m_mutex);
304 check();
305 check_init();
306 return m_pulse_dac;
307 }

◆ get_strobe_delay() [1/2]

uint8_t dunedaq::appmodel::FEMBSettings::get_strobe_delay ( ) const
inline

Get "strobe_delay" attribute value. 64MHz periods to skip after 2MHz edge for strobe (pulser offset 0-255)

Returns
the attribute value
Exceptions
dunedaq::conffwk::Generic,dunedaq::conffwk::DeletedObject

Definition at line 532 of file FEMBSettings.hpp.

533 {
534 std::lock_guard scoped_lock(m_mutex);
535 check();
536 check_init();
537 return m_strobe_delay;
538 }

◆ get_strobe_delay() [2/2]

uint8_t dunedaq::appmodel::FEMBSettings::get_strobe_delay ( ) const
inline

Get "strobe_delay" attribute value. 64MHz periods to skip after 2MHz edge for strobe (pulser offset 0-255)

Returns
the attribute value
Exceptions
dunedaq::conffwk::Generic,dunedaq::conffwk::DeletedObject

Definition at line 532 of file FEMBSettings.hpp.

533 {
534 std::lock_guard scoped_lock(m_mutex);
535 check();
536 check_init();
537 return m_strobe_delay;
538 }

◆ get_strobe_length() [1/2]

uint8_t dunedaq::appmodel::FEMBSettings::get_strobe_length ( ) const
inline

Get "strobe_length" attribute value. Length of strobe in 64MHz periods (pulser length 0-255)

Returns
the attribute value
Exceptions
dunedaq::conffwk::Generic,dunedaq::conffwk::DeletedObject

Definition at line 565 of file FEMBSettings.hpp.

566 {
567 std::lock_guard scoped_lock(m_mutex);
568 check();
569 check_init();
570 return m_strobe_length;
571 }

◆ get_strobe_length() [2/2]

uint8_t dunedaq::appmodel::FEMBSettings::get_strobe_length ( ) const
inline

Get "strobe_length" attribute value. Length of strobe in 64MHz periods (pulser length 0-255)

Returns
the attribute value
Exceptions
dunedaq::conffwk::Generic,dunedaq::conffwk::DeletedObject

Definition at line 565 of file FEMBSettings.hpp.

566 {
567 std::lock_guard scoped_lock(m_mutex);
568 check();
569 check_init();
570 return m_strobe_length;
571 }

◆ get_strobe_skip() [1/2]

uint8_t dunedaq::appmodel::FEMBSettings::get_strobe_skip ( ) const
inline

Get "strobe_skip" attribute value. 2MHz periods to skip after strobe (pulser period 0-255)

Returns
the attribute value
Exceptions
dunedaq::conffwk::Generic,dunedaq::conffwk::DeletedObject

Definition at line 499 of file FEMBSettings.hpp.

500 {
501 std::lock_guard scoped_lock(m_mutex);
502 check();
503 check_init();
504 return m_strobe_skip;
505 }

◆ get_strobe_skip() [2/2]

uint8_t dunedaq::appmodel::FEMBSettings::get_strobe_skip ( ) const
inline

Get "strobe_skip" attribute value. 2MHz periods to skip after strobe (pulser period 0-255)

Returns
the attribute value
Exceptions
dunedaq::conffwk::Generic,dunedaq::conffwk::DeletedObject

Definition at line 499 of file FEMBSettings.hpp.

500 {
501 std::lock_guard scoped_lock(m_mutex);
502 check();
503 check_init();
504 return m_strobe_skip;
505 }

◆ get_test_cap() [1/2]

bool dunedaq::appmodel::FEMBSettings::get_test_cap ( ) const
inline

Get "test_cap" attribute value. Enable the test capacitor.

Returns
the attribute value
Exceptions
dunedaq::conffwk::Generic,dunedaq::conffwk::DeletedObject

Definition at line 169 of file FEMBSettings.hpp.

170 {
171 std::lock_guard scoped_lock(m_mutex);
172 check();
173 check_init();
174 return m_test_cap;
175 }

◆ get_test_cap() [2/2]

bool dunedaq::appmodel::FEMBSettings::get_test_cap ( ) const
inline

Get "test_cap" attribute value. Enable the test capacitor.

Returns
the attribute value
Exceptions
dunedaq::conffwk::Generic,dunedaq::conffwk::DeletedObject

Definition at line 169 of file FEMBSettings.hpp.

170 {
171 std::lock_guard scoped_lock(m_mutex);
172 check();
173 check_init();
174 return m_test_cap;
175 }

◆ init() [1/2]

void dunedaq::appmodel::FEMBSettings::init ( bool init_children)
protectedvirtual

Initialize object (method generated by genconffwk)

Parameters
init_childrenif true, initialize referenced objects

Implements dunedaq::conffwk::DalObject.

Definition at line 69 of file FEMBSettings.cpp.

70 {
71 p_was_read = true;
73 TLOG_DEBUG(5) << "read object " << this << " (class " << s_class_name << ')';
74
75 try {
92 }
93 catch (dunedaq::conffwk::Exception & ex) {
94 throw_init_ex(ex);
95 }
96 }
void get(const std::string &name, T &value)
Get value of object's attribute or relationship.
void throw_init_ex(dunedaq::conffwk::Exception &ex)
throw object initialisation exception (i.e.
Definition DalObject.cpp:74
void increment_read() noexcept
bool p_was_read
is true, if the object was read
ConfigObject p_obj
Config object used by given template object.
#define TLOG_DEBUG(lvl,...)
Definition Logging.hpp:112

◆ init() [2/2]

virtual void dunedaq::appmodel::FEMBSettings::init ( bool init_children)
protectedvirtual

Initialize object (method generated by genconffwk)

Parameters
init_childrenif true, initialize referenced objects

Implements dunedaq::conffwk::DalObject.

◆ print() [1/2]

void dunedaq::appmodel::FEMBSettings::print ( unsigned int offset,
bool print_header,
std::ostream & s ) const
virtual

Print details of the FEMBSettings object.

Parameters are:

Parameters
offsetnumber of spaces to shift object right (useful to print nested objects)
print_headerif false, do not print object header (to print attributes of base classes)
soutput stream

Implements dunedaq::conffwk::DalObject.

Definition at line 33 of file FEMBSettings.cpp.

34 {
35 check_init();
36
37 try {
38 const std::string str(indent+2, ' ');
39
40 if (print_header)
41 p_hdr(s, indent, s_class_name, "dunedaq::appmodel");
42
43
44 // print direct attributes
45
62 }
63 catch (dunedaq::conffwk::Exception & ex) {
65 }
66 }
void p_hdr(std::ostream &s, unsigned int indent, const std::string &cl, const char *nm=nullptr) const
print object headers
Definition DalObject.cpp:65
static void p_error(std::ostream &s, dunedaq::conffwk::Exception &ex)
print error text
Definition DalObject.cpp:59
void p_mv_attr(std::ostream &s, const std::string &str, const std::string &name, const T &val) noexcept
print multi-value attribute
void p_sv_attr(std::ostream &s, const std::string &str, const std::string &name, const T &val) noexcept
print single-value attribute

◆ print() [2/2]

virtual void dunedaq::appmodel::FEMBSettings::print ( unsigned int offset,
bool print_header,
std::ostream & s ) const
virtual

Print details of the FEMBSettings object.

Parameters are:

Parameters
offsetnumber of spaces to shift object right (useful to print nested objects)
print_headerif false, do not print object header (to print attributes of base classes)
soutput stream

Implements dunedaq::conffwk::DalObject.

◆ set_ac_couple() [1/2]

void dunedaq::appmodel::FEMBSettings::set_ac_couple ( bool value)
inline

Set "ac_couple" attribute value. false (DC coupling), true (AC coupling)

Parameters
valuenew attribute value
Exceptions
dunedaq::conffwk::Generic,dunedaq::conffwk::DeletedObject

Definition at line 449 of file FEMBSettings.hpp.

450 {
451 std::lock_guard scoped_lock(m_mutex);
452 check();
453 clear();
455 }
void set_by_val(const std::string &name, T value)
Set attribute value.

◆ set_ac_couple() [2/2]

void dunedaq::appmodel::FEMBSettings::set_ac_couple ( bool value)
inline

Set "ac_couple" attribute value. false (DC coupling), true (AC coupling)

Parameters
valuenew attribute value
Exceptions
dunedaq::conffwk::Generic,dunedaq::conffwk::DeletedObject

Definition at line 449 of file FEMBSettings.hpp.

450 {
451 std::lock_guard scoped_lock(m_mutex);
452 check();
453 clear();
455 }

◆ set_baseline() [1/2]

void dunedaq::appmodel::FEMBSettings::set_baseline ( uint8_t value)
inline

Set "baseline" attribute value. Baseline selector: 0 (900 mV), 1 (200 mV), 2 (200 mV collection, 900 mV induction)

Parameters
valuenew attribute value
Exceptions
dunedaq::conffwk::Generic,dunedaq::conffwk::DeletedObject

Definition at line 284 of file FEMBSettings.hpp.

285 {
286 std::lock_guard scoped_lock(m_mutex);
287 check();
288 clear();
290 }

◆ set_baseline() [2/2]

void dunedaq::appmodel::FEMBSettings::set_baseline ( uint8_t value)
inline

Set "baseline" attribute value. Baseline selector: 0 (900 mV), 1 (200 mV), 2 (200 mV collection, 900 mV induction)

Parameters
valuenew attribute value
Exceptions
dunedaq::conffwk::Generic,dunedaq::conffwk::DeletedObject

Definition at line 284 of file FEMBSettings.hpp.

285 {
286 std::lock_guard scoped_lock(m_mutex);
287 check();
288 clear();
290 }

◆ set_buffering() [1/2]

void dunedaq::appmodel::FEMBSettings::set_buffering ( uint8_t value)
inline

Set "buffering" attribute value. 0 (no buffer), 1 (se buffer), 2 (sedc buffer)

Parameters
valuenew attribute value
Exceptions
dunedaq::conffwk::Generic,dunedaq::conffwk::DeletedObject

Definition at line 482 of file FEMBSettings.hpp.

483 {
484 std::lock_guard scoped_lock(m_mutex);
485 check();
486 clear();
488 }

◆ set_buffering() [2/2]

void dunedaq::appmodel::FEMBSettings::set_buffering ( uint8_t value)
inline

Set "buffering" attribute value. 0 (no buffer), 1 (se buffer), 2 (sedc buffer)

Parameters
valuenew attribute value
Exceptions
dunedaq::conffwk::Generic,dunedaq::conffwk::DeletedObject

Definition at line 482 of file FEMBSettings.hpp.

483 {
484 std::lock_guard scoped_lock(m_mutex);
485 check();
486 clear();
488 }

◆ set_enabled() [1/2]

void dunedaq::appmodel::FEMBSettings::set_enabled ( bool value)
inline

Set "enabled" attribute value. True of FEMB should be configured and read out by WIB.

Parameters
valuenew attribute value
Exceptions
dunedaq::conffwk::Generic,dunedaq::conffwk::DeletedObject

Definition at line 152 of file FEMBSettings.hpp.

153 {
154 std::lock_guard scoped_lock(m_mutex);
155 check();
156 clear();
157 p_obj.set_by_val(s_enabled, value);
158 }

◆ set_enabled() [2/2]

void dunedaq::appmodel::FEMBSettings::set_enabled ( bool value)
inline

Set "enabled" attribute value. True of FEMB should be configured and read out by WIB.

Parameters
valuenew attribute value
Exceptions
dunedaq::conffwk::Generic,dunedaq::conffwk::DeletedObject

Definition at line 152 of file FEMBSettings.hpp.

153 {
154 std::lock_guard scoped_lock(m_mutex);
155 check();
156 clear();
157 p_obj.set_by_val(s_enabled, value);
158 }

◆ set_gain() [1/2]

void dunedaq::appmodel::FEMBSettings::set_gain ( uint8_t value)
inline

Set "gain" attribute value. Channel gain selector: 14, 25, 7.8, 4.7 mV/fC (0 - 3)

Parameters
valuenew attribute value
Exceptions
dunedaq::conffwk::Generic,dunedaq::conffwk::DeletedObject

Definition at line 218 of file FEMBSettings.hpp.

219 {
220 std::lock_guard scoped_lock(m_mutex);
221 check();
222 clear();
223 p_obj.set_by_val(s_gain, value);
224 }

◆ set_gain() [2/2]

void dunedaq::appmodel::FEMBSettings::set_gain ( uint8_t value)
inline

Set "gain" attribute value. Channel gain selector: 14, 25, 7.8, 4.7 mV/fC (0 - 3)

Parameters
valuenew attribute value
Exceptions
dunedaq::conffwk::Generic,dunedaq::conffwk::DeletedObject

Definition at line 218 of file FEMBSettings.hpp.

219 {
220 std::lock_guard scoped_lock(m_mutex);
221 check();
222 clear();
223 p_obj.set_by_val(s_gain, value);
224 }

◆ set_gain_match() [1/2]

void dunedaq::appmodel::FEMBSettings::set_gain_match ( bool value)
inline

Set "gain_match" attribute value. Enable pulser DAC gain matching.

Parameters
valuenew attribute value
Exceptions
dunedaq::conffwk::Generic,dunedaq::conffwk::DeletedObject

Definition at line 350 of file FEMBSettings.hpp.

351 {
352 std::lock_guard scoped_lock(m_mutex);
353 check();
354 clear();
356 }

◆ set_gain_match() [2/2]

void dunedaq::appmodel::FEMBSettings::set_gain_match ( bool value)
inline

Set "gain_match" attribute value. Enable pulser DAC gain matching.

Parameters
valuenew attribute value
Exceptions
dunedaq::conffwk::Generic,dunedaq::conffwk::DeletedObject

Definition at line 350 of file FEMBSettings.hpp.

351 {
352 std::lock_guard scoped_lock(m_mutex);
353 check();
354 clear();
356 }

◆ set_leak() [1/2]

void dunedaq::appmodel::FEMBSettings::set_leak ( uint8_t value)
inline

Set "leak" attribute value. Leak current selector: 0 (500 pA), 1 (100 pA)

Parameters
valuenew attribute value
Exceptions
dunedaq::conffwk::Generic,dunedaq::conffwk::DeletedObject

Definition at line 383 of file FEMBSettings.hpp.

384 {
385 std::lock_guard scoped_lock(m_mutex);
386 check();
387 clear();
388 p_obj.set_by_val(s_leak, value);
389 }

◆ set_leak() [2/2]

void dunedaq::appmodel::FEMBSettings::set_leak ( uint8_t value)
inline

Set "leak" attribute value. Leak current selector: 0 (500 pA), 1 (100 pA)

Parameters
valuenew attribute value
Exceptions
dunedaq::conffwk::Generic,dunedaq::conffwk::DeletedObject

Definition at line 383 of file FEMBSettings.hpp.

384 {
385 std::lock_guard scoped_lock(m_mutex);
386 check();
387 clear();
388 p_obj.set_by_val(s_leak, value);
389 }

◆ set_leak_10x() [1/2]

void dunedaq::appmodel::FEMBSettings::set_leak_10x ( bool value)
inline

Set "leak_10x" attribute value. Multiply leak current by 10 if true.

Parameters
valuenew attribute value
Exceptions
dunedaq::conffwk::Generic,dunedaq::conffwk::DeletedObject

Definition at line 416 of file FEMBSettings.hpp.

417 {
418 std::lock_guard scoped_lock(m_mutex);
419 check();
420 clear();
422 }

◆ set_leak_10x() [2/2]

void dunedaq::appmodel::FEMBSettings::set_leak_10x ( bool value)
inline

Set "leak_10x" attribute value. Multiply leak current by 10 if true.

Parameters
valuenew attribute value
Exceptions
dunedaq::conffwk::Generic,dunedaq::conffwk::DeletedObject

Definition at line 416 of file FEMBSettings.hpp.

417 {
418 std::lock_guard scoped_lock(m_mutex);
419 check();
420 clear();
422 }

◆ set_line_driver() [1/2]

void dunedaq::appmodel::FEMBSettings::set_line_driver ( const std::vector< uint8_t > & value)
inline

Set "line_driver" attribute value. 0 (Default), 1 (Short), 2 (25 m warm), 3 (35 m warm), 4 (25 m cold), 5 (35 m cold). Can submit up to 2 values for the two COLDATA.

Parameters
valuenew attribute value
Exceptions
dunedaq::conffwk::Generic,dunedaq::conffwk::DeletedObject

Definition at line 614 of file FEMBSettings.hpp.

615 {
616 std::lock_guard scoped_lock(m_mutex);
617 check();
618 clear();
620 }

◆ set_line_driver() [2/2]

void dunedaq::appmodel::FEMBSettings::set_line_driver ( const std::vector< uint8_t > & value)
inline

Set "line_driver" attribute value. 0 (Default), 1 (Short), 2 (25 m warm), 3 (35 m warm), 4 (25 m cold), 5 (35 m cold). Can submit up to 2 values for the two COLDATA.

Parameters
valuenew attribute value
Exceptions
dunedaq::conffwk::Generic,dunedaq::conffwk::DeletedObject

Definition at line 614 of file FEMBSettings.hpp.

615 {
616 std::lock_guard scoped_lock(m_mutex);
617 check();
618 clear();
620 }

◆ set_peak_time() [1/2]

void dunedaq::appmodel::FEMBSettings::set_peak_time ( uint8_t value)
inline

Set "peak_time" attribute value. Channel peak time selector: 1.0, 0.5, 3, 2 us (0 - 3)

Parameters
valuenew attribute value
Exceptions
dunedaq::conffwk::Generic,dunedaq::conffwk::DeletedObject

Definition at line 251 of file FEMBSettings.hpp.

252 {
253 std::lock_guard scoped_lock(m_mutex);
254 check();
255 clear();
257 }

◆ set_peak_time() [2/2]

void dunedaq::appmodel::FEMBSettings::set_peak_time ( uint8_t value)
inline

Set "peak_time" attribute value. Channel peak time selector: 1.0, 0.5, 3, 2 us (0 - 3)

Parameters
valuenew attribute value
Exceptions
dunedaq::conffwk::Generic,dunedaq::conffwk::DeletedObject

Definition at line 251 of file FEMBSettings.hpp.

252 {
253 std::lock_guard scoped_lock(m_mutex);
254 check();
255 clear();
257 }

◆ set_pulse_channels() [1/2]

void dunedaq::appmodel::FEMBSettings::set_pulse_channels ( const std::vector< bool > & value)
inline

Set "pulse_channels" attribute value. Array of up to 16 true/false values, for whether to send pulser to each corresponding channel per LArASIC.

Parameters
valuenew attribute value
Exceptions
dunedaq::conffwk::Generic,dunedaq::conffwk::DeletedObject

Definition at line 647 of file FEMBSettings.hpp.

648 {
649 std::lock_guard scoped_lock(m_mutex);
650 check();
651 clear();
653 }

◆ set_pulse_channels() [2/2]

void dunedaq::appmodel::FEMBSettings::set_pulse_channels ( const std::vector< bool > & value)
inline

Set "pulse_channels" attribute value. Array of up to 16 true/false values, for whether to send pulser to each corresponding channel per LArASIC.

Parameters
valuenew attribute value
Exceptions
dunedaq::conffwk::Generic,dunedaq::conffwk::DeletedObject

Definition at line 647 of file FEMBSettings.hpp.

648 {
649 std::lock_guard scoped_lock(m_mutex);
650 check();
651 clear();
653 }

◆ set_pulse_dac() [1/2]

void dunedaq::appmodel::FEMBSettings::set_pulse_dac ( uint8_t value)
inline

Set "pulse_dac" attribute value. Pulser DAC setting [0-63].

Parameters
valuenew attribute value
Exceptions
dunedaq::conffwk::Generic,dunedaq::conffwk::DeletedObject

Definition at line 317 of file FEMBSettings.hpp.

318 {
319 std::lock_guard scoped_lock(m_mutex);
320 check();
321 clear();
323 }

◆ set_pulse_dac() [2/2]

void dunedaq::appmodel::FEMBSettings::set_pulse_dac ( uint8_t value)
inline

Set "pulse_dac" attribute value. Pulser DAC setting [0-63].

Parameters
valuenew attribute value
Exceptions
dunedaq::conffwk::Generic,dunedaq::conffwk::DeletedObject

Definition at line 317 of file FEMBSettings.hpp.

318 {
319 std::lock_guard scoped_lock(m_mutex);
320 check();
321 clear();
323 }

◆ set_strobe_delay() [1/2]

void dunedaq::appmodel::FEMBSettings::set_strobe_delay ( uint8_t value)
inline

Set "strobe_delay" attribute value. 64MHz periods to skip after 2MHz edge for strobe (pulser offset 0-255)

Parameters
valuenew attribute value
Exceptions
dunedaq::conffwk::Generic,dunedaq::conffwk::DeletedObject

Definition at line 548 of file FEMBSettings.hpp.

549 {
550 std::lock_guard scoped_lock(m_mutex);
551 check();
552 clear();
554 }

◆ set_strobe_delay() [2/2]

void dunedaq::appmodel::FEMBSettings::set_strobe_delay ( uint8_t value)
inline

Set "strobe_delay" attribute value. 64MHz periods to skip after 2MHz edge for strobe (pulser offset 0-255)

Parameters
valuenew attribute value
Exceptions
dunedaq::conffwk::Generic,dunedaq::conffwk::DeletedObject

Definition at line 548 of file FEMBSettings.hpp.

549 {
550 std::lock_guard scoped_lock(m_mutex);
551 check();
552 clear();
554 }

◆ set_strobe_length() [1/2]

void dunedaq::appmodel::FEMBSettings::set_strobe_length ( uint8_t value)
inline

Set "strobe_length" attribute value. Length of strobe in 64MHz periods (pulser length 0-255)

Parameters
valuenew attribute value
Exceptions
dunedaq::conffwk::Generic,dunedaq::conffwk::DeletedObject

Definition at line 581 of file FEMBSettings.hpp.

582 {
583 std::lock_guard scoped_lock(m_mutex);
584 check();
585 clear();
587 }

◆ set_strobe_length() [2/2]

void dunedaq::appmodel::FEMBSettings::set_strobe_length ( uint8_t value)
inline

Set "strobe_length" attribute value. Length of strobe in 64MHz periods (pulser length 0-255)

Parameters
valuenew attribute value
Exceptions
dunedaq::conffwk::Generic,dunedaq::conffwk::DeletedObject

Definition at line 581 of file FEMBSettings.hpp.

582 {
583 std::lock_guard scoped_lock(m_mutex);
584 check();
585 clear();
587 }

◆ set_strobe_skip() [1/2]

void dunedaq::appmodel::FEMBSettings::set_strobe_skip ( uint8_t value)
inline

Set "strobe_skip" attribute value. 2MHz periods to skip after strobe (pulser period 0-255)

Parameters
valuenew attribute value
Exceptions
dunedaq::conffwk::Generic,dunedaq::conffwk::DeletedObject

Definition at line 515 of file FEMBSettings.hpp.

516 {
517 std::lock_guard scoped_lock(m_mutex);
518 check();
519 clear();
521 }

◆ set_strobe_skip() [2/2]

void dunedaq::appmodel::FEMBSettings::set_strobe_skip ( uint8_t value)
inline

Set "strobe_skip" attribute value. 2MHz periods to skip after strobe (pulser period 0-255)

Parameters
valuenew attribute value
Exceptions
dunedaq::conffwk::Generic,dunedaq::conffwk::DeletedObject

Definition at line 515 of file FEMBSettings.hpp.

516 {
517 std::lock_guard scoped_lock(m_mutex);
518 check();
519 clear();
521 }

◆ set_test_cap() [1/2]

void dunedaq::appmodel::FEMBSettings::set_test_cap ( bool value)
inline

Set "test_cap" attribute value. Enable the test capacitor.

Parameters
valuenew attribute value
Exceptions
dunedaq::conffwk::Generic,dunedaq::conffwk::DeletedObject

Definition at line 185 of file FEMBSettings.hpp.

186 {
187 std::lock_guard scoped_lock(m_mutex);
188 check();
189 clear();
191 }

◆ set_test_cap() [2/2]

void dunedaq::appmodel::FEMBSettings::set_test_cap ( bool value)
inline

Set "test_cap" attribute value. Enable the test capacitor.

Parameters
valuenew attribute value
Exceptions
dunedaq::conffwk::Generic,dunedaq::conffwk::DeletedObject

Definition at line 185 of file FEMBSettings.hpp.

186 {
187 std::lock_guard scoped_lock(m_mutex);
188 check();
189 clear();
191 }

Friends And Related Symbol Documentation

◆ conffwk::Configuration

Definition at line 22 of file FEMBSettings.hpp.

◆ conffwk::DalFactory

conffwk::DalFactory
friend

Definition at line 24 of file FEMBSettings.hpp.

◆ conffwk::DalObject

Definition at line 23 of file FEMBSettings.hpp.

◆ conffwk::DalRegistry

Definition at line 25 of file FEMBSettings.hpp.

Member Data Documentation

◆ m_ac_couple

bool dunedaq::appmodel::FEMBSettings::m_ac_couple
private

Definition at line 80 of file FEMBSettings.hpp.

◆ m_baseline

uint8_t dunedaq::appmodel::FEMBSettings::m_baseline
private

Definition at line 75 of file FEMBSettings.hpp.

◆ m_buffering

uint8_t dunedaq::appmodel::FEMBSettings::m_buffering
private

Definition at line 81 of file FEMBSettings.hpp.

◆ m_enabled

bool dunedaq::appmodel::FEMBSettings::m_enabled
private

Definition at line 71 of file FEMBSettings.hpp.

◆ m_gain

uint8_t dunedaq::appmodel::FEMBSettings::m_gain
private

Definition at line 73 of file FEMBSettings.hpp.

◆ m_gain_match

bool dunedaq::appmodel::FEMBSettings::m_gain_match
private

Definition at line 77 of file FEMBSettings.hpp.

◆ m_leak

uint8_t dunedaq::appmodel::FEMBSettings::m_leak
private

Definition at line 78 of file FEMBSettings.hpp.

◆ m_leak_10x

bool dunedaq::appmodel::FEMBSettings::m_leak_10x
private

Definition at line 79 of file FEMBSettings.hpp.

◆ m_line_driver

std::vector< uint8_t > dunedaq::appmodel::FEMBSettings::m_line_driver
private

Definition at line 85 of file FEMBSettings.hpp.

◆ m_peak_time

uint8_t dunedaq::appmodel::FEMBSettings::m_peak_time
private

Definition at line 74 of file FEMBSettings.hpp.

◆ m_pulse_channels

std::vector< bool > dunedaq::appmodel::FEMBSettings::m_pulse_channels
private

Definition at line 86 of file FEMBSettings.hpp.

◆ m_pulse_dac

uint8_t dunedaq::appmodel::FEMBSettings::m_pulse_dac
private

Definition at line 76 of file FEMBSettings.hpp.

◆ m_strobe_delay

uint8_t dunedaq::appmodel::FEMBSettings::m_strobe_delay
private

Definition at line 83 of file FEMBSettings.hpp.

◆ m_strobe_length

uint8_t dunedaq::appmodel::FEMBSettings::m_strobe_length
private

Definition at line 84 of file FEMBSettings.hpp.

◆ m_strobe_skip

uint8_t dunedaq::appmodel::FEMBSettings::m_strobe_skip
private

Definition at line 82 of file FEMBSettings.hpp.

◆ m_test_cap

bool dunedaq::appmodel::FEMBSettings::m_test_cap
private

Definition at line 72 of file FEMBSettings.hpp.

◆ s_ac_couple

static const std::string dunedaq::appmodel::FEMBSettings::s_ac_couple = "ac_couple"
inlinestatic

Definition at line 102 of file FEMBSettings.hpp.

◆ s_baseline

static const std::string dunedaq::appmodel::FEMBSettings::s_baseline = "baseline"
inlinestatic

Definition at line 97 of file FEMBSettings.hpp.

◆ s_buffering

static const std::string dunedaq::appmodel::FEMBSettings::s_buffering = "buffering"
inlinestatic

Definition at line 103 of file FEMBSettings.hpp.

◆ s_class_name

static const std::string & dunedaq::appmodel::FEMBSettings::s_class_name
static

The name of the configuration class.

Definition at line 37 of file FEMBSettings.hpp.

◆ s_enabled

static const std::string dunedaq::appmodel::FEMBSettings::s_enabled = "enabled"
inlinestatic

Definition at line 93 of file FEMBSettings.hpp.

◆ s_gain

static const std::string dunedaq::appmodel::FEMBSettings::s_gain = "gain"
inlinestatic

Definition at line 95 of file FEMBSettings.hpp.

◆ s_gain_match

static const std::string dunedaq::appmodel::FEMBSettings::s_gain_match = "gain_match"
inlinestatic

Definition at line 99 of file FEMBSettings.hpp.

◆ s_leak

static const std::string dunedaq::appmodel::FEMBSettings::s_leak = "leak"
inlinestatic

Definition at line 100 of file FEMBSettings.hpp.

◆ s_leak_10x

static const std::string dunedaq::appmodel::FEMBSettings::s_leak_10x = "leak_10x"
inlinestatic

Definition at line 101 of file FEMBSettings.hpp.

◆ s_line_driver

static const std::string dunedaq::appmodel::FEMBSettings::s_line_driver = "line_driver"
inlinestatic

Definition at line 107 of file FEMBSettings.hpp.

◆ s_peak_time

static const std::string dunedaq::appmodel::FEMBSettings::s_peak_time = "peak_time"
inlinestatic

Definition at line 96 of file FEMBSettings.hpp.

◆ s_pulse_channels

static const std::string dunedaq::appmodel::FEMBSettings::s_pulse_channels = "pulse_channels"
inlinestatic

Definition at line 108 of file FEMBSettings.hpp.

◆ s_pulse_dac

static const std::string dunedaq::appmodel::FEMBSettings::s_pulse_dac = "pulse_dac"
inlinestatic

Definition at line 98 of file FEMBSettings.hpp.

◆ s_strobe_delay

static const std::string dunedaq::appmodel::FEMBSettings::s_strobe_delay = "strobe_delay"
inlinestatic

Definition at line 105 of file FEMBSettings.hpp.

◆ s_strobe_length

static const std::string dunedaq::appmodel::FEMBSettings::s_strobe_length = "strobe_length"
inlinestatic

Definition at line 106 of file FEMBSettings.hpp.

◆ s_strobe_skip

static const std::string dunedaq::appmodel::FEMBSettings::s_strobe_skip = "strobe_skip"
inlinestatic

Definition at line 104 of file FEMBSettings.hpp.

◆ s_test_cap

static const std::string dunedaq::appmodel::FEMBSettings::s_test_cap = "test_cap"
inlinestatic

Definition at line 94 of file FEMBSettings.hpp.


The documentation for this class was generated from the following files: