]> git.uio.no Git - u/mrichter/AliRoot.git/commitdiff
- Added flag to read back from ascii files or saving directly current mapping
authorivana <ivana@f7af4fe6-9843-0410-8265-dc069ae4e863>
Mon, 12 Nov 2007 11:58:16 +0000 (11:58 +0000)
committerivana <ivana@f7af4fe6-9843-0410-8265-dc069ae4e863>
Mon, 12 Nov 2007 11:58:16 +0000 (11:58 +0000)
  (Christian)
- In WriteMpSegmentation(): added call to AliMpDDLStore::ReadData, as without
  this the detection elements stored in CDB do not contain info filled
  by DDLStore
  (Ivana)

MUON/mapping/AliMpCDB.cxx
MUON/mapping/AliMpCDB.h

index 99557082ca8690340c54f1431269de95d5003485..093110018fbd501cbfdc8e7752be76377949d4f2 100644 (file)
@@ -123,10 +123,12 @@ Bool_t AliMpCDB::LoadDDLStore(Bool_t warn)
 }    
 
 //______________________________________________________________________________
-Bool_t AliMpCDB::WriteMpSegmentation()
+Bool_t AliMpCDB::WriteMpSegmentation(Bool_t readData)
 {
 /// Write mapping segmentation in OCDB
 
+  if ( ! readData && ! AliMpSegmentation::Instance() ) return false;
+
   AliCDBManager* cdbManager = AliCDBManager::Instance();
   if ( ! cdbManager->GetDefaultStorage() )
     cdbManager->SetDefaultStorage("local://$ALICE_ROOT");
@@ -137,15 +139,21 @@ Bool_t AliMpCDB::WriteMpSegmentation()
   cdbData->SetAliRootVersion(gSystem->Getenv("ARVERSION"));
   AliCDBId id("MUON/Calib/Mapping", 0, 9999999); 
 
-  AliMpSegmentation::ReadData(false);
+  if ( readData ) {
+    AliMpSegmentation::ReadData(false);
+    AliMpDDLStore::ReadData(false);
+  }
+  
   return cdbManager->Put(AliMpSegmentation::Instance(), id, cdbData);
 }
 
 //______________________________________________________________________________
-Bool_t AliMpCDB::WriteDDLStore()
+Bool_t AliMpCDB::WriteDDLStore(Bool_t readData)
 {
 /// Write mapping DDL store in OCDB
 
+  if ( ! readData && ! AliMpDDLStore::Instance() ) return false;
+
   AliCDBManager* cdbManager = AliCDBManager::Instance();
   if ( ! cdbManager->GetDefaultStorage() )
     cdbManager->SetDefaultStorage("local://$ALICE_ROOT");
@@ -156,7 +164,9 @@ Bool_t AliMpCDB::WriteDDLStore()
   cdbData->SetAliRootVersion(gSystem->Getenv("ARVERSION"));
   AliCDBId id("MUON/Calib/DDLStore", 0, 9999999); 
 
-  AliMpSegmentation::ReadData(false);
-  AliMpDDLStore::ReadData(false);
+  if ( readData ) {
+    AliMpSegmentation::ReadData(false);
+    AliMpDDLStore::ReadData(false);
+  }
   return cdbManager->Put(AliMpDDLStore::Instance(), id, cdbData);
 }   
index 85916b20d7c84b6ff2158005def0ea98b4759b33..81ed1762bc2596be568f54a5cf0303aa6ac2b18f 100644 (file)
@@ -26,8 +26,8 @@ class AliMpCDB : public  TObject {
     static Bool_t LoadMpSegmentation(Bool_t warn = false);
     static Bool_t LoadDDLStore(Bool_t warn = false);
 
-    static Bool_t WriteMpSegmentation();
-    static Bool_t WriteDDLStore();
+    static Bool_t WriteMpSegmentation(Bool_t readData = true);
+    static Bool_t WriteDDLStore(Bool_t readData= true);
      
   private:
     /// Not implemented