GeomConverter/src/org/lcsim/detector
diff -u -r1.4 -r1.5
--- DetectorIdentifierHelper.java 11 Dec 2007 07:27:48 -0000 1.4
+++ DetectorIdentifierHelper.java 2 Jul 2008 21:28:34 -0000 1.5
@@ -39,6 +39,10 @@
* </ul>
* </p>
*
+ * <p>
+ * Every DetectorIdentifierHelper is associated with a single subdetector, such as the Hcal Barrel.
+ * </p>
+ *
* @author Jeremy McCormick <[log in to unmask]>
*/
public class DetectorIdentifierHelper
@@ -134,6 +138,9 @@
IIdentifier lumiId;
IIdentifier lumiEndcapPositiveId;
IIdentifier lumiEndcapNegativeId;
+
+ private IDetectorElement subdetectorDetectorElement = null;
+ private int subdetectorSystemNumber = -1;
// LDC si tracking...
// inner = sit
@@ -292,7 +299,10 @@
}
// Public ctor.
- public DetectorIdentifierHelper(IIdentifierDictionary dict, SystemMap systemMap)
+ public DetectorIdentifierHelper(
+ IDetectorElement subdetectorDetectorElement,
+ IIdentifierDictionary dict,
+ SystemMap systemMap)
{
super(dict);
try {
@@ -302,6 +312,12 @@
{
throw new RuntimeException(x);
}
+
+ // Make association to a subdetector's DetectorElement.
+ this.subdetectorDetectorElement = subdetectorDetectorElement;
+
+ // Make assocation to a subdetector's system value.
+ this.subdetectorSystemNumber = this.getSystemValue(this.subdetectorDetectorElement.getIdentifier());
}
private IIdentifier makeSubsysId(int system)
@@ -842,4 +858,19 @@
{
return invalidIndex;
}
-}
+
+ public String getSubdetectorName()
+ {
+ return subdetectorDetectorElement.getName();
+ }
+
+ public int getSubdetectorSystemNumber()
+ {
+ return subdetectorSystemNumber;
+ }
+
+ public IDetectorElement getSubdetectorDetectorElement()
+ {
+ return subdetectorDetectorElement;
+ }
+}
\ No newline at end of file
GeomConverter/src/org/lcsim/detector/converter/compact
diff -u -r1.5 -r1.6
--- AbstractSubdetectorConverter.java 11 Dec 2007 07:27:50 -0000 1.5
+++ AbstractSubdetectorConverter.java 2 Jul 2008 21:28:34 -0000 1.6
@@ -23,7 +23,7 @@
* some utilities and default method implementations for Subdetector conversion.
*
* @author Jeremy McCormick
- * @version $Id: AbstractSubdetectorConverter.java,v 1.5 2007/12/11 07:27:50 jeremy Exp $
+ * @version $Id: AbstractSubdetectorConverter.java,v 1.6 2008/07/02 21:28:34 jeremy Exp $
*/
public abstract class AbstractSubdetectorConverter implements ISubdetectorConverter
@@ -70,7 +70,7 @@
if (iddict.hasField("system") && iddict.hasField("barrel"))
{
- helper = new DetectorIdentifierHelper(iddict, systemMap);
+ helper = new DetectorIdentifierHelper(subdetector.getDetectorElement(), iddict, systemMap);
}
else
{