ROOT logo
/**************************************************************************
 * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
 *                                                                        *
 * Author: The ALICE Off-line Project.                                    *
 * Contributors are mentioned in the code where appropriate.              *
 *                                                                        *
 * Permission to use, copy, modify and distribute this software and its   *
 * documentation strictly for non-commercial purposes is hereby granted   *
 * without fee, provided that the above copyright notice appears in all   *
 * copies and that both the copyright notice and this permission notice   *
 * appear in the supporting documentation. The authors make no claims     *
 * about the suitability of this software for any purpose. It is          *
 * provided "as is" without express or implied warranty.                  *
 **************************************************************************/

// $Id$
// $MpId: $
// Category: management

//-----------------------------------------------------------------------------
// Class AliMpCDB
// -----------------------
// Manager class for mapping CDB IO
// Author: Ivana Hrivnacova, IPN Orsay
//-----------------------------------------------------------------------------

#include "AliMpCDB.h"

#include "AliCDBEntry.h"
#include "AliCDBManager.h"
#include "AliLog.h"
#include "AliMpDDLStore.h"
#include "AliMpDEStore.h"
#include "AliMpDataMap.h"
#include "AliMpDataProcessor.h"
#include "AliMpDataStreams.h"
#include "AliMpManuStore.h"
#include "AliMpSegmentation.h"
#include <Riostream.h>
#include <TClass.h>
#include <TSystem.h>

/// \cond CLASSIMP
ClassImp(AliMpCDB)
/// \endcond

Bool_t AliMpCDB::fgLoadFromData = kTRUE;                                       

//
// private static methods
//

//______________________________________________________________________________
TObject*  AliMpCDB::GetCDBEntryObject(const char* dataPath)
{
/// Load CDB entry object with checks

  AliCDBManager* cdbManager = AliCDBManager::Instance();

  Int_t run = cdbManager->GetRun();
  if ( run < 0 ) {
    AliErrorClassStream() << "Cannot get run number from CDB manager." << endl; 
    return 0;
  }  

  AliCDBEntry* cdbEntry = cdbManager->Get(dataPath, run);
  if ( ! cdbEntry ) {
    AliErrorClassStream() << "Cannot get cdbEntry." << endl; 
    return 0;
  }
  
  TObject* object = cdbEntry->GetObject();
  if ( ! object ) {
    AliErrorClassStream() << "Cannot get object from cdbEntry." << endl; 
    return 0;
  }  

  return object;
}    
  

//______________________________________________________________________________
TObject*  AliMpCDB::GetCDBEntryObject(const char* dataPath, 
                                      const char* cdbpath,
                                      Int_t runNumber )
{
/// Load CDB entry from CDB and run specified in arguments

  AliCDBManager* cdbManager = AliCDBManager::Instance();
  cdbManager->SetDefaultStorage(cdbpath);

  AliCDBEntry* cdbEntry = cdbManager->Get(dataPath, runNumber);
  if ( ! cdbEntry ) {
    AliErrorClassStream() << "Cannot get cdbEntry." << endl; 
    return 0;
  }  
    
  TObject* object = cdbEntry->GetObject();
  if ( ! object ) {
    AliErrorClassStream() << "Cannot get object from cdbEntry." << endl; 
    return 0;
  }  

  return object;
}    
                                      
//
// public static methods
//

   
//______________________________________________________________________________
Bool_t AliMpCDB::LoadMpSegmentation(Bool_t warn)
{
/// Load the sementation from the mapping data from OCDB,
///  if it does not yet exist;
/// return false only in case loading from CDB failed

  if ( AliMpSegmentation::Instance(false) ) {
    if ( warn )  
      AliWarningClass("Segmentation has been already loaded."); 
    return true;
  }  
  
  if ( fgLoadFromData ) {
    AliDebugClassStream(1)
      << "Loading segmentation from MUON/Calib/MappingData" << endl;
  
    TObject* cdbEntryObject = GetCDBEntryObject("MUON/Calib/MappingData");
    if ( ! cdbEntryObject ) return kFALSE;
  
    // Pass the map to the streams and then read segmentation
    // from data map
    AliMpDataMap* dataMap = (AliMpDataMap*)cdbEntryObject;
    AliMpDataStreams dataStreams(dataMap);
    AliMpSegmentation::ReadData(dataStreams);
    return kTRUE;
  }
  else {
    AliDebugClassStream(1)
      << "Loading segmentation from MUON/Calib/Mapping" << endl;
  
    TObject* cdbEntryObject = GetCDBEntryObject("MUON/Calib/Mapping");
    return cdbEntryObject != 0x0;
  }  
}    

//______________________________________________________________________________
Bool_t AliMpCDB::LoadDDLStore(Bool_t warn)
{
/// Load the DDL store from the mapping data from OCDB,
///  if it does not yet exist;
/// return false only in case loading from CDB failed

  if ( AliMpDDLStore::Instance(false) ) {
    if ( warn )  
      AliWarningClass("DDL Store has been already loaded."); 
    return true;
  }  
  
  if ( fgLoadFromData ) {
    AliDebugClassStream(1)
      << "Loading DDL store from MUON/Calib/MappingData" << endl;
  
    TObject* cdbEntryObject = GetCDBEntryObject("MUON/Calib/MappingData");
    if ( ! cdbEntryObject ) return kFALSE;
  
    AliMpDataMap* dataMap = (AliMpDataMap*)cdbEntryObject;
    AliMpDataStreams dataStreams(dataMap);
    AliMpDDLStore::ReadData(dataStreams);
    return kTRUE;
  }
  else {
    AliDebugClassStream(1)
      << "Loading DDL store from MUON/Calib/DDLStore" << endl;
  
    // Load segmentation
    LoadMpSegmentation(warn); 
  
    // Load DDL store
    TObject* cdbEntryObject =  GetCDBEntryObject("MUON/Calib/DDLStore");
    return cdbEntryObject != 0x0;
  }     
}    

//______________________________________________________________________________
Bool_t AliMpCDB::LoadAll2(const char* cdbpath, Int_t runNumber, Bool_t warn)
{
  /// Load everything in one shot 
  return 
  LoadDDLStore2(cdbpath,runNumber,warn) && 
  LoadManuStore2(cdbpath,runNumber,warn);
}

//______________________________________________________________________________
Bool_t AliMpCDB::LoadAll(Bool_t warn)
{
  /// Load everything in one shot 
  return LoadDDLStore(warn) && LoadManuStore(warn);
}

//______________________________________________________________________________
Bool_t AliMpCDB::LoadManuStore(Bool_t warn)
{
/// Load the DDL store from the mapping data from OCDB,
///  if it does not yet exist;
/// return false only in case loading from CDB failed

  if ( AliMpManuStore::Instance(false) ) {
    if ( warn )  
      AliWarningClass("Manu Store has been already loaded."); 
    return true;
  }  
  
  if ( fgLoadFromData ) {
    AliDebugClassStream(1)
      << "Loading Manu store from MUON/Calib/MappingRunData" << endl;
  
    // Load segmentation
    if ( ! AliMpSegmentation::Instance(false) ) 
      LoadMpSegmentation(warn); 

    TObject* cdbEntryObject = GetCDBEntryObject("MUON/Calib/MappingRunData");
    if ( ! cdbEntryObject ) return kFALSE;
  
    AliMpDataMap* dataMap = (AliMpDataMap*)cdbEntryObject;
    AliMpDataStreams dataStreams(dataMap);
    AliMpManuStore::ReadData(dataStreams);
    return kTRUE;
  }
  else {
    AliDebugClassStream(1)
      << "Loading Manu store from MUON/Calib/ManuStore" << endl;
  
    // Load Manu store
    TObject* cdbEntryObject =  GetCDBEntryObject("MUON/Calib/ManuStore");
    return cdbEntryObject != 0x0;
  }     
}    
//______________________________________________________________________________
Bool_t AliMpCDB::LoadMpSegmentation2(const char* cdbpath, Int_t runNumber, 
                                     Bool_t warn)
{
/// Load the sementation from the CDB if it does not yet exist;
/// return false only in case loading from CDB failed.
/// In difference from LoadMpSegmentation(), in this method the CDB path
/// and run is set directly via arguments.


  if ( AliMpSegmentation::Instance(false) ) {
    if ( warn )  
      AliWarningClass("Segmentation has been already loaded."); 
    return true;
  }  
  
  if ( fgLoadFromData ) {
    AliDebugClassStream(1)
      << "Loading segmentation from MUON/Calib/MappingData" << endl;
  
    TObject* cdbEntryObject 
      = GetCDBEntryObject("MUON/Calib/MappingData", cdbpath, runNumber);
    if ( ! cdbEntryObject ) return kFALSE;
  
    // Pass the map to the streams and then read segmentation
    // from data map
    AliMpDataMap* dataMap = (AliMpDataMap*)cdbEntryObject;
    AliMpDataStreams dataStreams(dataMap);
    AliMpSegmentation::ReadData(dataStreams);
    return kTRUE;
  }
  else {
    AliDebugClassStream(1)
      << "Loading segmentation from MUON/Calib/Mapping" << endl;
  
    TObject* cdbEntryObject 
      = GetCDBEntryObject("MUON/Calib/Mapping", cdbpath, runNumber);
    return cdbEntryObject != 0x0;
  }  
}    

//______________________________________________________________________________
Bool_t AliMpCDB::LoadDDLStore2(const char* cdbpath, Int_t runNumber, 
                               Bool_t warn)
{
/// Load the DDL store from the CDB if it does not yet exist
/// return false only in case loading from CDB failed
/// In difference from LoadDDLStore(), in this method the CDB path
/// and run is set directly via arguments.

  if ( AliMpDDLStore::Instance(false) ) {
    if ( warn )  
      AliWarningClass("DDL Store has been already loaded."); 
    return true;
  }  
  
  if ( fgLoadFromData ) {
    AliDebugClassStream(1)
      << "Loading DDL store from MUON/Calib/MappingData" << endl;
  
    TObject* cdbEntryObject 
      = GetCDBEntryObject("MUON/Calib/MappingData", cdbpath, runNumber);
    if ( ! cdbEntryObject ) return kFALSE;
  
    AliMpDataMap* dataMap = (AliMpDataMap*)cdbEntryObject;
    AliMpDataStreams dataStreams(dataMap);
    AliMpDDLStore::ReadData(dataStreams);
    return kTRUE;
  }
  else {
    AliDebugClassStream(1)
      << "Loading DDL store from MUON/Calib/DDLStore" << endl;
  
    // Load segmentation
    LoadMpSegmentation2(cdbpath, runNumber, warn); 
  
    // Load DDL store
    TObject* cdbEntryObject =  GetCDBEntryObject("MUON/Calib/DDLStore");
    return cdbEntryObject != 0x0;
  }  
}    

//______________________________________________________________________________
Bool_t AliMpCDB::LoadManuStore2(const char* cdbpath, Int_t runNumber, 
                                Bool_t warn)
{
/// Load the DDL store from the CDB if it does not yet exist
/// return false only in case loading from CDB failed
/// In difference from LoadDDLStore(), in this method the CDB path
/// and run is set directly via arguments.

  if ( AliMpManuStore::Instance(false) ) {
    if ( warn )  
      AliWarningClass("Manu Store has been already loaded."); 
    return true;
  }  
  
  if ( fgLoadFromData ) {
    AliDebugClassStream(1)
      << "Loading Manu store from MUON/Calib/MappingRunData" << endl;
  
    // Load segmentation
    LoadMpSegmentation2(cdbpath, runNumber, warn); 

    TObject* cdbEntryObject 
      = GetCDBEntryObject("MUON/Calib/MappingRunData", cdbpath, runNumber);
    if ( ! cdbEntryObject ) return kFALSE;
  
    AliMpDataMap* dataMap = (AliMpDataMap*)cdbEntryObject;
    AliMpDataStreams dataStreams(dataMap);
    AliMpManuStore::ReadData(dataStreams);
    return kTRUE;
  }
  else {
    AliDebugClassStream(1)
      << "Loading Manu store from MUON/Calib/ManuStore" << endl;
  
    // Load Manu store
    TObject* cdbEntryObject =  GetCDBEntryObject("MUON/Calib/ManuStore");
    return cdbEntryObject != 0x0;
  }  
}    

//______________________________________________________________________________
Bool_t AliMpCDB::WriteMpData()
{
/// Write mapping data in OCDB

  AliCDBManager* cdbManager = AliCDBManager::Instance();
  if ( ! cdbManager->GetDefaultStorage() )
    cdbManager->SetDefaultStorage("local://$ALICE_ROOT/OCDB");
  
  AliCDBMetaData* cdbData = new AliCDBMetaData();
  cdbData->SetResponsible("Dimuon Offline project");
  cdbData->SetComment("MUON mapping");
  cdbData->SetAliRootVersion(gSystem->Getenv("ARVERSION"));
  AliCDBId id("MUON/Calib/MappingData", 0, AliCDBRunRange::Infinity()); 

  AliMpDataProcessor mp;
  AliMpDataMap* map = mp.CreateDataMap("data");
  return cdbManager->Put(map, id, cdbData);
}

//______________________________________________________________________________
Bool_t AliMpCDB::WriteMpRunData()
{
/// Write mapping data in OCDB

  AliCDBManager* cdbManager = AliCDBManager::Instance();
  if ( ! cdbManager->GetDefaultStorage() )
    cdbManager->SetDefaultStorage("local://$ALICE_ROOT/OCDB");
  
  AliCDBMetaData* cdbData = new AliCDBMetaData();
  cdbData->SetResponsible("Dimuon Offline project");
  cdbData->SetComment("MUON run-dependent mapping");
  cdbData->SetAliRootVersion(gSystem->Getenv("ARVERSION"));
  AliCDBId id("MUON/Calib/MappingRunData", 0, AliCDBRunRange::Infinity()); 

  AliMpDataProcessor mp;
  AliMpDataMap* map = mp.CreateDataMap("data_run");
  return cdbManager->Put(map, id, cdbData);
}

//______________________________________________________________________________
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/OCDB");
  
  AliCDBMetaData* cdbData = new AliCDBMetaData();
  cdbData->SetResponsible("Dimuon Offline project");
  cdbData->SetComment("MUON mapping");
  cdbData->SetAliRootVersion(gSystem->Getenv("ARVERSION"));
  AliCDBId id("MUON/Calib/Mapping", 0, AliCDBRunRange::Infinity()); 

  if ( readData ) {
    AliMpDataStreams dataStreams;
    AliMpSegmentation::ReadData(dataStreams, false);
    AliMpDDLStore::ReadData(dataStreams, false);
  }
  
  return cdbManager->Put(AliMpSegmentation::Instance(), id, cdbData);
}

//______________________________________________________________________________
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/OCDB");
  
  AliCDBMetaData* cdbData = new AliCDBMetaData();
  cdbData->SetResponsible("Dimuon Offline project");
  cdbData->SetComment("MUON DDL store");
  cdbData->SetAliRootVersion(gSystem->Getenv("ARVERSION"));
  AliCDBId id("MUON/Calib/DDLStore", 0, AliCDBRunRange::Infinity()); 

  if ( readData ) {
    AliMpDataStreams dataStreams;
    AliMpSegmentation::ReadData(dataStreams, false);
    AliMpDDLStore::ReadData(dataStreams, false);
  }
  return cdbManager->Put(AliMpDDLStore::Instance(), id, cdbData);
}   

//______________________________________________________________________________
Bool_t AliMpCDB::WriteManuStore(Bool_t readData)
{
/// Write mapping Manu store in OCDB

  if ( ! readData && ! AliMpManuStore::Instance() ) return false;

  AliCDBManager* cdbManager = AliCDBManager::Instance();
  if ( ! cdbManager->GetDefaultStorage() )
    cdbManager->SetDefaultStorage("local://$ALICE_ROOT/OCDB");
  
  AliCDBMetaData* cdbData = new AliCDBMetaData();
  cdbData->SetResponsible("Dimuon Offline project");
  cdbData->SetComment("MUON Manu store");
  cdbData->SetAliRootVersion(gSystem->Getenv("ARVERSION"));
  AliCDBId id("MUON/Calib/ManuStore", 0, AliCDBRunRange::Infinity()); 

  if ( readData ) {
    AliMpDataStreams dataStreams;
    AliMpSegmentation::ReadData(dataStreams, false);
    AliMpManuStore::ReadData(dataStreams, false);
  }
  return cdbManager->Put(AliMpManuStore::Instance(), id, cdbData);
}   

//______________________________________________________________________________
Bool_t  AliMpCDB::GenerateMpData(const char* cdbpath, Int_t runNumber)
{
/// Generate mapping data ASCII files from OCDB

  TObject* cdbEntryObject 
    = GetCDBEntryObject("MUON/Calib/MappingData", cdbpath, runNumber);
  if ( ! cdbEntryObject ) return kFALSE;
  
  AliMpDataMap* dataMap = (AliMpDataMap*)cdbEntryObject;
  AliMpDataProcessor mp;
  return mp.GenerateData(dataMap);
} 

//______________________________________________________________________________
Bool_t  AliMpCDB::GenerateMpRunData(const char* cdbpath, Int_t runNumber)
{
/// Generate mapping data ASCII files from OCDB

  TObject* cdbEntryObject 
    = GetCDBEntryObject("MUON/Calib/MappingRunData", cdbpath, runNumber);
  if ( ! cdbEntryObject ) return kFALSE;
  
  AliMpDataMap* dataMap = (AliMpDataMap*)cdbEntryObject;
  AliMpDataProcessor mp;
  return mp.GenerateData(dataMap);
} 

//______________________________________________________________________________
void AliMpCDB::UnloadAll()
{
  /// Unload all the mapping from the memory
  delete AliMpDDLStore::Instance(false);
  delete AliMpSegmentation::Instance(false);
  delete AliMpDEStore::Instance(false);
  delete AliMpManuStore::Instance(false);
}

 AliMpCDB.cxx:1
 AliMpCDB.cxx:2
 AliMpCDB.cxx:3
 AliMpCDB.cxx:4
 AliMpCDB.cxx:5
 AliMpCDB.cxx:6
 AliMpCDB.cxx:7
 AliMpCDB.cxx:8
 AliMpCDB.cxx:9
 AliMpCDB.cxx:10
 AliMpCDB.cxx:11
 AliMpCDB.cxx:12
 AliMpCDB.cxx:13
 AliMpCDB.cxx:14
 AliMpCDB.cxx:15
 AliMpCDB.cxx:16
 AliMpCDB.cxx:17
 AliMpCDB.cxx:18
 AliMpCDB.cxx:19
 AliMpCDB.cxx:20
 AliMpCDB.cxx:21
 AliMpCDB.cxx:22
 AliMpCDB.cxx:23
 AliMpCDB.cxx:24
 AliMpCDB.cxx:25
 AliMpCDB.cxx:26
 AliMpCDB.cxx:27
 AliMpCDB.cxx:28
 AliMpCDB.cxx:29
 AliMpCDB.cxx:30
 AliMpCDB.cxx:31
 AliMpCDB.cxx:32
 AliMpCDB.cxx:33
 AliMpCDB.cxx:34
 AliMpCDB.cxx:35
 AliMpCDB.cxx:36
 AliMpCDB.cxx:37
 AliMpCDB.cxx:38
 AliMpCDB.cxx:39
 AliMpCDB.cxx:40
 AliMpCDB.cxx:41
 AliMpCDB.cxx:42
 AliMpCDB.cxx:43
 AliMpCDB.cxx:44
 AliMpCDB.cxx:45
 AliMpCDB.cxx:46
 AliMpCDB.cxx:47
 AliMpCDB.cxx:48
 AliMpCDB.cxx:49
 AliMpCDB.cxx:50
 AliMpCDB.cxx:51
 AliMpCDB.cxx:52
 AliMpCDB.cxx:53
 AliMpCDB.cxx:54
 AliMpCDB.cxx:55
 AliMpCDB.cxx:56
 AliMpCDB.cxx:57
 AliMpCDB.cxx:58
 AliMpCDB.cxx:59
 AliMpCDB.cxx:60
 AliMpCDB.cxx:61
 AliMpCDB.cxx:62
 AliMpCDB.cxx:63
 AliMpCDB.cxx:64
 AliMpCDB.cxx:65
 AliMpCDB.cxx:66
 AliMpCDB.cxx:67
 AliMpCDB.cxx:68
 AliMpCDB.cxx:69
 AliMpCDB.cxx:70
 AliMpCDB.cxx:71
 AliMpCDB.cxx:72
 AliMpCDB.cxx:73
 AliMpCDB.cxx:74
 AliMpCDB.cxx:75
 AliMpCDB.cxx:76
 AliMpCDB.cxx:77
 AliMpCDB.cxx:78
 AliMpCDB.cxx:79
 AliMpCDB.cxx:80
 AliMpCDB.cxx:81
 AliMpCDB.cxx:82
 AliMpCDB.cxx:83
 AliMpCDB.cxx:84
 AliMpCDB.cxx:85
 AliMpCDB.cxx:86
 AliMpCDB.cxx:87
 AliMpCDB.cxx:88
 AliMpCDB.cxx:89
 AliMpCDB.cxx:90
 AliMpCDB.cxx:91
 AliMpCDB.cxx:92
 AliMpCDB.cxx:93
 AliMpCDB.cxx:94
 AliMpCDB.cxx:95
 AliMpCDB.cxx:96
 AliMpCDB.cxx:97
 AliMpCDB.cxx:98
 AliMpCDB.cxx:99
 AliMpCDB.cxx:100
 AliMpCDB.cxx:101
 AliMpCDB.cxx:102
 AliMpCDB.cxx:103
 AliMpCDB.cxx:104
 AliMpCDB.cxx:105
 AliMpCDB.cxx:106
 AliMpCDB.cxx:107
 AliMpCDB.cxx:108
 AliMpCDB.cxx:109
 AliMpCDB.cxx:110
 AliMpCDB.cxx:111
 AliMpCDB.cxx:112
 AliMpCDB.cxx:113
 AliMpCDB.cxx:114
 AliMpCDB.cxx:115
 AliMpCDB.cxx:116
 AliMpCDB.cxx:117
 AliMpCDB.cxx:118
 AliMpCDB.cxx:119
 AliMpCDB.cxx:120
 AliMpCDB.cxx:121
 AliMpCDB.cxx:122
 AliMpCDB.cxx:123
 AliMpCDB.cxx:124
 AliMpCDB.cxx:125
 AliMpCDB.cxx:126
 AliMpCDB.cxx:127
 AliMpCDB.cxx:128
 AliMpCDB.cxx:129
 AliMpCDB.cxx:130
 AliMpCDB.cxx:131
 AliMpCDB.cxx:132
 AliMpCDB.cxx:133
 AliMpCDB.cxx:134
 AliMpCDB.cxx:135
 AliMpCDB.cxx:136
 AliMpCDB.cxx:137
 AliMpCDB.cxx:138
 AliMpCDB.cxx:139
 AliMpCDB.cxx:140
 AliMpCDB.cxx:141
 AliMpCDB.cxx:142
 AliMpCDB.cxx:143
 AliMpCDB.cxx:144
 AliMpCDB.cxx:145
 AliMpCDB.cxx:146
 AliMpCDB.cxx:147
 AliMpCDB.cxx:148
 AliMpCDB.cxx:149
 AliMpCDB.cxx:150
 AliMpCDB.cxx:151
 AliMpCDB.cxx:152
 AliMpCDB.cxx:153
 AliMpCDB.cxx:154
 AliMpCDB.cxx:155
 AliMpCDB.cxx:156
 AliMpCDB.cxx:157
 AliMpCDB.cxx:158
 AliMpCDB.cxx:159
 AliMpCDB.cxx:160
 AliMpCDB.cxx:161
 AliMpCDB.cxx:162
 AliMpCDB.cxx:163
 AliMpCDB.cxx:164
 AliMpCDB.cxx:165
 AliMpCDB.cxx:166
 AliMpCDB.cxx:167
 AliMpCDB.cxx:168
 AliMpCDB.cxx:169
 AliMpCDB.cxx:170
 AliMpCDB.cxx:171
 AliMpCDB.cxx:172
 AliMpCDB.cxx:173
 AliMpCDB.cxx:174
 AliMpCDB.cxx:175
 AliMpCDB.cxx:176
 AliMpCDB.cxx:177
 AliMpCDB.cxx:178
 AliMpCDB.cxx:179
 AliMpCDB.cxx:180
 AliMpCDB.cxx:181
 AliMpCDB.cxx:182
 AliMpCDB.cxx:183
 AliMpCDB.cxx:184
 AliMpCDB.cxx:185
 AliMpCDB.cxx:186
 AliMpCDB.cxx:187
 AliMpCDB.cxx:188
 AliMpCDB.cxx:189
 AliMpCDB.cxx:190
 AliMpCDB.cxx:191
 AliMpCDB.cxx:192
 AliMpCDB.cxx:193
 AliMpCDB.cxx:194
 AliMpCDB.cxx:195
 AliMpCDB.cxx:196
 AliMpCDB.cxx:197
 AliMpCDB.cxx:198
 AliMpCDB.cxx:199
 AliMpCDB.cxx:200
 AliMpCDB.cxx:201
 AliMpCDB.cxx:202
 AliMpCDB.cxx:203
 AliMpCDB.cxx:204
 AliMpCDB.cxx:205
 AliMpCDB.cxx:206
 AliMpCDB.cxx:207
 AliMpCDB.cxx:208
 AliMpCDB.cxx:209
 AliMpCDB.cxx:210
 AliMpCDB.cxx:211
 AliMpCDB.cxx:212
 AliMpCDB.cxx:213
 AliMpCDB.cxx:214
 AliMpCDB.cxx:215
 AliMpCDB.cxx:216
 AliMpCDB.cxx:217
 AliMpCDB.cxx:218
 AliMpCDB.cxx:219
 AliMpCDB.cxx:220
 AliMpCDB.cxx:221
 AliMpCDB.cxx:222
 AliMpCDB.cxx:223
 AliMpCDB.cxx:224
 AliMpCDB.cxx:225
 AliMpCDB.cxx:226
 AliMpCDB.cxx:227
 AliMpCDB.cxx:228
 AliMpCDB.cxx:229
 AliMpCDB.cxx:230
 AliMpCDB.cxx:231
 AliMpCDB.cxx:232
 AliMpCDB.cxx:233
 AliMpCDB.cxx:234
 AliMpCDB.cxx:235
 AliMpCDB.cxx:236
 AliMpCDB.cxx:237
 AliMpCDB.cxx:238
 AliMpCDB.cxx:239
 AliMpCDB.cxx:240
 AliMpCDB.cxx:241
 AliMpCDB.cxx:242
 AliMpCDB.cxx:243
 AliMpCDB.cxx:244
 AliMpCDB.cxx:245
 AliMpCDB.cxx:246
 AliMpCDB.cxx:247
 AliMpCDB.cxx:248
 AliMpCDB.cxx:249
 AliMpCDB.cxx:250
 AliMpCDB.cxx:251
 AliMpCDB.cxx:252
 AliMpCDB.cxx:253
 AliMpCDB.cxx:254
 AliMpCDB.cxx:255
 AliMpCDB.cxx:256
 AliMpCDB.cxx:257
 AliMpCDB.cxx:258
 AliMpCDB.cxx:259
 AliMpCDB.cxx:260
 AliMpCDB.cxx:261
 AliMpCDB.cxx:262
 AliMpCDB.cxx:263
 AliMpCDB.cxx:264
 AliMpCDB.cxx:265
 AliMpCDB.cxx:266
 AliMpCDB.cxx:267
 AliMpCDB.cxx:268
 AliMpCDB.cxx:269
 AliMpCDB.cxx:270
 AliMpCDB.cxx:271
 AliMpCDB.cxx:272
 AliMpCDB.cxx:273
 AliMpCDB.cxx:274
 AliMpCDB.cxx:275
 AliMpCDB.cxx:276
 AliMpCDB.cxx:277
 AliMpCDB.cxx:278
 AliMpCDB.cxx:279
 AliMpCDB.cxx:280
 AliMpCDB.cxx:281
 AliMpCDB.cxx:282
 AliMpCDB.cxx:283
 AliMpCDB.cxx:284
 AliMpCDB.cxx:285
 AliMpCDB.cxx:286
 AliMpCDB.cxx:287
 AliMpCDB.cxx:288
 AliMpCDB.cxx:289
 AliMpCDB.cxx:290
 AliMpCDB.cxx:291
 AliMpCDB.cxx:292
 AliMpCDB.cxx:293
 AliMpCDB.cxx:294
 AliMpCDB.cxx:295
 AliMpCDB.cxx:296
 AliMpCDB.cxx:297
 AliMpCDB.cxx:298
 AliMpCDB.cxx:299
 AliMpCDB.cxx:300
 AliMpCDB.cxx:301
 AliMpCDB.cxx:302
 AliMpCDB.cxx:303
 AliMpCDB.cxx:304
 AliMpCDB.cxx:305
 AliMpCDB.cxx:306
 AliMpCDB.cxx:307
 AliMpCDB.cxx:308
 AliMpCDB.cxx:309
 AliMpCDB.cxx:310
 AliMpCDB.cxx:311
 AliMpCDB.cxx:312
 AliMpCDB.cxx:313
 AliMpCDB.cxx:314
 AliMpCDB.cxx:315
 AliMpCDB.cxx:316
 AliMpCDB.cxx:317
 AliMpCDB.cxx:318
 AliMpCDB.cxx:319
 AliMpCDB.cxx:320
 AliMpCDB.cxx:321
 AliMpCDB.cxx:322
 AliMpCDB.cxx:323
 AliMpCDB.cxx:324
 AliMpCDB.cxx:325
 AliMpCDB.cxx:326
 AliMpCDB.cxx:327
 AliMpCDB.cxx:328
 AliMpCDB.cxx:329
 AliMpCDB.cxx:330
 AliMpCDB.cxx:331
 AliMpCDB.cxx:332
 AliMpCDB.cxx:333
 AliMpCDB.cxx:334
 AliMpCDB.cxx:335
 AliMpCDB.cxx:336
 AliMpCDB.cxx:337
 AliMpCDB.cxx:338
 AliMpCDB.cxx:339
 AliMpCDB.cxx:340
 AliMpCDB.cxx:341
 AliMpCDB.cxx:342
 AliMpCDB.cxx:343
 AliMpCDB.cxx:344
 AliMpCDB.cxx:345
 AliMpCDB.cxx:346
 AliMpCDB.cxx:347
 AliMpCDB.cxx:348
 AliMpCDB.cxx:349
 AliMpCDB.cxx:350
 AliMpCDB.cxx:351
 AliMpCDB.cxx:352
 AliMpCDB.cxx:353
 AliMpCDB.cxx:354
 AliMpCDB.cxx:355
 AliMpCDB.cxx:356
 AliMpCDB.cxx:357
 AliMpCDB.cxx:358
 AliMpCDB.cxx:359
 AliMpCDB.cxx:360
 AliMpCDB.cxx:361
 AliMpCDB.cxx:362
 AliMpCDB.cxx:363
 AliMpCDB.cxx:364
 AliMpCDB.cxx:365
 AliMpCDB.cxx:366
 AliMpCDB.cxx:367
 AliMpCDB.cxx:368
 AliMpCDB.cxx:369
 AliMpCDB.cxx:370
 AliMpCDB.cxx:371
 AliMpCDB.cxx:372
 AliMpCDB.cxx:373
 AliMpCDB.cxx:374
 AliMpCDB.cxx:375
 AliMpCDB.cxx:376
 AliMpCDB.cxx:377
 AliMpCDB.cxx:378
 AliMpCDB.cxx:379
 AliMpCDB.cxx:380
 AliMpCDB.cxx:381
 AliMpCDB.cxx:382
 AliMpCDB.cxx:383
 AliMpCDB.cxx:384
 AliMpCDB.cxx:385
 AliMpCDB.cxx:386
 AliMpCDB.cxx:387
 AliMpCDB.cxx:388
 AliMpCDB.cxx:389
 AliMpCDB.cxx:390
 AliMpCDB.cxx:391
 AliMpCDB.cxx:392
 AliMpCDB.cxx:393
 AliMpCDB.cxx:394
 AliMpCDB.cxx:395
 AliMpCDB.cxx:396
 AliMpCDB.cxx:397
 AliMpCDB.cxx:398
 AliMpCDB.cxx:399
 AliMpCDB.cxx:400
 AliMpCDB.cxx:401
 AliMpCDB.cxx:402
 AliMpCDB.cxx:403
 AliMpCDB.cxx:404
 AliMpCDB.cxx:405
 AliMpCDB.cxx:406
 AliMpCDB.cxx:407
 AliMpCDB.cxx:408
 AliMpCDB.cxx:409
 AliMpCDB.cxx:410
 AliMpCDB.cxx:411
 AliMpCDB.cxx:412
 AliMpCDB.cxx:413
 AliMpCDB.cxx:414
 AliMpCDB.cxx:415
 AliMpCDB.cxx:416
 AliMpCDB.cxx:417
 AliMpCDB.cxx:418
 AliMpCDB.cxx:419
 AliMpCDB.cxx:420
 AliMpCDB.cxx:421
 AliMpCDB.cxx:422
 AliMpCDB.cxx:423
 AliMpCDB.cxx:424
 AliMpCDB.cxx:425
 AliMpCDB.cxx:426
 AliMpCDB.cxx:427
 AliMpCDB.cxx:428
 AliMpCDB.cxx:429
 AliMpCDB.cxx:430
 AliMpCDB.cxx:431
 AliMpCDB.cxx:432
 AliMpCDB.cxx:433
 AliMpCDB.cxx:434
 AliMpCDB.cxx:435
 AliMpCDB.cxx:436
 AliMpCDB.cxx:437
 AliMpCDB.cxx:438
 AliMpCDB.cxx:439
 AliMpCDB.cxx:440
 AliMpCDB.cxx:441
 AliMpCDB.cxx:442
 AliMpCDB.cxx:443
 AliMpCDB.cxx:444
 AliMpCDB.cxx:445
 AliMpCDB.cxx:446
 AliMpCDB.cxx:447
 AliMpCDB.cxx:448
 AliMpCDB.cxx:449
 AliMpCDB.cxx:450
 AliMpCDB.cxx:451
 AliMpCDB.cxx:452
 AliMpCDB.cxx:453
 AliMpCDB.cxx:454
 AliMpCDB.cxx:455
 AliMpCDB.cxx:456
 AliMpCDB.cxx:457
 AliMpCDB.cxx:458
 AliMpCDB.cxx:459
 AliMpCDB.cxx:460
 AliMpCDB.cxx:461
 AliMpCDB.cxx:462
 AliMpCDB.cxx:463
 AliMpCDB.cxx:464
 AliMpCDB.cxx:465
 AliMpCDB.cxx:466
 AliMpCDB.cxx:467
 AliMpCDB.cxx:468
 AliMpCDB.cxx:469
 AliMpCDB.cxx:470
 AliMpCDB.cxx:471
 AliMpCDB.cxx:472
 AliMpCDB.cxx:473
 AliMpCDB.cxx:474
 AliMpCDB.cxx:475
 AliMpCDB.cxx:476
 AliMpCDB.cxx:477
 AliMpCDB.cxx:478
 AliMpCDB.cxx:479
 AliMpCDB.cxx:480
 AliMpCDB.cxx:481
 AliMpCDB.cxx:482
 AliMpCDB.cxx:483
 AliMpCDB.cxx:484
 AliMpCDB.cxx:485
 AliMpCDB.cxx:486
 AliMpCDB.cxx:487
 AliMpCDB.cxx:488
 AliMpCDB.cxx:489
 AliMpCDB.cxx:490
 AliMpCDB.cxx:491
 AliMpCDB.cxx:492
 AliMpCDB.cxx:493
 AliMpCDB.cxx:494
 AliMpCDB.cxx:495
 AliMpCDB.cxx:496
 AliMpCDB.cxx:497
 AliMpCDB.cxx:498
 AliMpCDB.cxx:499
 AliMpCDB.cxx:500
 AliMpCDB.cxx:501
 AliMpCDB.cxx:502
 AliMpCDB.cxx:503
 AliMpCDB.cxx:504
 AliMpCDB.cxx:505
 AliMpCDB.cxx:506
 AliMpCDB.cxx:507
 AliMpCDB.cxx:508
 AliMpCDB.cxx:509
 AliMpCDB.cxx:510
 AliMpCDB.cxx:511
 AliMpCDB.cxx:512
 AliMpCDB.cxx:513
 AliMpCDB.cxx:514
 AliMpCDB.cxx:515
 AliMpCDB.cxx:516