- Jan 30, 2019
-
-
Whitney Armstrong authored
- Each detector should override ManualInitTree(TTree*) - This method should be used to add branches to the tree - These branches should be data members of the detector.
-
- Jan 28, 2019
-
-
Whitney Armstrong authored
-
- Jan 21, 2019
-
-
Whitney Armstrong authored
-
- Jan 20, 2019
-
-
Whitney Armstrong authored
Logger is used almost everywhere.
-
Whitney Armstrong authored
-
Whitney Armstrong authored
modified: Dockerfile modified: ../../src/CMakeLists.txt
-
Whitney Armstrong authored
-
Whitney Armstrong authored
- Lots of additional logging after moving spdlog out of project - The loggers are mostly defined in the header `analyzer/include/podd2/Logger.h` - Next step is to add file logging and to set good defaults - The spdlog severity level (in order of importance) are: - critical - error - warn - info - debug - trace modified: THcHallCSpectrometer.cxx modified: THcHallCSpectrometer.h modified: THcPrimaryKine.cxx modified: THcSecondaryKine.cxx modified: THcTrigDet.cxx
-
Whitney Armstrong authored
- removed spdlog ( now in analyzer) - added logging to THaAnalzyer (podd)
-
- Jan 07, 2019
-
-
Mark Jones authored
In THcScalerEvtHandler::AnalyzeBuffer there is a loop over the scalers to keep track of scalers with a cut on the current. There was a mistake in using scal_prev_read[nscal-1] instead of dvars_prev_read[ivar] in the IF statement.
-
Ole Hansen authored
fGoodFlags holds event-by-event data, but was never cleared, eventually growing to several hundred megabytes in a long analysis. The effciency calculations in THcHodoEff that rely on the contents of fGoodFlags have been most certainly garbage up to now. I've replaced the event-by-event ClearEvent() method with the standard virtual function Clear() and have added fGoodFlags.clear() there. Also, I've added assertions to the hodoscope code to check the validity of some non-obvious array indices. Nothing triggers; the index logic appears sound (despite its appearance ...)
-
Ole Hansen authored
This includes a particularly nasty leak in the shower code that caused several hundred bytes to be lost _per event_.
-
- Jan 06, 2019
-
-
Ole Hansen authored
-
- Dec 20, 2018
-
-
Whitney Armstrong authored
-
- Dec 19, 2018
-
-
Ole Hansen authored
Currently both CMake and SCons build not only libPodd, but also libHallA, even though it is not required for hcana. hcana is linked only against libPodd, however, so libHallA is simply a spurious byproduct.
-
Whitney Armstrong authored
-
- Dec 17, 2018
-
-
Whitney Armstrong authored
These are mostly wrappers around stl algorithms. new file: include/hcana/helpers.hxx
-
Whitney Armstrong authored
-
- Dec 15, 2018
-
-
Whitney Armstrong authored
-
Whitney Armstrong authored
- Mixins defined in Logger.h - Mixin used in base classes (THcDC is currently a good example) Added a few more spdlog loggers Added logging to many. - Added logging to hodoscope, aerogel hitlist and detectormap - Working on scandalizer features. Added logging. Added more logging. added more logging. More logging.
-
- Dec 12, 2018
-
-
Whitney Armstrong authored
-
- Dec 11, 2018
-
-
Whitney Armstrong authored
-
Whitney Armstrong authored
-
Whitney Armstrong authored
-
Whitney Armstrong authored
-
Whitney Armstrong authored
- Added logging to hodoscope, aerogel hitlist and detectormap - Working on scandalizer features.
-
Whitney Armstrong authored
-
Whitney Armstrong authored
- Mixins defined in Logger.h - Mixin used in base classes (THcDC is currently a good example)
-
Whitney Armstrong authored
- added default DB_DIR - Fixed Scandalizer due to change in codaversion -> dataversion
-
- Dec 10, 2018
-
-
Whitney Armstrong authored
-
- Nov 28, 2018
-
-
Stephen A. Wood authored
-
- Nov 20, 2018
-
-
Mark Jones authored
Modify THcAerogel::CoarseProcess For each PMT, fGoodPosAdcMult.at(npmt) was being set to the total number of positive PMTs with an adc hit and fGoodNegAdcMult.at(npmt) was being set to the total number of negative PMTs with an adc hit. To be like the other dectectors make fGoodPosAdcMult.at(npmt) and GoodNegAdcMult.at(npmt) be the number of adc hits for that particular PMT.
-
- Nov 19, 2018
-
-
Whitney Armstrong authored
-
Stephen A. Wood authored
For KaonLT, the kPulsePedestal values being returned for the helicity signal channels was 0 and 16380. For SIDIS, the values for off and on are ~2000 and ~1400. Made the default threshold 8000 instead of 1000. Also added an optional parameter, "helicity_fadcthreshold" so that this threshold can be changed at run time.
-
- Nov 09, 2018
-
-
Stephen A. Wood authored
Undoes delayed helicity reporting by learning seed of pseudo random sequence used by injector helicity electronics. This detector class should be added to the Trigger apparatus. Delivers the global variables "hel" and "helrep". "helrep" is the reported delayed helicity and "hel" is the actual helicity. + and - helicity are reported as +1 and -1. If the event is during a MPS settling period, then the helicity variables are zero. For the first few seconds of a run, the "hel" variable will be zero as the pseudo random sequence seed has not been determined. (If the trigger class is "T" and this detector is called "helicity", then these variables will be T.helicity.hel and T.helicity.helrep. By default, it is assumed that there is delayed reporting of 8 cycles and that Quartets are used. If delayed helicity reporting is not in use, then set the parameter "helicity_delay" to zero.
-
Stephen A. Wood authored
These signals are plus and minus signals, the MPS indicator, and the start of quartet indicator. The time from the TI (with overflow detection) is also retrieved as this is needed when dealing with delayed helicity reporting. The helicity signals are in FADC250 channels. The roc/slot/channel assignments for these signals are currently hardwired into the code.
-
- Nov 06, 2018
-
-
Mark Jones authored
Add the tree variable goodAdcMult which is the number of raw ADC pulses in an ADC channel per event for a given shower array block.
-
- Nov 01, 2018
-
-
Mark Jones authored
1) Read-in of the trigger reference time cuts was in ReadDatabase method when it should be in Init method. Moved to the Init method before call to InitHitList where the reference cuts are used. 2) Modified the selection of the good TDC hit for filling the TdcTimeRaw and TdcTime. Previosly used the TdcTime but not picks the TDC hit with the TdcTimeRaw that is within the time min and max windows that can be set by parameters. Default windows are min=0 and max=10000. If two hits in the time window then selects last hit within window. If not hits within time window then TdcTimeRaw=0 and TdcTime=0. The TdcMultiplicity is always filled.
-
Mark Jones authored
1) Read-in of the trigger reference time cuts was in ReadDatabase method when it should be in Init method. Moved to the Init method before call to InitHitList where the reference cuts are used. 2) Modified the selection of the good TDC hit for filling the TdcTimeRaw and TdcTime. Previosly used the TdcTime but not picks the TDC hit with the TdcTimeRaw that is within the time min and max windows that can be set by parameters. Default windows are min=0 and max=10000. If two hits in the time window then selects last hit within window. If not hits within time window then TdcTimeRaw=0 and TdcTime=0. The TdcMultiplicity is always filled.
-
- Oct 22, 2018
-
-
Mark Jones authored
1) THcTrigDet a) Modify code to use string vector fTrigNames to identify which of the trigger trigger detector TDC signals to use for coincidence timing. This replaces the hard-coded names. The integer array fTrigId[4] keeps track of the array ID in the overall fTDcNames vector that goes with the fTrigNames[4] b) The fTrigNames must be in order of SHMS ROC1, HMS ROC1, SHMS ROC2 and HMS ROC2. c) Default names are "pTRIG1_ROC1","pTRIG4_ROC1","pTRIG1_ROC2","pTRIG4_ROC2" The parameter is t_coin_trigNames For example: t_coin_trigNames="pTRIG1_ROC1 pTRIG4_ROC1 pTRIG1_ROC2 pTRIG4_ROC2" This parameter is read-in and the split into a string vector fTrigNames. d) In HcTrigDet::ReadDatabase , all members of fTrigID array are set to -1 then a loop over all Tdc in the trigger detector looks for match between fTdcNames amd fTrigNames to set fTrigId. If match not found the fTrigId = -1. e) In THcTrigDet.h made new method Get_CT_TrigTime(Int_t ii) to be used in in THcCoinTime to get the 4 trigger times: SHMS ROC1 (ii=0), HMS ROC1 (ii=1), SHMS ROC2 (ii=2) and HMS ROC2 (ii=3). If fTrigId[ii]=0 then it returns 0 otherwise returns fTdcTime[fTrigID[ii]]. 2) THcCoinTime a) Previously used the raw trigger times and had a hard-coded 0.1 ns/channel conversion. Now use the trigger times which already are in ns using the ns/channel conversion set in the TrigDet. b) Now use the new TrgiDet method Get_CT_TrigTime(ii) to get the trigger times for SHMS ROC1, HMS ROC1, SHMS ROC2 and HMS ROC2.
-