ATLAS Offline Software
Functions
HGTD_DetectorTool.cxx File Reference
#include "HGTD_GeoModel/HGTD_DetectorTool.h"
#include "HGTD_GeoModel/HGTD_DetectorFactory.h"
#include "HGTD_ReadoutGeometry/HGTD_DetectorManager.h"
#include "GeoModelUtilities/GeoModelExperiment.h"
#include "StoreGate/StoreGateSvc.h"
#include "RDBAccessSvc/IRDBRecord.h"
#include "RDBAccessSvc/IRDBRecordset.h"
#include "DetDescrConditions/AlignableTransformContainer.h"
#include "ReadoutGeometryBase/SiCommonItems.h"
#include "AthenaKernel/ClassID_traits.h"
#include "SGTools/DataProxy.h"

Go to the source code of this file.

Functions

StatusCode HGTD_DetectorTool::registerCallback ATLAS_NOT_THREAD_SAFE ()
 Install fatal handler with default options. More...
 

Function Documentation

◆ ATLAS_NOT_THREAD_SAFE()

StatusCode HGTD_DetectorTool::registerCallback ATLAS_NOT_THREAD_SAFE ( )
inline

Install fatal handler with default options.

This is meant to be easy to call from python via ctypes.

Definition at line 82 of file HGTD_DetectorTool.cxx.

83 {
84 
85  // Register call-back for software alignment
86  StatusCode sc = StatusCode::FAILURE;
87  if (m_alignable.value()) {
88  std::string folderName = "/Indet/AlignHGTD";
89  if ( detStore()->contains<AlignableTransformContainer>(folderName) ) {
90  ATH_MSG_DEBUG( "Registering callback on AlignableTransformContainer with folder " << folderName );
92  ATH_CHECK( detStore()->regFcn( &IGeoModelTool::align, dynamic_cast<IGeoModelTool *>(this), atc, folderName ) );
93  sc = StatusCode::SUCCESS;
94  }
95  else {
96  ATH_MSG_WARNING( "Unable to register callback on AlignableTransformContainer with folder " <<
97  folderName << ", Alignment disabled (only if no Run-2 scheme is loaded)!" );
98  }
99  }
100  else {
101  ATH_MSG_INFO( "Alignment disabled. No callback registered" );
102  // We return failure otherwise it will try and register a GeoModelSvc callback associated with this callback.
103  }
104  return sc;
105 }
ATH_MSG_INFO
#define ATH_MSG_INFO(x)
Definition: AthMsgStreamMacros.h:31
IGeoModelTool::align
virtual StatusCode align(IOVSVC_CALLBACK_ARGS)=0
AthenaPoolTestRead.sc
sc
Definition: AthenaPoolTestRead.py:27
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
ATH_MSG_DEBUG
#define ATH_MSG_DEBUG(x)
Definition: AthMsgStreamMacros.h:29
ATH_CHECK
#define ATH_CHECK
Definition: AthCheckMacros.h:40
python.PyKernel.detStore
detStore
Definition: PyKernel.py:41
CaloCellTimeCorrFiller.folderName
string folderName
Definition: CaloCellTimeCorrFiller.py:20
DataHandle
an iterator over instances of a given type in StoreGateSvc. It d-casts and caches locally the pointed...
Definition: DataHandle.h:42
IGeoModelTool
Definition: IGeoModelTool.h:12
ATH_MSG_WARNING
#define ATH_MSG_WARNING(x)
Definition: AthMsgStreamMacros.h:32