Added loading mapping from CDB, now obligatory,
authorivana <ivana@f7af4fe6-9843-0410-8265-dc069ae4e863>
Fri, 6 Jul 2007 13:11:58 +0000 (13:11 +0000)
committerivana <ivana@f7af4fe6-9843-0410-8265-dc069ae4e863>
Fri, 6 Jul 2007 13:11:58 +0000 (13:11 +0000)
as AliMpSegmentation::Instance() and AliMpSegmentation::Store()
do not load mapping automatically anymore.

MUON/AliMUONCheck.cxx
MUON/AliMUONDigitizerV3.cxx
MUON/AliMUONGeometryTransformer.cxx
MUON/AliMUONGeometryTransformer.h
MUON/AliMUONReconstructor.cxx
MUON/AliMUONSDigitizerV2.cxx

index 1c6282d..68269e3 100644 (file)
@@ -38,6 +38,7 @@
 #include "AliMpSegmentation.h"
 #include "AliMpVSegmentation.h"
 #include "AliMpDEManager.h"
+#include "AliMpCDB.h"
 #include "AliMUONVDigitStore.h"
 
 #include "AliRunLoader.h"
@@ -712,6 +713,9 @@ AliMUONCheck::CheckOccupancy(Bool_t perDetEle) const
   
   AliMUONVDigitStore* digitStore = di.DigitStore(fFirstEvent);
   
+  if ( ! AliMpCDB::LoadMpSegmentation()  ) 
+    AliFatal("Could not access mapping from OCDB !");
+  
   // Compute values
   for (Int_t ichamber=0; ichamber<nchambers; ++ichamber) 
   {
index 9657204..6d3abc0 100644 (file)
 #include "AliMUONTriggerStoreV1.h"
 #include "AliMUONVCalibParam.h"
 #include "AliMUONVDigitStore.h"
+#include "AliMpCDB.h"
 #include "AliMpCathodType.h"
 #include "AliMpConstants.h"
 #include "AliMpDEIterator.h"
 #include "AliMpDEManager.h"
-#include "AliMpDEManager.h"
 #include "AliMpIntPair.h"
 #include "AliMpPad.h"
 #include "AliMpSegmentation.h"
@@ -781,6 +781,16 @@ AliMUONDigitizerV3::Init()
   
   Int_t runnumber = AliCDBManager::Instance()->GetRun();
   
+  if ( ! AliMpCDB::LoadMpSegmentation()  ) 
+  {
+    AliFatal("Could not access mapping from OCDB !");
+  }
+  
+  if ( ! AliMpCDB::LoadDDLStore() ) 
+  {
+    AliFatal("Could not access DDL Store from OCDB !");
+  }
+  
   fCalibrationData = new AliMUONCalibrationData(runnumber);
   if ( !fCalibrationData->Pedestals() )
   {
index 4555490..df63547 100644 (file)
@@ -29,6 +29,7 @@
 #include "AliMpDEManager.h"
 #include "AliMpConstants.h"
 #include "AliMpExMap.h"
+#include "AliMpCDB.h"
 
 #include "AliLog.h"
 #include "AliAlignObjMatrix.h"
@@ -88,6 +89,20 @@ AliMUONGeometryTransformer::~AliMUONGeometryTransformer()
 // private methods
 //
 
+//_____________________________________________________________________________
+Bool_t AliMUONGeometryTransformer::LoadMapping() const
+{
+/// Load mapping from CDB
+
+  if ( ! AliMpCDB::LoadMpSegmentation() ) 
+  {
+    AliFatal("Could not access mapping from OCDB !");
+    return false;
+  }
+  
+  return true;
+}  
+
 //_____________________________________________________________________________
 AliMUONGeometryModuleTransformer* 
 AliMUONGeometryTransformer::GetModuleTransformerNonConst(
@@ -329,7 +344,7 @@ AliMUONGeometryTransformer::LoadTransformations()
     
     // Set matrix from physical node
     TGeoHMatrix* matrix = AliGeomManager::GetMatrix(symname);
-    if ( !matrix ) {
+    if ( ! matrix ) {
       AliErrorStream() << "Geometry module matrix not found." << endl;
       return false;
     }  
@@ -347,7 +362,7 @@ AliMUONGeometryTransformer::LoadTransformations()
     
       // Set global matrix from physical node
       TGeoHMatrix* globalMatrix = AliGeomManager::GetMatrix(symname);
-      if ( !matrix ) {
+      if ( ! globalMatrix ) {
         AliErrorStream() << "Detection element matrix not found." << endl;
         return false;
       }  
@@ -641,6 +656,8 @@ void AliMUONGeometryTransformer::CreateModules()
 /// Create modules and their detection elements using info from mapping;
 /// but do not fill matrices
 
+  // Load mapping as its info is used to define modules & DEs
+  LoadMapping();
 
   // Loop over geometry module
   for (Int_t moduleId = 0; moduleId < AliMpConstants::NofGeomModules(); ++moduleId ) {
index 7274c2d..07566ed 100644 (file)
@@ -100,6 +100,7 @@ class AliMUONGeometryTransformer : public TObject
  
   private:
     // methods
+    Bool_t LoadMapping() const;
     AliMUONGeometryModuleTransformer* GetModuleTransformerNonConst(
                                     Int_t index, Bool_t warn = true) const;
 
index a5030e7..ac0815c 100644 (file)
@@ -90,6 +90,7 @@
 #include "AliMUONTriggerCrateStore.h"
 #include "AliMUONTriggerStoreV1.h"
 #include "AliMUONVClusterFinder.h"
+#include "AliMpCDB.h"
 #include "AliRawReader.h"
 #include "AliCodeTimer.h"
 #include <Riostream.h>
@@ -118,7 +119,23 @@ fTrackStore(0x0),
 fTrigChamberEff(0x0)
 {
   /// normal ctor
+
+  // Load geometry data
   fTransformer->LoadGeometryData();
+  
+  // Load mapping
+  if ( ! AliMpCDB::LoadMpSegmentation() ) 
+  {
+    AliFatal("Could not access mapping from OCDB !");
+  }
+  
+  // Load DDL store
+  if ( ! AliMpCDB::LoadDDLStore() ) 
+  {
+    AliFatal("Could not access DDL Store from OCDB !");
+  }
+  
+  
 }
 
 //_____________________________________________________________________________
index c999901..aaf3502 100644 (file)
@@ -25,6 +25,7 @@
 #include "AliMUONVDigit.h"
 #include "AliMUONHit.h"
 #include "AliMpDEManager.h"
+#include "AliMpCDB.h"
 #include "AliLoader.h"
 #include "AliRun.h"
 #include "AliRunLoader.h"
@@ -56,6 +57,10 @@ AliMUONSDigitizerV2::AliMUONSDigitizerV2()
   ///
   /// ctor.
   ///
+  if ( ! AliMpCDB::LoadMpSegmentation() ) 
+  {
+    AliFatal("Could not access mapping from OCDB !");
+  }
 }
 
 //_____________________________________________________________________________