Skip to content
Snippets Groups Projects
Commit 0ef1834c authored by Peter Berta's avatar Peter Berta
Browse files

Merge branch 'cherry-pick-c2c9b4f0-22.0-mc20' into '22.0-mc20'

Sweeping !46873 from master to 22.0-mc20.
LArRawDataReadingAlg: AutoConfigure for runs in transparent mode and be more graceful with corruption

See merge request !46910
parents 0bdd8dd9 e4dfac2b
No related branches found
No related tags found
No related merge requests found
......@@ -14,14 +14,11 @@ def LArRawDataReadingCfg(configFlags, **kwargs):
if configFlags.Overlay.DataOverlay:
kwargs.setdefault("LArDigitKey", configFlags.Overlay.BkgPrefix + "FREE")
kwargs.setdefault("LArRawChannelKey", "")
print('LArRawDataReadingCfg configFlags.LAr.RawChannelSource ',configFlags.LAr.RawChannelSource)
if configFlags.LAr.RawChannelSource=="calculated":
if configFlags.LAr.RawChannelSource=="calculated" or configFlags.Overlay.DataOverlay:
kwargs.setdefault("LArRawChannelKey", "")
kwargs.setdefault("FailOnCorruption",False)
print('LArRawDataReadingCfg configFlags.LAr.RawChannelSource ',configFlags.LAr.RawChannelSource)
acc.addEventAlgo(LArRawDataReadingAlg(**kwargs))
return acc
......
......@@ -118,7 +118,7 @@ StatusCode LArRawDataReadingAlg::execute(const EventContext& ctx) const {
rodBlock.reset(new LArRodBlockPhysicsV5);
break;
default:
ATH_MSG_ERROR("Found unsupported ROD Block version " << rodMinorVersion
ATH_MSG_WARNING("Found unsupported ROD Block version " << rodMinorVersion
<< " of ROD block type " << rodBlockType);
return m_failOnCorruption ? StatusCode::FAILURE : StatusCode::SUCCESS;
}// end switch(rodMinorVersion)
......@@ -132,7 +132,7 @@ StatusCode LArRawDataReadingAlg::execute(const EventContext& ctx) const {
rodBlock.reset(new LArRodBlockCalibrationV3);
break;
default:
ATH_MSG_ERROR("Found unsupported ROD Block version " << rodMinorVersion
ATH_MSG_WARNING("Found unsupported ROD Block version " << rodMinorVersion
<< " of ROD block type " << rodBlockType);
return m_failOnCorruption ? StatusCode::FAILURE : StatusCode::SUCCESS;
}
......
......@@ -43,7 +43,7 @@ class LArRawDataReadingAlg : public AthReentrantAlgorithm {
//Other properties:
BooleanProperty m_verifyChecksum{this,"VerifyChecksum",true,"Calculate and compare checksums to detect data transmission errors"};
BooleanProperty m_failOnCorruption{this,"FailOnCorruption",true,"Return FAILURE if data corruption is found"};
BooleanProperty m_failOnCorruption{this,"FailOnCorruption",false,"Return FAILURE if data corruption is found"};
//Identifier helper
const LArOnlineID* m_onlineId=nullptr;
......
......@@ -9,25 +9,34 @@ def LArRawChannelBuilderDefault(forceIter=False):
topSequence = AlgSequence()
if larRODFlags.readDigits() and globalflags.InputFormat() == 'bytestream':
if LArRawDataReadingAlg() not in topSequence:
print ("Adding LArRawDataReaderAlg")
topSequence+=LArRawDataReadingAlg()
from LArRecUtils.LArADC2MeVCondAlgDefault import LArADC2MeVCondAlgDefault
LArADC2MeVCondAlgDefault()
from LArConditionsCommon.LArRunFormat import getLArFormatForRun
from RecExConfig.AutoConfiguration import GetRunNumber
runNum = GetRunNumber()
if runNum is not None:
lri=getLArFormatForRun(runNum)
else:
lri=None
if not forceIter:
from LArConditionsCommon.LArRunFormat import getLArFormatForRun
from RecExConfig.AutoConfiguration import GetRunNumber
runNum = GetRunNumber()
if runNum is not None:
lri=getLArFormatForRun(runNum)
else:
lri=None
if lri is not None and lri.runType() is not None and lri.runType()==0:
forceIter=True
if LArRawDataReadingAlg() not in topSequence:
print ("Adding LArRawDataReaderAlg")
topSequence+=LArRawDataReadingAlg()
if (lri and lri.runType()==0): topSequence.LArRawDataReadingAlg.LArRawChannelKey=""
if forceIter:
from LArROD.LArRODConf import LArRawChannelBuilderIterAlg
theLArRawChannelBuilder=LArRawChannelBuilderIterAlg()
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment