+
+//____________________________________________________________________________
+Bool_t AliMUONRecoCheck::InitTriggerResponse()
+{
+ /// Initialize trigger electronics
+ /// for building of triggerable tracks from MC
+
+ if ( fTriggerElectronics ) return kTRUE;
+
+ if ( ! InitGeometryTransformer() ) return kFALSE;
+
+ if ( ! InitCalibrationData() ) return kFALSE;
+
+ fTriggerElectronics = new AliMUONTriggerElectronics(fCalibrationData);
+
+ return kTRUE;
+}
+
+
+//____________________________________________________________________________
+Bool_t AliMUONRecoCheck::InitCalibrationData()
+{
+ /// Initialize calibration data
+ if ( ! fCalibrationData ) {
+ if ( !AliMUONCDB::CheckOCDB() ) return kFALSE;
+ fCalibrationData = new AliMUONCalibrationData(AliCDBManager::Instance()->GetRun());
+ }
+ return kTRUE;
+}
+
+
+//____________________________________________________________________________
+Bool_t AliMUONRecoCheck::InitGeometryTransformer()
+{
+ /// Return calibration data
+ /// (create it if necessary)
+ if ( ! fGeometryTransformer ) {
+
+ if ( !AliMUONCDB::CheckOCDB() ) return kFALSE;
+
+ if ( !AliGeomManager::GetGeometry() )
+ AliGeomManager::LoadGeometry();
+
+ if ( !AliMpDDLStore::Instance(false) )
+ AliMpCDB::LoadDDLStore();
+
+ fGeometryTransformer = new AliMUONGeometryTransformer();
+ fGeometryTransformer->LoadGeometryData();
+ }
+
+ return kTRUE;
+}
+