Adding static function GetDetElement(TString& deName)
authorivana <ivana@f7af4fe6-9843-0410-8265-dc069ae4e863>
Tue, 17 Apr 2007 14:12:08 +0000 (14:12 +0000)
committerivana <ivana@f7af4fe6-9843-0410-8265-dc069ae4e863>
Tue, 17 Apr 2007 14:12:08 +0000 (14:12 +0000)
(Christian)

MUON/mapping/AliMpDEManager.cxx
MUON/mapping/AliMpDEManager.h
MUON/mapping/AliMpDEStore.cxx
MUON/mapping/AliMpDEStore.h

index 3eaec1251c9834bff52ea2cc08d12bc143039ce0..13569348f0c8e5691e13a7920318d0220cb603df 100644 (file)
@@ -63,6 +63,14 @@ AliMpDetElement* AliMpDEManager::GetDetElement(Int_t detElemId, Bool_t warn)
   return AliMpDEStore::Instance()->GetDetElement(detElemId, warn);
 }    
 
+//______________________________________________________________________________
+AliMpDetElement* AliMpDEManager::GetDetElement(const TString& deName, Bool_t warn)
+{
+/// Return det element for given deName
+
+  return AliMpDEStore::Instance()->GetDetElement(deName, warn);
+}    
+
 //
 // static public methods
 //
index e25476b099a8b3c49188dc78d539409abd6ab188..51a940ba9e75d9759805f62d50edd278e8f8f212 100644 (file)
@@ -30,6 +30,7 @@
 #include "AliMpDEIterator.h"
 
 class AliMpDetElement;
+class TString;
 
 class AliMpDEManager : public  TObject {
 
@@ -48,6 +49,8 @@ class AliMpDEManager : public  TObject {
     static AliMp::CathodType  GetCathod(Int_t detElemId, AliMp::PlaneType planeType);
 
     static AliMpDetElement* GetDetElement(Int_t detElemId, Bool_t warn = true);
+    static AliMpDetElement* GetDetElement(const TString& deName, Bool_t warn = true);
+
     static Int_t GetNofDEInChamber(Int_t chamberId, Bool_t warn = true);
 
   private:
index f0b0d58a3ba044e526e6907754867c9115349bda..007a09c4c8e6b18ef464a318492370fc6709a93c 100644 (file)
@@ -366,6 +366,29 @@ AliMpDetElement* AliMpDEStore::GetDetElement(Int_t detElemId, Bool_t warn) const
   return detElement;
 }    
 
+//______________________________________________________________________________
+AliMpDetElement* AliMpDEStore::GetDetElement(const TString& deName, Bool_t warn) const
+{
+/// Return det element for given deName
+
+  for ( Int_t i = 0; i < fDetElements.GetSize(); i++ ) {
+    
+    AliMpDetElement* detElement 
+      = (AliMpDetElement*)fDetElements.GetObject(i);
+      
+    if (deName.CompareTo(detElement->GetDEName()) == 0) 
+
+      return detElement;
+  }
+
+  if (warn) {  
+    AliErrorClassStream() 
+       << "Detection element with name" << deName.Data() << " not defined." << endl;
+  }    
+
+  return 0x0;   
+
+}
 //______________________________________________________________________________
 AliMpIntPair  AliMpDEStore::GetDetElemIdManu(Int_t manuSerial) const
 {
@@ -383,3 +406,4 @@ AliMpIntPair  AliMpDEStore::GetDetElemIdManu(Int_t manuSerial) const
   // manu with this serial number does not exist
   return AliMpIntPair::Invalid();
 }  
+
index 1a77981c74e9e633e1b5bd32c25094cc7b9468d6..493a79e6db310d7700d4482ea654cffeb9abb3c4 100644 (file)
@@ -23,6 +23,7 @@
 #include "AliMpIntPair.h"
 
 class AliMpDetElement;
+class TString;
 
 class AliMpDEStore : public  TObject {
 
@@ -37,6 +38,8 @@ class AliMpDEStore : public  TObject {
     
     // methods
     AliMpDetElement* GetDetElement(Int_t detElemId, Bool_t warn = true) const;
+    AliMpDetElement* GetDetElement(const TString& detName, Bool_t warn = true) const;
+
     AliMpIntPair     GetDetElemIdManu(Int_t manuSerial) const;
     
   private: