FACT++  1.0
FTM::StaticData Struct Reference

#include <HeadersFTM.h>

+ Collaboration diagram for FTM::StaticData:

Public Types

enum  Limits {
  kMaxMultiplicity = 40, kMaxWindow = 0xf, kMaxDeadTime = 0xffff, kMaxDelayTimeMarker = 0x3ff,
  kMaxDelayTrigger = 0x3ff, kMaxTriggerInterval = 0x3ff, kMaxIntensity = 0x7f, kMaxSequence = 0x1f,
  kMaxDAC = 0xfff, kMaxAddr = 0xfff, kMaxPatchIdx = 159, kMaxPixelIdx = 1439,
  kMaskSettings = 0xf, kMaskLEDs = 0xf
}
 
enum  GeneralSettings {
  kTrigger = 0x80, kPedestal = 0x40, kLPint = 0x20, kLPext = 0x10,
  kExt2 = 0x08, kExt1 = 0x04, kVeto = 0x02, kClockConditioner = 0x01
}
 
enum  LightPulserEnable { kGroup1 = 0x40, kGroup2 = 0x80 }
 

Public Member Functions

 StaticData ()
 
 StaticData (const std::vector< uint16_t > &vec)
 
std::vector< uint16_t > HtoN () const
 
bool operator== (StaticData d) const
 
bool valid () const
 
void clear ()
 
void print (std::ostream &out) const
 
StaticDataBoardoperator[] (int i)
 
const StaticDataBoardoperator[] (int i) const
 
void EnableFTU (int i)
 
void DisableFTU (int i)
 
void EnableAllFTU ()
 
void DisableAllFTU ()
 
void EnableLPint (LightPulserEnable group, bool enable)
 
void EnableLPext (LightPulserEnable group, bool enable)
 
void ToggleFTU (int i)
 
void Enable (GeneralSettings type, bool enable)
 
bool IsEnabled (GeneralSettings type) const
 
uint16_t * EnablePixel (int idx, bool enable)
 
void EnablePatch (int idx, bool enable)
 
void EnableAllPixel ()
 
bool Enabled (uint16_t idx) const
 
uint8_t GetSequencePed () const
 
uint8_t GetSequenceLPint () const
 
uint8_t GetSequenceLPext () const
 
void SetSequence (uint8_t ped, uint8_t lpint, uint8_t lpext)
 
void SetClockRegister (const uint64_t reg[])
 
void SetPrescaling (uint16_t val)
 

Public Attributes

uint16_t fGeneralSettings
 
uint16_t fStatusLEDs
 Enable for different trigger types / select for TIM/ClockConditioner output (only 8 bit used) More...
 
uint16_t fTriggerInterval
 only 8 bit used More...
 
uint16_t fTriggerSequence
 [ms] Interval between two artificial triggers (no matter which type) minimum 1ms, 10 bit More...
 
uint8_t fIntensityLPext
 Ratio between trigger types send as artificial trigger (in this order) 3x5bit. More...
 
uint8_t fEnableLPext
 Intensity of LEDs (0-127) More...
 
uint8_t fIntensityLPint
 Enable for LED group 1/2 (LightPulserEnable) More...
 
uint8_t fEnableLPint
 Intensity of LEDs (0-127) More...
 
uint32_t fDummy0
 Enable for LED group 1/2 (LightPulserEnable) More...
 
uint16_t fMultiplicityPhysics
 
uint16_t fMultiplicityCalib
 Required trigger multiplicity for physcis triggers (0-40) More...
 
uint16_t fDelayTrigger
 Required trigger multiplicity calibration (LPext) triggers (0-40) More...
 
uint16_t fDelayTimeMarker
 (4ns * x + 8ns) FTM internal programmable delay between trigger decision and output More...
 
uint16_t fDeadTime
 (4ns * x + 8ns) FTM internal programmable delay between trigger descision and time marker output More...
 
uint32_t fClockConditioner [8]
 (4ns * x + 8ns) FTM internal programmable dead time after trigger decision More...
 
uint16_t fWindowPhysics
 R0, R1, R8, R9, R11, R13, R14, R15. More...
 
uint16_t fWindowCalib
 (4ns * x + 8ns) At least N (multiplicity) rising edges (trigger signal) within this window More...
 
uint16_t fDummy1
 (4ns * x + 8ns) At least N (multiplicity) rising edges (trigger signal) within this window More...
 
StaticDataBoard fBoard [4][10]
 
uint16_t fActiveFTU [4]
 

Detailed Description

Definition at line 179 of file HeadersFTM.h.


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