Commit in lcdd/include on MAIN
G4CalorimeterSD.hh+18-21.12 -> 1.13
G4OpticalCalorimeterSD.hh+10-21.1 -> 1.2
+28-4
2 modified files
apply changes to make multiple Hit collections per Sensitive detector possible

lcdd/include
G4CalorimeterSD.hh 1.12 -> 1.13
diff -u -r1.12 -r1.13
--- G4CalorimeterSD.hh	12 Jul 2007 23:48:37 -0000	1.12
+++ G4CalorimeterSD.hh	10 Dec 2007 17:26:35 -0000	1.13
@@ -28,6 +28,14 @@
 		  G4Segmentation* sdSeg,
 		  HitComparator* compare = 0);
 
+  G4CalorimeterSD(G4String sdName,
+		      G4String hcName[],
+                      G4int NrofHC,
+		  G4Segmentation* sdSeg,
+		  HitComparator* compare = 0);
+		   
+
+
   virtual ~G4CalorimeterSD();
 
 public:
@@ -40,24 +48,32 @@
   G4Segmentation* getSegmentation() const;
 
   G4CalorimeterHit* findHit(G4CalorimeterHit* aHit) const;
+  G4CalorimeterHit* findHit(G4CalorimeterHit* aHit,G4int nHC) const;
 
   std::ostream& printHits(std::ostream& os);
 
   void clearHits();
+  void clearHits(G4int nHC);
+  void clearallHits();
 
   virtual std::ostream& printBasicInfo(std::ostream& os);
 
   virtual double getEdep() const;
+  virtual double getEdep(G4int nHC) const;
+
+  G4CalorimeterHitList getCalorimeterHitList(); 
+  G4CalorimeterHitList getCalorimeterHitList(G4int nHC);
 
-  G4CalorimeterHitList getCalorimeterHitList();
 
 protected:
   virtual G4bool ProcessHits(G4Step*, G4TouchableHistory*);
 
 protected:
   G4Segmentation* m_segmentation;
-  G4CalorimeterHitsCollection* m_HC;
+  G4CalorimeterHitsCollection* m_collection;
+  std::vector< G4CalorimeterHitsCollection*> HC_vector;
   G4CalorimeterHitList m_hits;
+  std::vector<  G4CalorimeterHitList  > hits_vector;
   HitComparator* m_hitCompare;
 };
 

lcdd/include
G4OpticalCalorimeterSD.hh 1.1 -> 1.2
diff -u -r1.1 -r1.2
--- G4OpticalCalorimeterSD.hh	5 Jul 2007 22:27:35 -0000	1.1
+++ G4OpticalCalorimeterSD.hh	10 Dec 2007 17:26:35 -0000	1.2
@@ -12,16 +12,24 @@
 {
 
 public: 
+//enum for the two Hit Collections (cerenkov and edep):
+  enum HCType { eCerenkov=0, eEdep=1};
+
   G4OpticalCalorimeterSD(G4String sdName,
 		  G4String hcName,
 		  G4Segmentation* sdSeg,
 		  HitComparator* compare = 0);
 
+ G4OpticalCalorimeterSD(G4String sdName,
+		  G4String hcName[],
+                  G4int NrofReadouts,    
+		  G4Segmentation* sdSeg,
+		  HitComparator* compare = 0);
+
   virtual ~G4OpticalCalorimeterSD();
 
 protected:
-  virtual G4bool ProcessHits(G4Step*, G4TouchableHistory*); 
-
+  virtual G4bool ProcessHits(G4Step*, G4TouchableHistory*);
 }; 
 
 #endif
CVSspam 0.2.8