Made persistent
authorcholm <cholm@f7af4fe6-9843-0410-8265-dc069ae4e863>
Sat, 18 Mar 2006 14:11:45 +0000 (14:11 +0000)
committercholm <cholm@f7af4fe6-9843-0410-8265-dc069ae4e863>
Sat, 18 Mar 2006 14:11:45 +0000 (14:11 +0000)
FMD/AliFMDBoolMap.cxx
FMD/AliFMDBoolMap.h
FMD/AliFMDEdepMap.cxx
FMD/AliFMDEdepMap.h
FMD/AliFMDUShortMap.cxx
FMD/AliFMDUShortMap.h

index c3b413f..3e72594 100644 (file)
@@ -38,9 +38,9 @@ AliFMDBoolMap::AliFMDBoolMap(const AliFMDBoolMap& other)
     fData(0)
 {
   // Copy constructor
-  fData = new Bool_t[fMaxDetectors * fMaxRings * fMaxSectors * fMaxStrips];
-  for (size_t i = 0; i < fMaxDetectors * fMaxRings * fMaxSectors * fMaxStrips; i++)
-    fData[i] = other.fData[i];
+  fTotal = fMaxDetectors * fMaxRings * fMaxSectors * fMaxStrips;
+  fData  = new Bool_t[fTotal];
+  for (size_t i = 0; i < fTotal; i++) fData[i] = other.fData[i];
 }
 
 //__________________________________________________________
@@ -57,7 +57,8 @@ AliFMDBoolMap::AliFMDBoolMap(size_t maxDet,
   //   maxRing Maximum number of rings per detector
   //   maxSec  Maximum number of sectors per ring
   //   maxStr  Maximum number of strips per sector
-  fData = new Bool_t[fMaxDetectors * fMaxRings * fMaxSectors * fMaxStrips];
+  fTotal = fMaxDetectors * fMaxRings * fMaxSectors * fMaxStrips;
+  fData  = new Bool_t[fTotal];
   Reset();
 }
 
@@ -71,10 +72,9 @@ AliFMDBoolMap::operator=(const AliFMDBoolMap& other)
   fMaxSectors   = other.fMaxSectors;
   fMaxStrips    = other.fMaxStrips;
   if (fData) delete [] fData;
-  fData = new Bool_t[fMaxDetectors * fMaxRings * fMaxSectors * fMaxStrips];
-  for (size_t i = 0; i < fMaxDetectors * fMaxRings 
-        * fMaxSectors * fMaxStrips; i++)
-    fData[i] = other.fData[i];
+  fTotal = fMaxDetectors * fMaxRings * fMaxSectors * fMaxStrips;
+  fData  = new Bool_t[fTotal];
+  for (size_t i = 0; i < fTotal; i++) fData[i] = other.fData[i];
   return *this;
 }
 
@@ -83,9 +83,7 @@ void
 AliFMDBoolMap::Reset(const Bool_t& val)
 {
   // Reset map to val
-  for (size_t i = 0; i < fMaxDetectors * fMaxRings 
-        * fMaxSectors * fMaxStrips; i++)
-    fData[i] = val;
+  for (size_t i = 0; i < fTotal; i++) fData[i] = val;
 }
 
 //__________________________________________________________
index 61b00e6..4227dd0 100644 (file)
@@ -37,8 +37,9 @@ public:
                                   UShort_t sec,
                                   UShort_t str) const;
 protected:
-  Bool_t* fData; // The Data
-  ClassDef(AliFMDBoolMap,1) // Map of Bool_t data per strip
+  size_t  fTotal; // Total number of entries 
+  Bool_t* fData;  // [fTotal] The Data
+  ClassDef(AliFMDBoolMap,2) // Map of Bool_t data per strip
 };
 
 #endif
index dea63be..e6872b0 100644 (file)
@@ -34,10 +34,9 @@ AliFMDEdepMap::AliFMDEdepMap(const AliFMDEdepMap& other)
     fData(0)
 {
   // Copy constructor 
-  fData = new AliFMDEdepHitPair[fMaxDetectors * fMaxRings * 
-                               fMaxSectors * fMaxStrips];
-  for (size_t i = 0; i < fMaxDetectors * fMaxRings * fMaxSectors * fMaxStrips;
-       i++) fData[i] = other.fData[i];
+  fTotal = fMaxDetectors * fMaxRings * fMaxSectors * fMaxStrips;
+  fData  = new AliFMDEdepHitPair[fTotal];
+  for (size_t i = 0; i < fTotal; i++) fData[i] = other.fData[i];
 }
 
   
@@ -57,8 +56,8 @@ AliFMDEdepMap::AliFMDEdepMap(size_t maxDet,
   //     maxRinf      Maximum # of rings
   //     maxSec       Maximum # of sectors
   //     maxStr       Maximum # of strips
-  fData = new AliFMDEdepHitPair[fMaxDetectors * fMaxRings * 
-                               fMaxSectors * fMaxStrips];
+  fTotal = fMaxDetectors * fMaxRings * fMaxSectors * fMaxStrips;
+  fData  = new AliFMDEdepHitPair[fTotal];
 }
 
 //____________________________________________________________________
@@ -71,10 +70,9 @@ AliFMDEdepMap::operator=(const AliFMDEdepMap& other)
   fMaxSectors   = other.fMaxSectors;
   fMaxStrips    = other.fMaxStrips;
   if (fData) delete [] fData;
-  fData = new AliFMDEdepHitPair[fMaxDetectors * fMaxRings * 
-                               fMaxSectors * fMaxStrips];
-  for (size_t i = 0; i < fMaxDetectors * fMaxRings * fMaxSectors * fMaxStrips;
-       i++) fData[i] = other.fData[i];
+  fTotal = fMaxDetectors * fMaxRings * fMaxSectors * fMaxStrips;
+  fData  = new AliFMDEdepHitPair[fTotal];
+  for (size_t i = 0; i < fTotal; i++) fData[i] = other.fData[i];
   return *this;
 }
 
@@ -83,8 +81,10 @@ void
 AliFMDEdepMap::Reset() 
 {
   // Reset to zero
-  for (size_t i = 0; i < fMaxDetectors * fMaxRings * fMaxSectors * fMaxStrips;
-       i++) { fData[i].fEdep = 0; fData[i].fN = 0; };
+  for (size_t i = 0; i < fTotal; i++) { 
+    fData[i].fEdep = 0; 
+    fData[i].fN = 0; 
+  };
 }
 
 //____________________________________________________________________
@@ -92,8 +92,10 @@ void
 AliFMDEdepMap::Reset(const AliFMDEdepHitPair& val) 
 {
   // Reset to val
-  for (size_t i = 0; i < fMaxDetectors * fMaxRings * fMaxSectors * fMaxStrips;
-       i++) { fData[i].fEdep = val.fEdep; fData[i].fN = val.fN; };
+  for (size_t i = 0; i < fTotal; i++) { 
+    fData[i].fEdep = val.fEdep; 
+    fData[i].fN = val.fN; 
+  };
 }
 
 //____________________________________________________________________
index e9831a1..4a634ce 100644 (file)
@@ -49,8 +49,9 @@ public:
                                           UShort_t sector, 
                                           UShort_t strip) const;
 protected:
-  AliFMDEdepHitPair* fData;  // The data 
-  ClassDef(AliFMDEdepMap, 1) // Cache of edep,hit information per strip
+  size_t             fTotal; //  
+  AliFMDEdepHitPair* fData;  //[fTotal] The data 
+  ClassDef(AliFMDEdepMap, 2) // Cache of edep,hit information per strip
 };
 
 #endif 
index a4be648..62e440f 100644 (file)
@@ -38,9 +38,9 @@ AliFMDUShortMap::AliFMDUShortMap(const AliFMDUShortMap& other)
     fData(0)
 {
   // CTOR
-  fData = new UShort_t[fMaxDetectors * fMaxRings * fMaxSectors * fMaxStrips];
-  for (size_t i = 0; i < fMaxDetectors * fMaxRings * fMaxSectors * fMaxStrips;
-       i++) fData[i] = other.fData[i];
+  fTotal = fMaxDetectors * fMaxRings * fMaxSectors * fMaxStrips;
+  fData  = new UShort_t[fTotal];
+  for (size_t i = 0; i < fTotal; i++) fData[i] = other.fData[i];
 }
 
   
@@ -60,7 +60,8 @@ AliFMDUShortMap::AliFMDUShortMap(size_t maxDet,
   //     maxRinf      Maximum # of rings
   //     maxSec       Maximum # of sectors
   //     maxStr       Maximum # of strips
-  fData = new UShort_t[fMaxDetectors * fMaxRings * fMaxSectors * fMaxStrips];
+  fTotal = fMaxDetectors * fMaxRings * fMaxSectors * fMaxStrips;
+  fData  = new UShort_t[fTotal];
 }
 
 //____________________________________________________________________
@@ -73,9 +74,9 @@ AliFMDUShortMap::operator=(const AliFMDUShortMap& other)
   fMaxSectors   = other.fMaxSectors;
   fMaxStrips    = other.fMaxStrips;
   if (fData) delete [] fData;
-  fData = new UShort_t[fMaxDetectors * fMaxRings * fMaxSectors * fMaxStrips];
-  for (size_t i = 0; i < fMaxDetectors * fMaxRings * fMaxSectors * fMaxStrips;
-       i++) fData[i] = other.fData[i];
+  fTotal = fMaxDetectors * fMaxRings * fMaxSectors * fMaxStrips;
+  fData  = new UShort_t[fTotal];
+  for (size_t i = 0; i < fTotal; i++) fData[i] = other.fData[i];
   return *this;
 }
 
@@ -84,8 +85,7 @@ void
 AliFMDUShortMap::Reset(const UShort_t& val) 
 {
   // Reset to val
-  for (size_t i = 0; i < fMaxDetectors * fMaxRings * fMaxSectors * fMaxStrips;
-       i++) fData[i] = val;
+  for (size_t i = 0; i < fTotal; i++) fData[i] = val;
 }
 
 //____________________________________________________________________
index e54ef17..22787c1 100644 (file)
@@ -34,8 +34,9 @@ public:
                                     UShort_t sector, 
                                     UShort_t strip) const;
  protected:
-  UShort_t* fData;  // The data 
-  ClassDef(AliFMDUShortMap, 1) // Cache of edep,hit information per strip
+  size_t    fTotal; // Total number of entries 
+  UShort_t* fData;  // [fTotal] The data 
+  ClassDef(AliFMDUShortMap, 2) // Cache of edep,hit information per strip
 };
 
 #endif