35   return StatusCode::SUCCESS;
 
   42   const EventContext& ctx = Gaudi::Hive::currentContext();
 
   47   if (writeHandle.isValid()) {
 
   48     ATH_MSG_DEBUG(
"CondHandle " << writeHandle.fullKey() << 
" is already valid." 
   49                   << 
". In theory this should not be called, but may happen" 
   50                   << 
" if multiple concurrent events are being processed out of order.");
 
   51     return StatusCode::SUCCESS;
 
   56   if (oldColl==
nullptr) {
 
   57     ATH_MSG_FATAL(
"Null pointer is returned by getDetectorElementCollection()");
 
   58     return StatusCode::FAILURE;
 
   62   std::unique_ptr<GeoAlignmentStore> writeCdo{std::make_unique<GeoAlignmentStore>()};
 
   68     if (readCdoStatic==
nullptr) {
 
   70       return StatusCode::FAILURE;
 
   72     writeHandle.addDependency(readHandleStatic);
 
   86       if (readCdoIBLDist==
nullptr) {
 
   87         ATH_MSG_FATAL(
"Null pointer to the read conditions object of " << readHandleIBLDist.key());
 
   88         return StatusCode::FAILURE;
 
   90       writeHandle.addDependency(readHandleIBLDist);
 
  101     if (readCdoDynamicL1==
nullptr) {
 
  103       return StatusCode::FAILURE;
 
  105     writeHandle.addDependency(readHandleDynamicL1);
 
  109     if (readCdoDynamicL2==
nullptr) {
 
  110       ATH_MSG_FATAL(
"Null pointer to the read conditions object of " << readHandleDynamicL2.key());
 
  111       return StatusCode::FAILURE;
 
  113     writeHandle.addDependency(readHandleDynamicL2);
 
  117     if (readCdoDynamicL3==
nullptr) {
 
  118       ATH_MSG_FATAL(
"Null pointer to the read conditions object of " << readHandleDynamicL3.key());
 
  119       return StatusCode::FAILURE;
 
  121     writeHandle.addDependency(readHandleDynamicL3);
 
  144       if (readCdoIBLDist==
nullptr) {
 
  145         ATH_MSG_FATAL(
"Null pointer to the read conditions object of " << readHandleIBLDist.key());
 
  146         return StatusCode::FAILURE;
 
  148       writeHandle.addDependency(readHandleIBLDist);
 
  158     oldEl->getMaterialGeom()->getAbsoluteTransform(writeCdo.get());
 
  159     oldEl->getMaterialGeom()->getDefAbsoluteTransform(writeCdo.get());
 
  161   writeCdo->lockDelta();
 
  162   writeCdo->lockPosCache();
 
  164   if (writeHandle.record(std::move(writeCdo)).isFailure()) {
 
  165     ATH_MSG_FATAL(
"Could not record GeoAlignmentStore " << writeHandle.key()
 
  166                   << 
" with EventRange " << writeHandle.getRange()
 
  167                   << 
" into Conditions Store");
 
  168     return StatusCode::FAILURE;
 
  170   ATH_MSG_INFO(
"recorded new CDO " << writeHandle.key() << 
" with range " << writeHandle.getRange() << 
" into Conditions Store");
 
  172   return StatusCode::SUCCESS;