FACT++  1.0
void FactGui::handleFtmStaticData ( const DimData d)
inlineprivate

Definition at line 1935 of file FactGui.h.

References FTM::DimStaticData::fClockConditioner, fDeadTime, FTM::DimStaticData::fDeadTime, FTM::DimStaticData::fDelayTimeMarker, FTM::DimStaticData::fDelayTrigger, FTM::DimStaticData::fIntensityLPext, FTM::DimStaticData::fIntensityLPint, FTM::DimStaticData::fMultiplicity, FTM::DimStaticData::fMultiplicityCalib, FTM::DimStaticData::fMultiplicityPhysics, FTM::DimStaticData::fPrescaling, freq, FTM::DimStaticData::fThreshold, fTriggerInterval, FTM::DimStaticData::fTriggerInterval, fTriggerSeqLPext, FTM::DimStaticData::fTriggerSeqLPext, fTriggerSeqLPint, FTM::DimStaticData::fTriggerSeqLPint, fTriggerSeqPed, FTM::DimStaticData::fTriggerSeqPed, FTM::DimStaticData::fWindowCalib, FTM::DimStaticData::fWindowPhysics, FTM::DimStaticData::HasClockConditioner(), FTM::DimStaticData::HasExt1(), FTM::DimStaticData::HasExt2(), FTM::DimStaticData::HasLPextG1(), FTM::DimStaticData::HasLPextG2(), FTM::DimStaticData::HasLPintG1(), FTM::DimStaticData::HasLPintG2(), FTM::DimStaticData::HasTrigger(), FTM::DimStaticData::HasVeto(), PixelMapEntry::hw(), i, PixelMap::index(), FTM::DimStaticData::IsActive(), FTM::DimStaticData::IsEnabled(), DimData::ref(), and DimData::time.

Referenced by infoHandler().

1936  {
1937  if (!CheckSize(d, sizeof(FTM::DimStaticData)))
1938  return;
1939 
1940  const FTM::DimStaticData &sdata = d.ref<FTM::DimStaticData>();
1941 
1942  fTriggerInterval->setValue(sdata.fTriggerInterval);
1943  fPhysicsCoincidence->setValue(sdata.fMultiplicityPhysics);
1944  fCalibCoincidence->setValue(sdata.fMultiplicityCalib);
1945  fPhysicsWindow->setValue(sdata.fWindowPhysics);
1946  fCalibWindow->setValue(sdata.fWindowCalib);
1947 
1948  fTriggerDelay->setValue(sdata.fDelayTrigger);
1949  fTimeMarkerDelay->setValue(sdata.fDelayTimeMarker);
1950  fDeadTime->setValue(sdata.fDeadTime);
1951 
1952  fClockCondR0->setValue(sdata.fClockConditioner[0]);
1953  fClockCondR1->setValue(sdata.fClockConditioner[1]);
1954  fClockCondR8->setValue(sdata.fClockConditioner[2]);
1955  fClockCondR9->setValue(sdata.fClockConditioner[3]);
1956  fClockCondR11->setValue(sdata.fClockConditioner[4]);
1957  fClockCondR13->setValue(sdata.fClockConditioner[5]);
1958  fClockCondR14->setValue(sdata.fClockConditioner[6]);
1959  fClockCondR15->setValue(sdata.fClockConditioner[7]);
1960 
1961  const uint32_t R0 = sdata.fClockConditioner[0];
1962  const uint32_t R14 = sdata.fClockConditioner[6];
1963  const uint32_t R15 = sdata.fClockConditioner[7];
1964 
1965  const uint32_t Ndiv = (R15&0x1ffff00)<<2;
1966  const uint32_t Rdiv = (R14&0x007ff00)>>8;
1967  const uint32_t Cdiv = (R0 &0x000ff00)>>8;
1968 
1969  double freq = 40.*Ndiv/(Rdiv*Cdiv);
1970 
1971  fClockCondFreqRes->setValue(freq);
1972 
1973  //fClockCondFreq->setEditText("");
1974  fClockCondFreq->setCurrentIndex(0);
1975 
1976  fTriggerSeqPed->setValue(sdata.fTriggerSeqPed);
1977  fTriggerSeqLPint->setValue(sdata.fTriggerSeqLPint);
1978  fTriggerSeqLPext->setValue(sdata.fTriggerSeqLPext);
1979 
1980  fLpIntIntensity->setValue(sdata.fIntensityLPint);
1981  fLpExtIntensity->setValue(sdata.fIntensityLPext);
1982 
1983  fLpIntGroup1->setChecked(sdata.HasLPintG1());
1984  fLpIntGroup2->setChecked(sdata.HasLPintG2());
1985  fLpExtGroup1->setChecked(sdata.HasLPextG1());
1986  fLpExtGroup2->setChecked(sdata.HasLPextG2());
1987 
1988  fEnableTrigger->setChecked(sdata.HasTrigger());
1989  fEnableVeto->setChecked(sdata.HasVeto());
1990  fEnableExt1->setChecked(sdata.HasExt1());
1991  fEnableExt2->setChecked(sdata.HasExt2());
1992  fEnableClockCond->setChecked(sdata.HasClockConditioner());
1993 
1994  uint16_t multiplicity = sdata.fMultiplicity[0];
1995 
1996  for (int i=0; i<40; i++)
1997  {
1998  if (!sdata.IsActive(i))
1999  SetFtuLed(i, -1, d.time);
2000  else
2001  {
2002  if (fFtuStatus[i]==0)
2003  SetFtuLed(i, 1, d.time);
2004  }
2005  fFtuLED[i]->setChecked(false);
2006 
2007  if (sdata.fMultiplicity[i]!=multiplicity)
2008  multiplicity = -1;
2009 
2010  }
2011  SetFtuStatusLed(d.time);
2012 
2013  fNoutof4Val->setValue(multiplicity);
2014 
2015  for (vector<PixelMapEntry>::const_iterator it=fPixelMap.begin(); it!=fPixelMap.end(); it++)
2016  fRatesCanv->SetEnable(it->index, sdata.IsEnabled(it->hw()));
2017 
2018  const PixelMapEntry &entry = fPixelMap.index(fPixelIdx->value());
2019  fPixelEnable->setChecked(sdata.IsEnabled(entry.hw()));
2020 
2021  if (fThresholdIdx->value()>=0)
2022  {
2023  const int isw = fThresholdIdx->value();
2024  const int ihw = fPatchMapHW[isw];
2025  fThresholdVal->setValue(sdata.fThreshold[ihw]);
2026  }
2027 
2028  fPrescalingVal->setValue(sdata.fPrescaling[0]);
2029 
2030  fFtmStaticData = sdata;
2031  }
bool HasTrigger() const
Definition: HeadersFTM.h:415
uint16_t fTriggerSeqPed
Definition: HeadersFTM.h:390
bool HasLPintG1() const
Definition: HeadersFTM.h:426
FTM::DimStaticData fFtmStaticData
Definition: FactGui.h:1882
uint16_t fTriggerSeqLPint
Definition: HeadersFTM.h:194
int i
Definition: db_dim_client.c:21
bool CheckSize(const DimData &d, size_t sz, bool print=true) const
Definition: FactGui.h:639
uint16_t fTriggerInterval
only 8 bit used
Definition: HeadersFTM.h:224
uint8_t fIntensityLPext
Intensity of LEDs (0-127)
Definition: HeadersFTM.h:395
void SetFtuStatusLed(const Time &t)
Definition: FactGui.h:1899
uint32_t fClockConditioner[8]
Definition: HeadersFTM.h:407
bool HasLPintG2() const
Definition: HeadersFTM.h:427
uint16_t fMultiplicityPhysics
Intensity of LEDs (0-127)
Definition: HeadersFTM.h:397
uint16_t fWindowPhysics
Definition: HeadersFTM.h:400
uint8_t fIntensityLPint
Enable for LED group 1/2 (LightPulserEnable)
Definition: HeadersFTM.h:394
uint16_t fDeadTime
(4ns * x + 8ns) FTM internal programmable delay between trigger descision and time marker output ...
Definition: HeadersFTM.h:235
uint32_t fDeadTime
Definition: HeadersFTM.h:405
uint16_t fDelayTimeMarker
Definition: HeadersFTM.h:404
uint16_t fPrescaling[40]
Definition: HeadersFTM.h:412
const Time time
Definition: DimData.h:9
PixelMap fPixelMap
Definition: FactGui.h:73
const T & ref(uint32_t offset=0) const
Definition: DimData.h:35
uint16_t fTriggerSeqLPext
Definition: HeadersFTM.h:195
bool HasLPextG2() const
Definition: HeadersFTM.h:425
uint16_t fMultiplicity[40]
Definition: HeadersFTM.h:411
bool HasExt1() const
Definition: HeadersFTM.h:420
const PixelMapEntry & index(int idx) const
Definition: PixelMap.h:107
uint16_t fWindowCalib
Definition: HeadersFTM.h:401
uint16_t fTriggerSeqPed
Definition: HeadersFTM.h:196
uint16_t fTriggerInterval
Definition: HeadersFTM.h:386
valarray< int8_t > fFtuStatus
Definition: FactGui.h:71
bool HasLPextG1() const
Definition: HeadersFTM.h:424
uint16_t fMultiplicityCalib
Definition: HeadersFTM.h:398
bool HasClockConditioner() const
Definition: HeadersFTM.h:422
uint16_t fTriggerSeqLPint
Definition: HeadersFTM.h:388
bool IsEnabled(int i) const
Definition: HeadersFTM.h:430
uint16_t fDelayTrigger
Definition: HeadersFTM.h:403
uint16_t fThreshold[160]
Definition: HeadersFTM.h:410
uint16_t fTriggerSeqLPext
Definition: HeadersFTM.h:389
bool IsActive(int i) const
Definition: HeadersFTM.h:429
bool HasVeto() const
Definition: HeadersFTM.h:421
int hw() const
Definition: PixelMap.h:39
QPushButton * fFtuLED[40]
Definition: MainWindow.h:23
void SetFtuLed(int idx, int counter, const Time &t)
Definition: FactGui.h:1884
bool HasExt2() const
Definition: HeadersFTM.h:419
vector< int > fPatchMapHW
Definition: FactGui.h:76
uint32_t freq
Definition: HeadersSQM.h:90

+ Here is the call graph for this function:

+ Here is the caller graph for this function: