]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - TPC/AliTPCmapper.cxx
Update to read new DAQ data format
[u/mrichter/AliRoot.git] / TPC / AliTPCmapper.cxx
index 384a079a180c545c920396835d4bfd1d1bbbd74c..7798c641345ade939807b0f03dab13f7eb5ae109 100644 (file)
 #include "AliDAQ.h"
 
 ClassImp(AliTPCmapper)
+//______________________________________________________________
+AliTPCmapper::AliTPCmapper() :
+  fNside(0),
+  fNsector(0),
+  fNrcu(0),
+  fNbranch(0),
+  fNaltro(0),
+  fNchannel(0),
+  fNpadrow(0),
+  fNpadrowIROC(0),
+  fNpadrowOROC(0),
+  fTpcDdlOffset(0)
+{
+  //
+  // Constructor
+  //
+  for ( Int_t i = 0; i < 6; i++ )  fMapping[i]=0;
+}
 
 //______________________________________________________________
 AliTPCmapper::AliTPCmapper(const char * dirname) :
@@ -58,8 +76,7 @@ AliTPCmapper::AliTPCmapper(const char * dirname) :
   fNpadrow(0),
   fNpadrowIROC(0),
   fNpadrowOROC(0),
-  fTpcDdlOffset(0),
-  fROC(NULL)
+  fTpcDdlOffset(0)
 {
   //
   // Constructor
@@ -74,8 +91,6 @@ AliTPCmapper::~AliTPCmapper()
 {
   // Destructor
 
-  delete fROC;
-
   for ( Int_t i = 0; i < fNrcu; i++ ) {
     delete fMapping[i];
     fMapping[i] = 0;
@@ -95,8 +110,7 @@ AliTPCmapper::AliTPCmapper(const AliTPCmapper& mapper) :
   fNpadrow(mapper.fNpadrow),
   fNpadrowIROC(mapper.fNpadrowIROC),
   fNpadrowOROC(mapper.fNpadrowOROC),
-  fTpcDdlOffset(mapper.fTpcDdlOffset),
-  fROC(mapper.fROC)
+  fTpcDdlOffset(mapper.fTpcDdlOffset)
 {
   // Copy Constructor
   for ( Int_t i = 0; i < fNrcu; i++ ) fMapping[i] = mapper.fMapping[i];
@@ -111,7 +125,6 @@ AliTPCmapper& AliTPCmapper::operator = (const AliTPCmapper& mapper)
   ((TObject *)this)->operator=(mapper);
 
   for ( Int_t i = 0; i < fNrcu; i++ ) fMapping[i] = mapper.fMapping[i];
-  fROC = mapper.fROC;
 
   fNside = mapper.fNside;
   fNsector = mapper.fNsector;
@@ -158,11 +171,10 @@ void AliTPCmapper::Init(const char *dirname)
   }
 
   // Create instance of AliTPCROC object
-  fROC = AliTPCROC::Instance();
-
+  AliTPCROC *fROC = AliTPCROC::Instance();
   fNpadrowIROC = fROC->GetNRows(0);
   fNpadrowOROC = fROC->GetNRows(36);
-  fNpadrow = fNpadrowIROC+fNpadrowOROC;
+  fNpadrow     = fNpadrowIROC+fNpadrowOROC;
 
   AliDAQ daq;
   fTpcDdlOffset = daq.DdlIDOffset("TPC");
@@ -506,7 +518,9 @@ Int_t AliTPCmapper::DecodedHWAddressChanneladdr(Int_t hwAddress) const
 //______________________________________________________________
 Int_t AliTPCmapper::GetNpads(Int_t roc, Int_t padrow) const{
   // Get number of pads in padrow for this ROC.
-  return fROC->GetNPads((UInt_t)roc, (UInt_t)padrow);
+  AliTPCROC *fROC = AliTPCROC::Instance();
+  Int_t retval = fROC->GetNPads((UInt_t)roc, (UInt_t)padrow);
+  return retval;
 }
 
 
@@ -529,7 +543,9 @@ Int_t AliTPCmapper::GetNpads(Int_t globalpadrow) const{
 Int_t AliTPCmapper::GetNpadrows(Int_t roc) const
 {
   // Get number of padrows
-  return fROC->GetNRows(roc);
+  if      (roc < 36) return fNpadrowIROC;
+  else if (roc < 72) return fNpadrowOROC;
+  return -1;
 }
 
 
@@ -722,6 +738,7 @@ Int_t AliTPCmapper::GetNfec(Int_t patch, Int_t branch) const
   if( (branch == 1) && (patch == 1) ){
     retval = 12;
   }
+
   return retval;
 }