From 6d43e73c7b649975d07c0dde64c1e06d4fe55e6d Mon Sep 17 00:00:00 2001
From: Nikiforos Nikiforou <Nikiforos.Nikiforou@cern.ch>
Date: Wed, 19 Aug 2015 11:38:06 +0000
Subject: [PATCH] Added variables to LayeredCalorimeterStruct/Layer in
 DetectorData.h

---
 DDRec/include/DDRec/DetectorData.h | 30 +++++++++++++++++++++++++++---
 doc/release.notes                  | 16 ++++++++++++++++
 2 files changed, 43 insertions(+), 3 deletions(-)

diff --git a/DDRec/include/DDRec/DetectorData.h b/DDRec/include/DDRec/DetectorData.h
index d8ce03fcc..7f65638e3 100644
--- a/DDRec/include/DDRec/DetectorData.h
+++ b/DDRec/include/DDRec/DetectorData.h
@@ -333,12 +333,36 @@ namespace DD4hep {
       
 
       struct Layer {
-	/// distance from Origin (or the z-axis)
+	/// distance from Origin (or the z-axis) to the inner-most face of the layer
 	double distance;
-	/// total thickness of the layer
+        
+	/// DEPRECATED: total thickness of the layer. Use inner/outer thicknesses instead
 	double thickness ;
-	/// thickness of the absorber part of the layer
+	
+        /// DEPRECATED: thickness of the absorber part of the layer. Use instead number of X0, lambdaI in and out
 	double absorberThickness ;
+        
+        ///Absorber material in front of sensitive element in the layer, units of radiation lengths
+        double inner_nRadiationLengths ;
+        ///Absorber material in front of sensitive element in the layer, units of radiation lengths
+        double inner_nInteractionLengths ;        
+        
+        ///Absorber material in behind of sensitive element in the layer, units of radiation lengths
+        double outer_nRadiationLengths ;
+        ///Absorber material in behind of sensitive element in the layer, units of radiation lengths
+        double outer_nInteractionLengths ; 
+        
+        ///Distance between the innermost face of the layer (closest to IP) and the center of the sensitive element
+        double inner_thickness;
+        
+        ///Distance between the center of the sensitive element and the outermost face of the layer
+        double outer_thickness;
+        
+        ///Thickness of the sensitive element (e.g. scintillator)
+        double sensitive_thickness;
+        
+        
+        
 	/// cell size along the first axis where first is either along the beam (BarrelLayout) or up (EndcapLayout) or the direction closest to that. 
 	double cellSize0 ;
 	/// second cell size, perpendicular to the first direction cellSize0 and the depth of the layers. 
diff --git a/doc/release.notes b/doc/release.notes
index 372668225..3308e9f20 100644
--- a/doc/release.notes
+++ b/doc/release.notes
@@ -3,6 +3,22 @@
 DD4hep  ----  Release Notes
 =================================
 
+2015-08-19 N.Nikiforou
+-----------------------
+ - DDRec/DetectorData.h: added new variables to LayeredCalorimeterStruct/Layer:
+   - inner_nRadiationLengths, inner_nInteractionLengths and inner_thickness : 
+     Number of Radiation Lengths, number of Interaction Lengths and thickness summing
+     up from innermost layer face (closest to the IP) up to the center of the 
+     sensitive element
+   - outer_nRadiationLengths, outer_nInteractionLengths and outer_thickness : 
+     Similarly, summing up from center of sensitive volume up to the outermost 
+     face of the layer
+   - sensitive_thickness: Thickness of sensitive element in layer
+   - The variables  "absorberThickness" and "thickness" are now DEPRECATED
+   - The variable "distance" is understood to contain the distance from the IP or
+     the Z axis to the innermost face of the layer. 
+
+
 2015-08-12 N.Nikiforou
 -----------------------
  - DDCore/XML: Added new helper functions to Layering engine:
-- 
GitLab