|
ATLAS Offline Software
|
#include <TileCisDefaultCalibTool.h>
|
| TileCisDefaultCalibTool (const std::string &type, const std::string &name, const IInterface *pParent) |
|
virtual | ~TileCisDefaultCalibTool () |
|
virtual StatusCode | initialize () override |
|
virtual StatusCode | initNtuple (int runNumber, int runType, TFile *rootfile) override |
|
virtual StatusCode | execute () override |
|
virtual StatusCode | finalizeCalculations () override |
|
virtual StatusCode | writeNtuple (int runNumber, int runType, TFile *rootfile) override |
|
virtual StatusCode | finalize () override |
|
ServiceHandle< StoreGateSvc > & | evtStore () |
| The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc . More...
|
|
const ServiceHandle< StoreGateSvc > & | evtStore () const |
| The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc . More...
|
|
const ServiceHandle< StoreGateSvc > & | detStore () const |
| The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc . More...
|
|
virtual StatusCode | sysInitialize () override |
| Perform system initialization for an algorithm. More...
|
|
virtual StatusCode | sysStart () override |
| Handle START transition. More...
|
|
virtual std::vector< Gaudi::DataHandle * > | inputHandles () const override |
| Return this algorithm's input handles. More...
|
|
virtual std::vector< Gaudi::DataHandle * > | outputHandles () const override |
| Return this algorithm's output handles. More...
|
|
Gaudi::Details::PropertyBase & | declareProperty (Gaudi::Property< T > &t) |
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, SG::VarHandleKey &hndl, const std::string &doc, const SG::VarHandleKeyType &) |
| Declare a new Gaudi property. More...
|
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, SG::VarHandleBase &hndl, const std::string &doc, const SG::VarHandleType &) |
| Declare a new Gaudi property. More...
|
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, SG::VarHandleKeyArray &hndArr, const std::string &doc, const SG::VarHandleKeyArrayType &) |
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, T &property, const std::string &doc, const SG::NotHandleType &) |
| Declare a new Gaudi property. More...
|
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, T &property, const std::string &doc="none") |
| Declare a new Gaudi property. More...
|
|
void | updateVHKA (Gaudi::Details::PropertyBase &) |
|
MsgStream & | msg () const |
|
MsgStream & | msg (const MSG::Level lvl) const |
|
bool | msgLvl (const MSG::Level lvl) const |
|
|
enum | QualityType {
includedBit = 0,
calibratedBit = 1,
rangeBit = 2,
probBit = 3,
noiseBit = 4,
injRMSBit = 5,
digiErrorBit = 6,
probChi2Bit = 7,
edgeSamp = 8,
nextToEdgeSamp = 9,
stuckbitBit = 10
} |
|
typedef std::map< uint32_t, int > | TDACIntMap |
|
typedef std::map< uint32_t, double > | TDACDoubleMap |
|
typedef std::map< uint32_t, double >::iterator | TDACDoubleMapIter |
|
typedef std::map< HWIdentifier, TDACIntMap * > | TAdcIntMap |
|
typedef std::map< HWIdentifier, TDACDoubleMap * > | TAdcDoubleMap |
|
typedef std::map< HWIdentifier, TDACDoubleMap * >::iterator | TAdcDoubleMapIter |
|
using | Tile = TileCalibUtils |
|
typedef ServiceHandle< StoreGateSvc > | StoreGateSvc_t |
|
|
int | chanIsConnected (int ros, int chan) |
|
void | setBit (QualityType qb, int &bitflag) |
|
void | unsetBit (QualityType qb, int &bitflag) |
|
TString | arrayString (int ros, int drawer, int chan, int gain) |
|
Gaudi::Details::PropertyBase & | declareGaudiProperty (Gaudi::Property< T > &hndl, const SG::VarHandleKeyType &) |
| specialization for handling Gaudi::Property<SG::VarHandleKey> More...
|
|
Gaudi::Details::PropertyBase & | declareGaudiProperty (Gaudi::Property< T > &hndl, const SG::VarHandleKeyArrayType &) |
| specialization for handling Gaudi::Property<SG::VarHandleKeyArray> More...
|
|
Gaudi::Details::PropertyBase & | declareGaudiProperty (Gaudi::Property< T > &hndl, const SG::VarHandleType &) |
| specialization for handling Gaudi::Property<SG::VarHandleBase> More...
|
|
Gaudi::Details::PropertyBase & | declareGaudiProperty (Gaudi::Property< T > &t, const SG::NotHandleType &) |
| specialization for handling everything that's not a Gaudi::Property<SG::VarHandleKey> or a <SG::VarHandleKeyArray> More...
|
|
|
TAdcIntMap | m_NEvtMap |
|
TAdcIntMap | m_NDigitalErrorsMap |
|
TAdcDoubleMap | m_MeanMap |
|
TAdcDoubleMap | m_MeanSqMap |
|
const TileHWID * | m_tileHWID |
|
const TileCablingService * | m_cabling |
|
ServiceHandle< TileCablingSvc > | m_cablingSvc |
|
ToolHandle< ITileStuckBitsProbsTool > | m_stuckBitsProbs |
|
SG::ReadHandleKey< TileDQstatus > | m_dqStatusKey |
|
SG::ReadHandleKey< TileDigitsContainer > | m_digitsContainerKey |
|
SG::ReadHandleKey< TileRawChannelContainer > | m_rawChannelContainerKey |
|
std::string | m_rawChannelContainerName |
|
std::string | m_ntupleID |
|
std::string | m_DigitsContainerName |
|
bool | m_useSmallCap |
|
bool | m_removePed |
|
double | m_maxPed |
|
double | m_phaseMin |
|
double | m_phaseMax |
|
double | m_chargeMaxHi |
|
double | m_chargeMinHi |
|
double | m_chargeMaxLo |
|
double | m_chargeMinLo |
|
double | m_linfitMaxHi |
|
double | m_linfitMinHi |
|
double | m_linfitMaxLo |
|
double | m_linfitMinLo |
|
double | m_linfitMaxHiDemo |
|
double | m_linfitMinHiDemo |
|
double | m_linfitMaxLoDemo |
|
double | m_linfitMinLoDemo |
|
bool | m_doSampleChecking |
|
float(* | m_calib )[Tile::MAX_DRAWER][Tile::MAX_CHAN][Tile::MAX_GAIN] |
|
int(* | m_qflag )[Tile::MAX_DRAWER][Tile::MAX_CHAN][Tile::MAX_GAIN] |
|
int(* | m_nDAC )[Tile::MAX_DRAWER][Tile::MAX_CHAN][Tile::MAX_GAIN] |
|
int(* | m_nDigitalErrors )[Tile::MAX_DRAWER][Tile::MAX_CHAN][Tile::MAX_GAIN] |
|
float(* | m_chi2 )[Tile::MAX_DRAWER][Tile::MAX_CHAN][Tile::MAX_GAIN] |
|
int(* | m_edgeSample )[Tile::MAX_DRAWER][Tile::MAX_CHAN][Tile::MAX_GAIN] |
|
int(* | m_nextToEdgeSample )[Tile::MAX_DRAWER][Tile::MAX_CHAN][Tile::MAX_GAIN] |
|
int(* | m_sampleBit )[Tile::MAX_DRAWER][Tile::MAX_CHAN][Tile::MAX_GAIN][NBITS] |
|
unsigned short(* | m_bitStatus )[Tile::MAX_DRAWER][Tile::MAX_CHAN][Tile::MAX_GAIN][NBSTATUS] |
|
int(* | m_numSamp )[Tile::MAX_DRAWER][Tile::MAX_CHAN][Tile::MAX_GAIN] |
|
TMap * | m_scanMap |
|
TMap * | m_scanMapRMS |
|
double | m_defaultCalib [4] = {0., 0., 0., 0.} |
|
double | m_dac2Charge [4] = {0., 0., 0., 0.} |
|
double | m_chargeMin [4] = {0., 0., 0., 0.} |
|
double | m_chargeMax [4] = {0., 0., 0., 0.} |
|
double | m_linfitMin [4] = {0., 0., 0., 0.} |
|
double | m_linfitMax [4] = {0., 0., 0., 0.} |
|
double | m_maxAmp [4] = {0., 0., 0., 0.} |
|
std::vector< int > | m_fragIDsDemonstrators |
|
std::string | m_infoName |
|
const TileInfo * | m_tileInfo |
|
StoreGateSvc_t | m_evtStore |
| Pointer to StoreGate (event store by default) More...
|
|
StoreGateSvc_t | m_detStore |
| Pointer to StoreGate (detector store by default) More...
|
|
std::vector< SG::VarHandleKeyArray * > | m_vhka |
|
bool | m_varHandleArraysDeclared |
|
Definition at line 42 of file TileCisDefaultCalibTool.h.
◆ StoreGateSvc_t
◆ TAdcDoubleMap
◆ TAdcDoubleMapIter
◆ TAdcIntMap
◆ TDACDoubleMap
◆ TDACDoubleMapIter
◆ TDACIntMap
◆ Tile
◆ QualityType
Enumerator |
---|
includedBit | |
calibratedBit | |
rangeBit | |
probBit | |
noiseBit | |
injRMSBit | |
digiErrorBit | |
probChi2Bit | |
edgeSamp | |
nextToEdgeSamp | |
stuckbitBit | |
Definition at line 60 of file TileCisDefaultCalibTool.h.
◆ TileCisDefaultCalibTool()
TileCisDefaultCalibTool::TileCisDefaultCalibTool |
( |
const std::string & |
type, |
|
|
const std::string & |
name, |
|
|
const IInterface * |
pParent |
|
) |
| |
◆ ~TileCisDefaultCalibTool()
TileCisDefaultCalibTool::~TileCisDefaultCalibTool |
( |
| ) |
|
|
virtual |
◆ arrayString()
TString TileCisDefaultCalibTool::arrayString |
( |
int |
ros, |
|
|
int |
drawer, |
|
|
int |
chan, |
|
|
int |
gain |
|
) |
| |
|
inlineprivate |
◆ chanIsConnected()
int TileCisDefaultCalibTool::chanIsConnected |
( |
int |
ros, |
|
|
int |
chan |
|
) |
| |
|
inlineprivate |
◆ declareGaudiProperty() [1/4]
specialization for handling Gaudi::Property<SG::VarHandleKeyArray>
Definition at line 170 of file AthCommonDataStore.h.
175 hndl.documentation());
◆ declareGaudiProperty() [2/4]
specialization for handling Gaudi::Property<SG::VarHandleKey>
Definition at line 156 of file AthCommonDataStore.h.
161 hndl.documentation());
◆ declareGaudiProperty() [3/4]
specialization for handling Gaudi::Property<SG::VarHandleBase>
Definition at line 184 of file AthCommonDataStore.h.
189 hndl.documentation());
◆ declareGaudiProperty() [4/4]
◆ declareProperty() [1/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
hndl | Object holding the property value. |
doc | Documentation string for the property. |
This is the version for types that derive from SG::VarHandleBase
. The property value object is put on the input and output lists as appropriate; then we forward to the base class.
Definition at line 245 of file AthCommonDataStore.h.
250 this->declare(hndl.
vhKey());
251 hndl.
vhKey().setOwner(
this);
253 return PBASE::declareProperty(
name,hndl,
doc);
◆ declareProperty() [2/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
hndl | Object holding the property value. |
doc | Documentation string for the property. |
This is the version for types that derive from SG::VarHandleKey
. The property value object is put on the input and output lists as appropriate; then we forward to the base class.
Definition at line 221 of file AthCommonDataStore.h.
229 return PBASE::declareProperty(
name,hndl,
doc);
◆ declareProperty() [3/6]
◆ declareProperty() [4/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
property | Object holding the property value. |
doc | Documentation string for the property. |
This is the generic version, for types that do not derive from SG::VarHandleKey
. It just forwards to the base class version of declareProperty
.
Definition at line 333 of file AthCommonDataStore.h.
338 return PBASE::declareProperty(
name, property,
doc);
◆ declareProperty() [5/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
property | Object holding the property value. |
doc | Documentation string for the property. |
This dispatches to either the generic declareProperty
or the one for VarHandle/Key/KeyArray.
Definition at line 352 of file AthCommonDataStore.h.
◆ declareProperty() [6/6]
◆ detStore()
◆ evtStore() [1/2]
◆ evtStore() [2/2]
◆ execute()
StatusCode TileCisDefaultCalibTool::execute |
( |
| ) |
|
|
overridevirtual |
Implements ITileCalibTool.
Definition at line 195 of file TileCisDefaultCalibTool.cxx.
200 const EventContext& ctx = Gaudi::Hive::currentContext();
208 int cap_ind = (cap > 10) ? 0 : 1;
210 for (
int i=0;
i<4; ++
i)
220 if (cispar[6] == 120) {
236 for (; itColl != itCollEnd; ++itColl) {
238 int fragId = (*itColl)->identify();
240 int gain_offset = (demonstrator) ? 2 : 0;
241 double charge = chargeAll[cap_ind+gain_offset];
244 it = (*itColl)->begin();
245 itEnd = (*itColl)->end();
247 for (;
it != itEnd; ++
it) {
269 if (NEvtDacMap ==
nullptr) {
279 double amp = (*it)->amplitude();
287 <<
" channel: " <<
chan
289 <<
" due to DQ error found." );
291 (*NDigitalErrorsDacMap)[
dac] += 1;
297 (*NEvtDacMap)[
dac] += 1;
298 (*MeanDacMap)[
dac] += amp;
299 (*MeanSqDacMap)[
dac] += amp*amp;
318 for (; digItColl != digItCollEnd; ++digItColl) {
323 if (digIt != digItEnd) {
325 int fragId = (*digItColl)->identify();
327 int gain_offset = (demonstrator) ? 2 : 0;
328 double charge = chargeAll[cap_ind+gain_offset];
335 int numSamples = (*digIt)->NtimeSamples();
336 if (numSamples != 7) {
341 for (; digIt != digItEnd; ++digIt) {
343 adc_id = (*digIt)->adc_HWID();
347 std::vector<float> theDigits = (*digIt)->samples();
356 for(
unsigned int sampNum = 0; sampNum < theDigits.size(); sampNum++) {
361 int quotient = theDigits[sampNum];
365 if((quotient % 2) == 1) {
370 quotient = quotient / 2;
377 std::vector<float> theDigits = (*digIt)->samples();
378 float maxSampVal = -1.;
381 for (
unsigned int sampNum = 0; sampNum < theDigits.size(); sampNum++) {
382 if (theDigits[sampNum] > maxSampVal) {
383 maxSampVal = theDigits[sampNum];
384 maxSampNum = sampNum + 1;
388 if (maxSampNum == 1 || maxSampNum == 7) {
390 }
else if (maxSampNum == 2 || maxSampNum == 6) {
402 return StatusCode::SUCCESS;
◆ extraDeps_update_handler()
Add StoreName to extra input/output deps as needed.
use the logic of the VarHandleKey to parse the DataObjID keys supplied via the ExtraInputs and ExtraOuputs Properties to add the StoreName if it's not explicitly given
◆ finalize()
StatusCode TileCisDefaultCalibTool::finalize |
( |
| ) |
|
|
overridevirtual |
◆ finalizeCalculations()
StatusCode TileCisDefaultCalibTool::finalizeCalculations |
( |
| ) |
|
|
overridevirtual |
Implements ITileCalibTool.
Definition at line 405 of file TileCisDefaultCalibTool.cxx.
413 meanCalib[0] = 1.295;
414 meanCalib[1] = 81.454;
416 meanCalib[2] = 1.26282;
417 meanCalib[3] = 40.9303;
436 int nevt, ndigerr = 0;
439 double maxPointInFitRange;
442 TF1 *fslope =
new TF1(
"fslope",
"[0]*x", 0, 1000);
452 for (; adcIter != adcIterE; ++adcIter) {
453 hwid = (adcIter)->
first;
454 MeanDacMap = (adcIter)->
second;
466 int gain_offset = (demonstrator) ? 2 : 0;
467 int gain_ind =
gain + gain_offset;
470 double prevMean = 0.0, deltaMean = 0.0, averSlope = 0.0;
471 double prevCharge = 0.0, deltaCharge = 0.0, deltaChargeMin = 999999.;
472 double prevSlope = 0.0, slope = 0.0, maxGoodAmp=0.0, minGoodAmp = 999999.;
473 double maxGoodCharge =
m_linfitMax[gain_ind], minGoodCharge = 999999.;
474 double maxCharge = 0.0, minCharge = 999999., maxAmp = 0.0, minAmp = 999999.;
475 bool signalInRange =
true;
479 npt = MeanDacMap->size();
481 gr =
new TGraphErrors(npt);
482 grrms =
new TGraphErrors(npt);
501 maxPointInFitRange = 0.0;
503 for (; dacIter != dacIterE; ++dacIter) {
506 meansq = (*MeanSqDacMap)[
dac];
507 nevt = (*NEvtDacMap)[
dac];
508 ndigerr = (*NDigitalErrorsDacMap)[
dac];
512 meansq = meansq / nevt;
514 rms = (meansq <= mean2) ? 0. : sqrt(meansq - mean2);
515 err = sqrt(
rms *
rms / nevt + 0.5 * 0.5);
527 deltaMean =
mean - prevMean;
528 deltaCharge =
charge - prevCharge;
529 if (deltaCharge != 0) {
530 slope = deltaMean / deltaCharge;
531 if (deltaCharge<deltaChargeMin) deltaChargeMin = deltaCharge;
537 signalInRange =
false;
543 <<
" => Ignoring this point ");
545 if (prevSlope != 0) {
546 double R = std::abs(slope/prevSlope);
547 double R1 = (nptGood>1) ? (slope / averSlope) : 1.;
548 if (
R<0.025 || (nptGood>2 && R1>2.5 &&
R>2.5) || (nptGood==2 && R1>4.1) ) {
555 <<
" dC " << deltaCharge
556 <<
" dA " << deltaMean
557 <<
" expected dA " << prevSlope*deltaCharge
558 <<
" aver dA " << averSlope*deltaCharge
560 <<
" => Removing this point ");
567 if (
mean>maxGoodAmp) maxGoodAmp =
mean;
568 if (
mean<minGoodAmp) minGoodAmp =
mean;
576 averSlope += (slope - averSlope) / nptGood;
586 if (
rms < 0.01) badPts++;
587 if (
mean > maxPointInFitRange) maxPointInFitRange =
mean;
588 if (
rms > maxRMS) maxRMS =
rms;
593 if (prevSlope !=0 ) {
594 double R = slope / prevSlope;
595 if (
R>0.4 &&
R<2.5) {
598 prevSlope = (prevSlope + slope)/2.;
602 if (
R>0.4 &&
R<2.5) {
606 }
else if (nptGood < 3 && signalInRange && charge >=
m_linfitMax[gain_ind] &&
mean <
m_maxAmp[gain_ind] && prevSlope != 0) {
607 double R = slope/prevSlope;
608 if (
R>0.9 &&
R<1.1) {
617 gr->SetPointError(
pt, 0.0,
err);
620 grrms->SetPointError(
pt, 0.0,
rms);
626 for (
int i=npt-1;
i>=
pt; --
i)
629 slope = (prevMean > 0 && prevCharge > 0) ? prevMean/prevCharge :
m_defaultCalib[gain_ind];
630 fslope->SetParameter(0, slope);
635 <<
" up to " << maxGoodCharge
636 <<
" pC; N good points " << nptGood);
639 if (deltaChargeMin>999.) deltaChargeMin = 0.1;
640 else deltaChargeMin *= 0.5;
641 gr->Fit(
"fslope",
"q",
"", minGoodCharge-deltaChargeMin, maxGoodCharge+deltaChargeMin);
645 <<
" minC " << minGoodCharge
646 <<
" maxC " << maxGoodCharge
647 <<
" deltaC " << deltaChargeMin*2
648 <<
" minA " << minGoodAmp
649 <<
" maxA " << maxGoodAmp
650 <<
" nptG " << nptGood
651 <<
" slope " << slope
652 <<
" fit " << fslope->GetParameter(0));
654 const char * bms[3] = {
"No good points to fit ",
655 "Only one point to fit ",
656 "Only two points to fit "};
657 const char * ems[3] = {
" => Put zero slope",
665 <<
" slope " << slope
666 <<
" fit " << fslope->GetParameter(0)
669 slope = (nptGood > 0) ? fslope->GetParameter(0) : 0.;
672 if (maxGoodCharge > minGoodCharge) {
673 averSlope = (maxGoodAmp-minGoodAmp)/(maxGoodCharge-minGoodCharge);
674 if (slope > 2.5 * averSlope) {
680 <<
" avslope " << averSlope
682 <<
" => Put zero slope");
685 }
else if (maxCharge > minCharge) {
686 averSlope = (maxAmp-minAmp)/(maxCharge-minCharge);
687 if (slope > 10. * averSlope) {
693 <<
" AVslope " << averSlope
695 <<
" => Put zero slope");
709 if (fslope->GetNDF() == 0)
715 if (TMath::Prob(fslope->GetChisquare(), fslope->GetNDF()) > 2.e-6) {
733 ratio = (slope / meanCalib[gain_ind]);
738 if (maxPointInFitRange > 600) {
799 return StatusCode::SUCCESS;
◆ initialize()
StatusCode TileCisDefaultCalibTool::initialize |
( |
| ) |
|
|
overridevirtual |
◆ initNtuple()
StatusCode TileCisDefaultCalibTool::initNtuple |
( |
int |
runNumber, |
|
|
int |
runType, |
|
|
TFile * |
rootfile |
|
) |
| |
|
overridevirtual |
◆ inputHandles()
Return this algorithm's input handles.
We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.
◆ interfaceID()
static const InterfaceID& ITileCalibTool::interfaceID |
( |
| ) |
|
|
inlinestaticinherited |
◆ msg() [1/2]
◆ msg() [2/2]
◆ msgLvl()
◆ outputHandles()
Return this algorithm's output handles.
We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.
◆ renounce()
◆ renounceArray()
◆ setBit()
void TileCisDefaultCalibTool::setBit |
( |
QualityType |
qb, |
|
|
int & |
bitflag |
|
) |
| |
|
inlineprivate |
◆ sysInitialize()
◆ sysStart()
Handle START transition.
We override this in order to make sure that conditions handle keys can cache a pointer to the conditions container.
◆ unsetBit()
void TileCisDefaultCalibTool::unsetBit |
( |
QualityType |
qb, |
|
|
int & |
bitflag |
|
) |
| |
|
inlineprivate |
◆ updateVHKA()
◆ writeNtuple()
StatusCode TileCisDefaultCalibTool::writeNtuple |
( |
int |
runNumber, |
|
|
int |
runType, |
|
|
TFile * |
rootfile |
|
) |
| |
|
overridevirtual |
Implements ITileCalibTool.
Definition at line 802 of file TileCisDefaultCalibTool.cxx.
806 TTree *
t =
new TTree(
m_ntupleID.c_str(),
"TileCalib-Ntuple");
807 t->Branch(
"RunNumber", &
runNumber,
"runNo/I");
808 t->Branch(
"calib", *
m_calib,
"calib[5][64][48][2]/F");
809 t->Branch(
"qflag", *
m_qflag,
"qflag[5][64][48][2]/I");
810 t->Branch(
"nDAC", *
m_nDAC,
"nDAC[5][64][48][2]/I");
811 t->Branch(
"nDigitalErrors", *
m_nDigitalErrors,
"nDigitalErrors[5][64][48][2]/I");
812 t->Branch(
"chi2", *
m_chi2,
"chi2[5][64][48][2]/F");
813 t->Branch(
"BitStatus", *
m_bitStatus,
"BitStatus[5][64][48][2][4]/s");
817 ATH_MSG_WARNING(
"Impossible to get ITileStuckBitsProbsTool and stuck bits probabilities!");
828 m_scanMap->Write(
"cisScans", TObject::kSingleKey);
829 m_scanMapRMS->Write(
"cisScansRMS", TObject::kSingleKey);
831 return StatusCode::SUCCESS;
◆ m_bitStatus
◆ m_cabling
◆ m_cablingSvc
◆ m_calib
◆ m_chargeMax
double TileCisDefaultCalibTool::m_chargeMax[4] = {0., 0., 0., 0.} |
|
private |
◆ m_chargeMaxHi
double TileCisDefaultCalibTool::m_chargeMaxHi |
|
private |
◆ m_chargeMaxLo
double TileCisDefaultCalibTool::m_chargeMaxLo |
|
private |
◆ m_chargeMin
double TileCisDefaultCalibTool::m_chargeMin[4] = {0., 0., 0., 0.} |
|
private |
◆ m_chargeMinHi
double TileCisDefaultCalibTool::m_chargeMinHi |
|
private |
◆ m_chargeMinLo
double TileCisDefaultCalibTool::m_chargeMinLo |
|
private |
◆ m_chi2
◆ m_dac2Charge
double TileCisDefaultCalibTool::m_dac2Charge[4] = {0., 0., 0., 0.} |
|
private |
◆ m_defaultCalib
double TileCisDefaultCalibTool::m_defaultCalib[4] = {0., 0., 0., 0.} |
|
private |
◆ m_detStore
◆ m_digitsContainerKey
Initial value:{this,
"TileDigitsContainer", "TileDigitsCnt", "Tile digits container"}
Definition at line 99 of file TileCisDefaultCalibTool.h.
◆ m_DigitsContainerName
std::string TileCisDefaultCalibTool::m_DigitsContainerName |
|
private |
◆ m_doSampleChecking
bool TileCisDefaultCalibTool::m_doSampleChecking |
|
private |
◆ m_dqStatusKey
◆ m_edgeSample
◆ m_evtStore
◆ m_fragIDsDemonstrators
std::vector<int> TileCisDefaultCalibTool::m_fragIDsDemonstrators |
|
private |
◆ m_infoName
std::string TileCisDefaultCalibTool::m_infoName |
|
private |
◆ m_linfitMax
double TileCisDefaultCalibTool::m_linfitMax[4] = {0., 0., 0., 0.} |
|
private |
◆ m_linfitMaxHi
double TileCisDefaultCalibTool::m_linfitMaxHi |
|
private |
◆ m_linfitMaxHiDemo
double TileCisDefaultCalibTool::m_linfitMaxHiDemo |
|
private |
◆ m_linfitMaxLo
double TileCisDefaultCalibTool::m_linfitMaxLo |
|
private |
◆ m_linfitMaxLoDemo
double TileCisDefaultCalibTool::m_linfitMaxLoDemo |
|
private |
◆ m_linfitMin
double TileCisDefaultCalibTool::m_linfitMin[4] = {0., 0., 0., 0.} |
|
private |
◆ m_linfitMinHi
double TileCisDefaultCalibTool::m_linfitMinHi |
|
private |
◆ m_linfitMinHiDemo
double TileCisDefaultCalibTool::m_linfitMinHiDemo |
|
private |
◆ m_linfitMinLo
double TileCisDefaultCalibTool::m_linfitMinLo |
|
private |
◆ m_linfitMinLoDemo
double TileCisDefaultCalibTool::m_linfitMinLoDemo |
|
private |
◆ m_maxAmp
double TileCisDefaultCalibTool::m_maxAmp[4] = {0., 0., 0., 0.} |
|
private |
◆ m_maxPed
double TileCisDefaultCalibTool::m_maxPed |
|
private |
◆ m_MeanMap
◆ m_MeanSqMap
◆ m_nDAC
◆ m_nDigitalErrors
◆ m_NDigitalErrorsMap
TAdcIntMap TileCisDefaultCalibTool::m_NDigitalErrorsMap |
|
private |
◆ m_NEvtMap
◆ m_nextToEdgeSample
◆ m_ntupleID
std::string TileCisDefaultCalibTool::m_ntupleID |
|
private |
◆ m_numSamp
◆ m_phaseMax
double TileCisDefaultCalibTool::m_phaseMax |
|
private |
◆ m_phaseMin
double TileCisDefaultCalibTool::m_phaseMin |
|
private |
◆ m_qflag
◆ m_rawChannelContainerKey
Initial value:{this,
"TileRawChannelContainer", "TileRawChannelFit", "Tile raw channel container"}
Definition at line 101 of file TileCisDefaultCalibTool.h.
◆ m_rawChannelContainerName
std::string TileCisDefaultCalibTool::m_rawChannelContainerName |
|
private |
◆ m_removePed
bool TileCisDefaultCalibTool::m_removePed |
|
private |
◆ m_sampleBit
◆ m_scanMap
TMap* TileCisDefaultCalibTool::m_scanMap |
|
private |
◆ m_scanMapRMS
TMap* TileCisDefaultCalibTool::m_scanMapRMS |
|
private |
◆ m_stuckBitsProbs
Initial value:{this,
"StuckBitsProbsTool","","Tile stuck bits probabilities tool"}
Definition at line 95 of file TileCisDefaultCalibTool.h.
◆ m_tileHWID
◆ m_tileInfo
◆ m_useSmallCap
bool TileCisDefaultCalibTool::m_useSmallCap |
|
private |
◆ m_varHandleArraysDeclared
◆ m_vhka
The documentation for this class was generated from the following files:
def retrieve(aClass, aKey=None)
Const iterator class for DataVector/DataList.
void mean(std::vector< double > &bins, std::vector< double > &values, const std::vector< std::string > &files, const std::string &histname, const std::string &tplotname, const std::string &label="")
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T > &t)
StoreGateSvc_t m_evtStore
Pointer to StoreGate (event store by default)
std::vector< SG::VarHandleKeyArray * > m_vhka
#define ATH_MSG_VERBOSE(x)
static int isChEmpty(int partition, int drawer, int ch)
True if channel is not fully implemented.
int channel(const HWIdentifier &id) const
extract channel field from HW identifier
const ServiceHandle< StoreGateSvc > & detStore() const
The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.
static const unsigned int MAX_DRAWER
Number of drawers in ROS 1-4.
virtual void setOwner(IDataHandleHolder *o)=0
int ros(const HWIdentifier &id) const
extract ros field from HW identifier
SG::ReadCondHandle< T > makeHandle(const SG::ReadCondHandleKey< T > &key, const EventContext &ctx=Gaudi::Hive::currentContext())
Class that holds Data Quality fragment information and provides functions to extract the data quality...
int adc(const HWIdentifier &id) const
extract adc field from HW identifier
#define CHECK(...)
Evaluate an expression and check for errors.
double R(const INavigable4Momentum *p1, const double v_eta, const double v_phi)
StoreGateSvc_t m_detStore
Pointer to StoreGate (detector store by default)
StatusCode initialize(bool used=true)
If this object is used as a property, then this should be called during the initialize phase.
static const unsigned int MAX_ROS
Number of ROSs
bool isAdcDQgood(int partition, int drawer, int ch, int gain) const
returns status of single ADC returns False if there are any errors
virtual void renounce()=0
std::conditional< std::is_base_of< SG::VarHandleKeyArray, T >::value, VarHandleKeyArrayType, type2 >::type type
double charge(const T &p)
const uint32_t * cispar() const
CIS parameters.
int drawer(const HWIdentifier &id) const
extract drawer field from HW identifier
void sort(typename std::reverse_iterator< DataModel_detail::iterator< DVL > > beg, typename std::reverse_iterator< DataModel_detail::iterator< DVL > > end, const Compare &comp)
Specialization of sort for DataVector/List.
#define ATH_MSG_WARNING(x)
static int channel2hole(int ros, int channel)
SG::VarHandleKey & vhKey()
Return a non-const reference to the HandleKey.
static const unsigned int MAX_CHAN
Number of channels in drawer.
Gaudi::Details::PropertyBase & declareGaudiProperty(Gaudi::Property< T > &hndl, const SG::VarHandleKeyType &)
specialization for handling Gaudi::Property<SG::VarHandleKey>
int ADCmax() const
Returns the maximum ADC output (10 bits --> 1023)
static const unsigned int MAX_GAIN
Number of gains per channel