From b13c210423e49e3d314cb95ee79a4d8504d80f24 Mon Sep 17 00:00:00 2001
From: deserevi <deserevi@nptool>
Date: Wed, 23 Sep 2009 20:48:08 +0000
Subject: [PATCH] * Change treatment of INDEX number for Gaspard    - indexes
 are now defined with a map in GaspardTrackerModule.{h,cxx}    - this removes
 warnings at compilation time

---
 NPSimulation/include/GaspardTrackerAnnular.hh   |  1 -
 .../include/GaspardTrackerDummyShape.hh         |  1 -
 NPSimulation/include/GaspardTrackerModule.hh    |  7 +++++++
 NPSimulation/include/GaspardTrackerSquare.hh    |  1 -
 NPSimulation/include/GaspardTrackerTrapezoid.hh |  1 -
 NPSimulation/src/GaspardTrackerAnnular.cc       | 12 ++++++------
 NPSimulation/src/GaspardTrackerDummyShape.cc    | 17 ++++++++---------
 NPSimulation/src/GaspardTrackerModule.cc        | 11 +++++++++++
 NPSimulation/src/GaspardTrackerSquare.cc        | 16 ++++++++--------
 NPSimulation/src/GaspardTrackerTrapezoid.cc     | 12 ++++++------
 10 files changed, 46 insertions(+), 33 deletions(-)

diff --git a/NPSimulation/include/GaspardTrackerAnnular.hh b/NPSimulation/include/GaspardTrackerAnnular.hh
index a43a7bf45..0437e4bad 100644
--- a/NPSimulation/include/GaspardTrackerAnnular.hh
+++ b/NPSimulation/include/GaspardTrackerAnnular.hh
@@ -31,7 +31,6 @@
 
 using namespace std;
 
-#define INDEX	200
 
 
 class GaspardTrackerAnnular : public GaspardTrackerModule
diff --git a/NPSimulation/include/GaspardTrackerDummyShape.hh b/NPSimulation/include/GaspardTrackerDummyShape.hh
index db4cdec8c..256be83a4 100644
--- a/NPSimulation/include/GaspardTrackerDummyShape.hh
+++ b/NPSimulation/include/GaspardTrackerDummyShape.hh
@@ -33,7 +33,6 @@
 
 using namespace std;
 
-#define	INDEX	1000
 
 
 class GaspardTrackerDummyShape : public GaspardTrackerModule
diff --git a/NPSimulation/include/GaspardTrackerModule.hh b/NPSimulation/include/GaspardTrackerModule.hh
index 92ee9483f..028106885 100644
--- a/NPSimulation/include/GaspardTrackerModule.hh
+++ b/NPSimulation/include/GaspardTrackerModule.hh
@@ -24,6 +24,7 @@
 
 // C++ headers
 #include <string>
+#include <vector>
 
 // G4 headers
 #include "G4LogicalVolume.hh"
@@ -66,6 +67,9 @@ public:
    virtual void SetInterCoordPointer(TInteractionCoordinates* interCoord) = 0;
    virtual TInteractionCoordinates* GetInterCoordPointer() = 0;
 
+   // Initialize the Index map for the different modules of Gaspard
+   void InitializeIndex();
+
 public:
    TGaspardTrackerData*		GetEventPointer() 	{return ms_Event;};
 
@@ -90,6 +94,9 @@ protected:
 
    // Third stage Associate Scorer 
    G4MultiFunctionalDetector* m_ThirdStageScorer;
+
+protected:
+   map<string, int> m_index;
 };
 
 #endif
diff --git a/NPSimulation/include/GaspardTrackerSquare.hh b/NPSimulation/include/GaspardTrackerSquare.hh
index 841a605c9..180b0d1b1 100644
--- a/NPSimulation/include/GaspardTrackerSquare.hh
+++ b/NPSimulation/include/GaspardTrackerSquare.hh
@@ -31,7 +31,6 @@
 
 using namespace std;
 
-#define	INDEX	0
 
 
 class GaspardTrackerSquare : public GaspardTrackerModule
diff --git a/NPSimulation/include/GaspardTrackerTrapezoid.hh b/NPSimulation/include/GaspardTrackerTrapezoid.hh
index 2b86902e3..c7224df3b 100644
--- a/NPSimulation/include/GaspardTrackerTrapezoid.hh
+++ b/NPSimulation/include/GaspardTrackerTrapezoid.hh
@@ -31,7 +31,6 @@
 
 using namespace std;
 
-#define	INDEX	100
 
 
 class GaspardTrackerTrapezoid : public GaspardTrackerModule
diff --git a/NPSimulation/src/GaspardTrackerAnnular.cc b/NPSimulation/src/GaspardTrackerAnnular.cc
index ba566a4c2..d317818cc 100644
--- a/NPSimulation/src/GaspardTrackerAnnular.cc
+++ b/NPSimulation/src/GaspardTrackerAnnular.cc
@@ -631,10 +631,10 @@ void GaspardTrackerAnnular::ReadSensitive(const G4Event* event)
 
                 if (NTrackID == ETrackID) {
                    N = Nl ;
-                   ms_Event->SetGPDTrkFirstStageFrontEDetectorNbr(INDEX + N);
-                   ms_Event->SetGPDTrkFirstStageFrontTDetectorNbr(INDEX + N);
-                   ms_Event->SetGPDTrkFirstStageBackEDetectorNbr(INDEX + N);
-                   ms_Event->SetGPDTrkFirstStageBackTDetectorNbr(INDEX + N);
+                   ms_Event->SetGPDTrkFirstStageFrontEDetectorNbr(m_index["Annular"] + N);
+                   ms_Event->SetGPDTrkFirstStageFrontTDetectorNbr(m_index["Annular"] + N);
+                   ms_Event->SetGPDTrkFirstStageBackEDetectorNbr(m_index["Annular"] + N);
+                   ms_Event->SetGPDTrkFirstStageBackTDetectorNbr(m_index["Annular"] + N);
                 }
                 DetectorNumber_itr++;
             }
@@ -747,8 +747,8 @@ void GaspardTrackerAnnular::ReadSensitive(const G4Event* event)
                      ms_Event->SetGPDTrkThirdStageEPadNbr(1);
                      ms_Event->SetGPDTrkThirdStageTPadNbr(1);
                      ms_Event->SetGPDTrkThirdStageTTime(1);
-                     ms_Event->SetGPDTrkThirdStageTDetectorNbr(INDEX + N);
-                     ms_Event->SetGPDTrkThirdStageEDetectorNbr(INDEX + N);
+                     ms_Event->SetGPDTrkThirdStageTDetectorNbr(m_index["Annular"] + N);
+                     ms_Event->SetGPDTrkThirdStageEDetectorNbr(m_index["Annular"] + N);
                   }
 
                   ThirdStageEnergy_itr++;
diff --git a/NPSimulation/src/GaspardTrackerDummyShape.cc b/NPSimulation/src/GaspardTrackerDummyShape.cc
index f8ab37d18..4fdfd5ae9 100644
--- a/NPSimulation/src/GaspardTrackerDummyShape.cc
+++ b/NPSimulation/src/GaspardTrackerDummyShape.cc
@@ -53,7 +53,6 @@
 #include "GeneralScorers.hh"
 #include "GaspardScorers.hh"
 #include "RootOutput.h"
-#include "MUST2Array.hh"
 
 // CLHEP
 #include "CLHEP/Random/RandGauss.h"
@@ -776,10 +775,10 @@ void GaspardTrackerDummyShape::ReadSensitive(const G4Event* event)
 
              if (NTrackID == ETrackID) {
                 N = Nl ;
-                ms_Event->SetGPDTrkFirstStageFrontEDetectorNbr(INDEX + N);
-                ms_Event->SetGPDTrkFirstStageFrontTDetectorNbr(INDEX + N);
-                ms_Event->SetGPDTrkFirstStageBackEDetectorNbr(INDEX + N);
-                ms_Event->SetGPDTrkFirstStageBackTDetectorNbr(INDEX + N);
+                ms_Event->SetGPDTrkFirstStageFrontEDetectorNbr(m_index["DummyShape"] + N);
+                ms_Event->SetGPDTrkFirstStageFrontTDetectorNbr(m_index["DummyShape"] + N);
+                ms_Event->SetGPDTrkFirstStageBackEDetectorNbr(m_index["DummyShape"] + N);
+                ms_Event->SetGPDTrkFirstStageBackTDetectorNbr(m_index["DummyShape"] + N);
              }
              DetectorNumber_itr++;
          }
@@ -888,8 +887,8 @@ void GaspardTrackerDummyShape::ReadSensitive(const G4Event* event)
                ms_Event->SetGPDTrkSecondStageEPadNbr(1);
                ms_Event->SetGPDTrkSecondStageTPadNbr(1);
                ms_Event->SetGPDTrkSecondStageTTime(1);
-               ms_Event->SetGPDTrkSecondStageTDetectorNbr(INDEX + N);
-               ms_Event->SetGPDTrkSecondStageEDetectorNbr(INDEX + N);
+               ms_Event->SetGPDTrkSecondStageTDetectorNbr(m_index["DummyShape"] + N);
+               ms_Event->SetGPDTrkSecondStageEDetectorNbr(m_index["DummyShape"] + N);
             }
             SecondStageEnergy_itr++;
          }
@@ -905,8 +904,8 @@ void GaspardTrackerDummyShape::ReadSensitive(const G4Event* event)
                ms_Event->SetGPDTrkThirdStageEPadNbr(1);
                ms_Event->SetGPDTrkThirdStageTPadNbr(1);
                ms_Event->SetGPDTrkThirdStageTTime(1);
-               ms_Event->SetGPDTrkThirdStageTDetectorNbr(INDEX + N);
-               ms_Event->SetGPDTrkThirdStageEDetectorNbr(INDEX + N);
+               ms_Event->SetGPDTrkThirdStageTDetectorNbr(m_index["DummyShape"] + N);
+               ms_Event->SetGPDTrkThirdStageEDetectorNbr(m_index["DummyShape"] + N);
             }
             ThirdStageEnergy_itr++;
          }
diff --git a/NPSimulation/src/GaspardTrackerModule.cc b/NPSimulation/src/GaspardTrackerModule.cc
index 73637464c..890cd7770 100644
--- a/NPSimulation/src/GaspardTrackerModule.cc
+++ b/NPSimulation/src/GaspardTrackerModule.cc
@@ -32,6 +32,7 @@ GaspardTrackerModule::GaspardTrackerModule()
    if (ms_Event == 0) ms_Event = new TGaspardTrackerData();
 
    InitializeRootOutput();
+   InitializeIndex();
 }
 
 
@@ -50,3 +51,13 @@ void GaspardTrackerModule::InitializeRootOutput()
    if (!pTree->GetBranch("GASPARD"))
       pTree->Branch("GASPARD", "TGaspardTrackerData", &ms_Event);
 }
+
+
+
+void GaspardTrackerModule::InitializeIndex()
+{
+   m_index["Square"]     =    0;
+   m_index["Trapezoid"]  =  100;
+   m_index["Annular"]    =  200;
+   m_index["DummyShape"] = 1000;
+}
diff --git a/NPSimulation/src/GaspardTrackerSquare.cc b/NPSimulation/src/GaspardTrackerSquare.cc
index 39c2f6bde..a38205a98 100644
--- a/NPSimulation/src/GaspardTrackerSquare.cc
+++ b/NPSimulation/src/GaspardTrackerSquare.cc
@@ -968,10 +968,10 @@ void GaspardTrackerSquare::ReadSensitive(const G4Event* event)
 
                 if (NTrackID == ETrackID) {
                    N = Nl ;
-                   ms_Event->SetGPDTrkFirstStageFrontEDetectorNbr(INDEX + N);
-                   ms_Event->SetGPDTrkFirstStageFrontTDetectorNbr(INDEX + N);
-                   ms_Event->SetGPDTrkFirstStageBackEDetectorNbr(INDEX + N);
-                   ms_Event->SetGPDTrkFirstStageBackTDetectorNbr(INDEX + N);
+                   ms_Event->SetGPDTrkFirstStageFrontEDetectorNbr(m_index["Square"] + N);
+                   ms_Event->SetGPDTrkFirstStageFrontTDetectorNbr(m_index["Square"] + N);
+                   ms_Event->SetGPDTrkFirstStageBackEDetectorNbr(m_index["Square"] + N);
+                   ms_Event->SetGPDTrkFirstStageBackTDetectorNbr(m_index["Square"] + N);
                 }
                 DetectorNumber_itr++;
             }
@@ -1082,8 +1082,8 @@ void GaspardTrackerSquare::ReadSensitive(const G4Event* event)
                      ms_Event->SetGPDTrkSecondStageEPadNbr(1);
                      ms_Event->SetGPDTrkSecondStageTPadNbr(1);
                      ms_Event->SetGPDTrkSecondStageTTime(1);
-                     ms_Event->SetGPDTrkSecondStageTDetectorNbr(INDEX + N);
-                     ms_Event->SetGPDTrkSecondStageEDetectorNbr(INDEX + N);
+                     ms_Event->SetGPDTrkSecondStageTDetectorNbr(m_index["Square"] + N);
+                     ms_Event->SetGPDTrkSecondStageEDetectorNbr(m_index["Square"] + N);
                   }
 
                   SiLiEnergy_itr++;
@@ -1100,8 +1100,8 @@ void GaspardTrackerSquare::ReadSensitive(const G4Event* event)
                      ms_Event->SetGPDTrkThirdStageEPadNbr(1);
                      ms_Event->SetGPDTrkThirdStageTPadNbr(1);
                      ms_Event->SetGPDTrkThirdStageTTime(1);
-                     ms_Event->SetGPDTrkThirdStageTDetectorNbr(INDEX + N);
-                     ms_Event->SetGPDTrkThirdStageEDetectorNbr(INDEX + N);
+                     ms_Event->SetGPDTrkThirdStageTDetectorNbr(m_index["Square"] + N);
+                     ms_Event->SetGPDTrkThirdStageEDetectorNbr(m_index["Square"] + N);
                   }
 
                   ThirdStageEnergy_itr++;
diff --git a/NPSimulation/src/GaspardTrackerTrapezoid.cc b/NPSimulation/src/GaspardTrackerTrapezoid.cc
index b5f91d1f6..f3911bff1 100644
--- a/NPSimulation/src/GaspardTrackerTrapezoid.cc
+++ b/NPSimulation/src/GaspardTrackerTrapezoid.cc
@@ -852,10 +852,10 @@ void GaspardTrackerTrapezoid::ReadSensitive(const G4Event* event)
 
                 if (NTrackID == ETrackID) {
                    N = Nl ;
-                   ms_Event->SetGPDTrkFirstStageFrontEDetectorNbr(INDEX + N);
-                   ms_Event->SetGPDTrkFirstStageFrontTDetectorNbr(INDEX + N);
-                   ms_Event->SetGPDTrkFirstStageBackEDetectorNbr(INDEX + N);
-                   ms_Event->SetGPDTrkFirstStageBackTDetectorNbr(INDEX + N);
+                   ms_Event->SetGPDTrkFirstStageFrontEDetectorNbr(m_index["Trapezoid"] + N);
+                   ms_Event->SetGPDTrkFirstStageFrontTDetectorNbr(m_index["Trapezoid"] + N);
+                   ms_Event->SetGPDTrkFirstStageBackEDetectorNbr(m_index["Trapezoid"] + N);
+                   ms_Event->SetGPDTrkFirstStageBackTDetectorNbr(m_index["Trapezoid"] + N);
                 }
                 DetectorNumber_itr++;
             }
@@ -968,8 +968,8 @@ void GaspardTrackerTrapezoid::ReadSensitive(const G4Event* event)
                      ms_Event->SetGPDTrkThirdStageEPadNbr(1);
                      ms_Event->SetGPDTrkThirdStageTPadNbr(1);
                      ms_Event->SetGPDTrkThirdStageTTime(1);
-                     ms_Event->SetGPDTrkThirdStageTDetectorNbr(INDEX + N);
-                     ms_Event->SetGPDTrkThirdStageEDetectorNbr(INDEX + N);
+                     ms_Event->SetGPDTrkThirdStageTDetectorNbr(m_index["Trapezoid"] + N);
+                     ms_Event->SetGPDTrkThirdStageEDetectorNbr(m_index["Trapezoid"] + N);
                   }
 
                   ThirdStageEnergy_itr++;
-- 
GitLab