[Clas12_software] abstract detector classes
mikewood at jlab.org
mikewood at jlab.org
Thu Mar 22 13:06:18 EDT 2012
I mentioned at the software meeting today that we have developed some base
and abstract classes that can be used by others to develop their detector
software.
They are in the repository under PCAL reconstruction:
https://clas12svn.jlab.org/repos/trunk/clas12/PCAL_Reconstruction/src/
The idea is that anything with adc and tdc output can be applied.
We have the following base classes:
PMT.java - contains raw adc and tdc values
PMTcalib.java - contains converted adc and tdc values
Strip.java - contains the strip #, view, sector, layer, and sector info
DigitizedStrip.java - extends Strip.java with PMT.java info
CalibStrip.java - extends Strip.java with PMTcalib.java info
ReconStrip.java - extends Strip.java with everything in CalibStrip.java as
well as local coordinates
Most detectors have Strip info. If the detector is not segmented into
views and layers like PCAL and EC, then the view=1 and layer=1. However,
we do have regions and superlayers.
We also have abstract classes called Scintillator (at the time the
students only knew about scintillators). There are 3 abstract classes:
ScintillatorCalibration.java
ScintillatorGeometry.java
ScintillatorSector.java
These classes don't do anything (ie abstract), but they describe common
functions of all detector subsystems:
- read in calibration constants
- retrieve geometry info
- compute energy and time from adc and tdc.
With the abstract classes, you can create detector specific classes. We
have PCALgeomtery.java that has inside it the mysql calls to read from the
clas12_geometry db.
Feel free to use any or all as a template.
Mike
More information about the Clas12_software
mailing list