pflib v3.12.0-1-g716e801
Pretty Fine HGCROC Interaction Library
Loading...
Searching...
No Matches
pflib::FastControlCMS_MMap Class Reference
Inheritance diagram for pflib::FastControlCMS_MMap:
[legend]
Collaboration diagram for pflib::FastControlCMS_MMap:
[legend]

Public Member Functions

Periodic periodic (int i)
 
void standard_setup () override
 Do standard setup for FastControl interface e.g.
 
void fc_enables_read (bool &overall, bool &external) override
 check the enables for various trigger/spill sources
 
void fc_enables (bool overall, bool external) override
 set the enables for various trigger/spill sources
 
virtual void resetCounters () override
 clear the counters
 
virtual void fc_setup_orbit_blinker (bool enable, int bx) override
 setup the orbit blinker L1A
 
virtual void fc_get_orbit_blinker (bool &enable, int &bx) override
 get the orbit blinker's settings
 
virtual void fc_get_setup_calib (int &charge_to_l1a, bool &enable_follow_l1a) override
 calib pulse setup (charge to l1a time)
 
virtual void fc_setup_calib (int charge_to_l1a, bool enable_follow_l1a) override
 calib pulse setup
 
virtual int fc_get_setup_led () override
 led pulse setup (charge to l1a time)
 
virtual void fc_setup_led (int led_to_l1a) override
 led pulse setup
 
virtual std::map< std::string, uint32_t > getCmdCounters () override
 Get the counters for all the different fast control commands.
 
virtual void linkreset_rocs () override
 send a link reset
 
virtual void orbit_count_reset () override
 send a orbit count reset
 
virtual void linkreset_econs () override
 send a link reset to the ECONs
 
virtual void clear_run () override
 reset counters for a new run
 
virtual void bufferclear () override
 send a buffer clear
 
virtual void sendL1A () override
 send a single L1A
 
virtual void chargepulse () override
 send a single calib pulse
 
virtual void ledpulse () override
 send a single calib pulse
 
virtual void sendROR () override
 send a single ROR
 
void setL1AperROR (int n) override
 set the number of L1A per ROR
 
int getL1AperROR () override
 get the number of L1A per ROR
 
- Public Member Functions inherited from pflib::FastControl
virtual void fc_setup_link_reset (int bx)
 setup the link reset timing
 
virtual void fc_get_setup_link_reset (int &bx)
 setup the link reset timing
 
virtual void read_counters (int &spill_count, int &header_occ, int &event_count, int &vetoed_counter)
 read counters from the FC side
 
virtual int fc_timer_setup_read ()
 get the period in us for the timer trigger
 
virtual void fc_timer_setup (int usdelay)
 set the period in us for the timer trigger
 

Static Public Attributes

static const int ORBIT_BLINKER = 1
 
static const int PEDESTAL = 2
 
static const int CHARGE = 3
 
static const int CHARGE_ROR = 4
 
static const int LED = 5
 
static const int LED_ROR = 6
 
static const int SINGLE_L1A = 7
 
static const uint32_t REQ_reset_nzs
 
static const uint32_t REQ_count_rst = 0x2
 
static const uint32_t REQ_sequence_req
 
static const uint32_t REQ_orbit_count_reset
 
static const uint32_t REQ_chipsync
 
static const uint32_t REQ_ebr
 
static const uint32_t REQ_ecr
 
static const uint32_t REQ_link_reset_roct
 
static const uint32_t REQ_link_reset_rocd
 
static const uint32_t REQ_link_reset_econt
 
static const uint32_t REQ_link_reset_econd
 
static const uint32_t REQ_spare0
 
static const uint32_t REQ_spare1
 
static const uint32_t REQ_spare2
 
static const uint32_t REQ_spare3
 
static const uint32_t REQ_spare4
 
static const uint32_t REQ_spare5
 
static const uint32_t REQ_spare6
 
static const uint32_t REQ_spare7
 

Private Attributes

UIO uio_
 
logging::logger the_log_ {logging::get("FastControlCMS_MMap")}
 

Member Function Documentation

◆ bufferclear()

virtual void pflib::FastControlCMS_MMap::bufferclear ( )
inlineoverridevirtual

send a buffer clear

Implements pflib::FastControl.

◆ chargepulse()

virtual void pflib::FastControlCMS_MMap::chargepulse ( )
inlineoverridevirtual

send a single calib pulse

Implements pflib::FastControl.

◆ clear_run()

virtual void pflib::FastControlCMS_MMap::clear_run ( )
inlineoverridevirtual

reset counters for a new run

Reimplemented from pflib::FastControl.

◆ fc_enables()

void pflib::FastControlCMS_MMap::fc_enables ( bool l1a_overall,
bool ext_l1a )
inlineoverridevirtual

set the enables for various trigger/spill sources

Reimplemented from pflib::FastControl.

◆ fc_enables_read()

void pflib::FastControlCMS_MMap::fc_enables_read ( bool & l1a_overall,
bool & ext_l1a )
inlineoverridevirtual

check the enables for various trigger/spill sources

Reimplemented from pflib::FastControl.

◆ fc_get_orbit_blinker()

virtual void pflib::FastControlCMS_MMap::fc_get_orbit_blinker ( bool & enable,
int & bx )
inlineoverridevirtual

get the orbit blinker's settings

Parameters
[out]enablewhether the blinker is on/off
[out]bxwhich BX the L1A is sent on

Reimplemented from pflib::FastControl.

◆ fc_get_setup_calib()

virtual void pflib::FastControlCMS_MMap::fc_get_setup_calib ( int & charge_to_l1a,
bool & enable_follow_l1a )
inlineoverridevirtual

calib pulse setup (charge to l1a time)

Reimplemented from pflib::FastControl.

◆ fc_get_setup_led()

virtual int pflib::FastControlCMS_MMap::fc_get_setup_led ( )
inlineoverridevirtual

led pulse setup (charge to l1a time)

Reimplemented from pflib::FastControl.

◆ fc_setup_calib()

virtual void pflib::FastControlCMS_MMap::fc_setup_calib ( int charge_to_l1a,
bool enable_follow_l1a )
inlineoverridevirtual

calib pulse setup

Parameters
[in]charge_to_l1anumber of bx separating the charge command from the following L1A command
[in]enable_follow_l1awhether to enable a following L1A command (true) or not (false)

You probably want to enable the following L1A command if you are doing chip-tuning. Disabling it is only helpful if you are testing the ability for some other infrastructure to make the trigger descision.

Reimplemented from pflib::FastControl.

◆ fc_setup_led()

virtual void pflib::FastControlCMS_MMap::fc_setup_led ( int charge_to_l1a)
inlineoverridevirtual

led pulse setup

Reimplemented from pflib::FastControl.

◆ fc_setup_orbit_blinker()

virtual void pflib::FastControlCMS_MMap::fc_setup_orbit_blinker ( bool enable,
int bx )
inlineoverridevirtual

setup the orbit blinker L1A

Parameters
[in]enableturn on/off orbit blinker
[in]bxwhich BX the L1A is sent on

Reimplemented from pflib::FastControl.

◆ getCmdCounters()

virtual std::map< std::string, uint32_t > pflib::FastControlCMS_MMap::getCmdCounters ( )
inlineoverridevirtual

Get the counters for all the different fast control commands.

Implements pflib::FastControl.

◆ getL1AperROR()

int pflib::FastControlCMS_MMap::getL1AperROR ( )
inlineoverridevirtual

get the number of L1A per ROR

Implements pflib::FastControl.

◆ ledpulse()

virtual void pflib::FastControlCMS_MMap::ledpulse ( )
inlineoverridevirtual

send a single calib pulse

Implements pflib::FastControl.

◆ linkreset_econs()

virtual void pflib::FastControlCMS_MMap::linkreset_econs ( )
inlineoverridevirtual

send a link reset to the ECONs

Reimplemented from pflib::FastControl.

◆ linkreset_rocs()

virtual void pflib::FastControlCMS_MMap::linkreset_rocs ( )
inlineoverridevirtual

send a link reset

Implements pflib::FastControl.

◆ orbit_count_reset()

virtual void pflib::FastControlCMS_MMap::orbit_count_reset ( )
inlineoverridevirtual

send a orbit count reset

Implements pflib::FastControl.

◆ resetCounters()

virtual void pflib::FastControlCMS_MMap::resetCounters ( )
inlineoverridevirtual

clear the counters

Reimplemented from pflib::FastControl.

◆ sendL1A()

virtual void pflib::FastControlCMS_MMap::sendL1A ( )
inlineoverridevirtual

send a single L1A

Implements pflib::FastControl.

◆ sendROR()

virtual void pflib::FastControlCMS_MMap::sendROR ( )
inlineoverridevirtual

send a single ROR

Implements pflib::FastControl.

◆ setL1AperROR()

void pflib::FastControlCMS_MMap::setL1AperROR ( int n)
inlineoverridevirtual

set the number of L1A per ROR

Implements pflib::FastControl.

◆ standard_setup()

void pflib::FastControlCMS_MMap::standard_setup ( )
inlineoverridevirtual

Do standard setup for FastControl interface e.g.

constructing fast control commands for requesting later

Reimplemented from pflib::FastControl.

Member Data Documentation

◆ REQ_chipsync

const uint32_t pflib::FastControlCMS_MMap::REQ_chipsync
static
Initial value:
=
0x20000

◆ REQ_ebr

const uint32_t pflib::FastControlCMS_MMap::REQ_ebr
static
Initial value:
=
0x40000

◆ REQ_ecr

const uint32_t pflib::FastControlCMS_MMap::REQ_ecr
static
Initial value:
=
0x80000

◆ REQ_link_reset_econd

const uint32_t pflib::FastControlCMS_MMap::REQ_link_reset_econd
static
Initial value:
=
0x800000

◆ REQ_link_reset_econt

const uint32_t pflib::FastControlCMS_MMap::REQ_link_reset_econt
static
Initial value:
=
0x400000

◆ REQ_link_reset_rocd

const uint32_t pflib::FastControlCMS_MMap::REQ_link_reset_rocd
static
Initial value:
=
0x200000

◆ REQ_link_reset_roct

const uint32_t pflib::FastControlCMS_MMap::REQ_link_reset_roct
static
Initial value:
=
0x100000

◆ REQ_orbit_count_reset

const uint32_t pflib::FastControlCMS_MMap::REQ_orbit_count_reset
static
Initial value:
=
0x10000

◆ REQ_reset_nzs

const uint32_t pflib::FastControlCMS_MMap::REQ_reset_nzs
static
Initial value:
=
0x1

◆ REQ_sequence_req

const uint32_t pflib::FastControlCMS_MMap::REQ_sequence_req
static
Initial value:
=
0x8000

◆ REQ_spare0

const uint32_t pflib::FastControlCMS_MMap::REQ_spare0
static
Initial value:
=
0x1000000

◆ REQ_spare1

const uint32_t pflib::FastControlCMS_MMap::REQ_spare1
static
Initial value:
=
0x2000000

◆ REQ_spare2

const uint32_t pflib::FastControlCMS_MMap::REQ_spare2
static
Initial value:
=
0x4000000

◆ REQ_spare3

const uint32_t pflib::FastControlCMS_MMap::REQ_spare3
static
Initial value:
=
0x8000000

◆ REQ_spare4

const uint32_t pflib::FastControlCMS_MMap::REQ_spare4
static
Initial value:
=
0x10000000

◆ REQ_spare5

const uint32_t pflib::FastControlCMS_MMap::REQ_spare5
static
Initial value:
=
0x20000000

◆ REQ_spare6

const uint32_t pflib::FastControlCMS_MMap::REQ_spare6
static
Initial value:
=
0x40000000

◆ REQ_spare7

const uint32_t pflib::FastControlCMS_MMap::REQ_spare7
static
Initial value:
=
0x80000000u

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