6 #ifndef H_POTTU_JYFL_NUCSPEC_DETECTORS
7 #define H_POTTU_JYFL_NUCSPEC_DETECTORS
23 namespace jyfl_nucspec_std_detectors_2023_03 {
89 void clear() noexcept {
128 std::vector<pottu::DetectorEvent> strips;
130 void clear() noexcept {
163 void clear() noexcept {
166 detLogic.markInvalid();
192 void clear() noexcept {
226 float x{ std::numeric_limits<float>::quiet_NaN() };
228 float y{ std::numeric_limits<float>::quiet_NaN() };
230 void clear() noexcept {
234 detLogic.markInvalid();
235 x = std::numeric_limits<float>::quiet_NaN();
236 y = std::numeric_limits<float>::quiet_NaN();
283 std::vector<pottu::DetectorEvent> beges;
284 std::vector<pottu::DetectorEvent> clovers;
285 std::vector<GeEvent> gammas;
287 void clear() noexcept {
299 void fillGammas(
bool doCloverAddback =
true, int64_t cloverAddbackDuration = 10 ) noexcept;
317 std::vector<pottu::DetectorEvent> planarx;
318 std::vector<pottu::DetectorEvent> planary;
319 std::vector<pottu::DetectorEvent> clovers;
320 std::vector<GeEvent> gammas;
322 void clear() noexcept {
335 void fillGammas(
bool doCloverAddback =
true, int64_t cloverAddbackDuration = 10 ) noexcept;
350 std::vector<pottu::DetectorEvent> events;
352 void clear() noexcept {
376 std::vector<pottu::DetectorEvent> xbars;
377 std::vector<pottu::DetectorEvent> ybars;
379 void clear() noexcept {
408 std::vector<pottu::DetectorEvent> events;
410 void clear() noexcept {
423 std::vector<pottu::DetectorEvent> ph1s;
424 std::vector<pottu::DetectorEvent> clovers;
425 std::vector<GeEvent> gammas;
427 void clear() noexcept {
442 void fillGammas( int64_t cloverAddbackDuration,
double beta ) noexcept;
453 std::vector<pottu::DetectorEvent> ph1s;
454 std::vector<GeEvent> gammas;
456 void clear() noexcept {
484 std::vector<pottu::DetectorEvent> elements;
486 void clear() noexcept {
498 return det.coord<92 ?
jytubeRing[det.coord] : -1;
Event containing event information of one daq channel.
Definition: DetectorEvent.hpp:47
DSSD information of the logical event.
Definition: jyfl_nucspec_detectors.hpp:110
const float jg1Ph1Theta[45]
Jurogam1 Phase 1 theta angles in degrees.
Definition: jyfl_nucspec_detectors.cpp:56
const uint8_t jg1Ph1Ring[45]
Jurogam1 Phase 1 ring numbers (values 1 and 2). Ring 1 is the most backward ring.
Definition: jyfl_nucspec_detectors.cpp:48
const float jgCloverTheta[96]
Jurogam3 Clover theta angles in degrees.
Definition: jyfl_nucspec_detectors.cpp:86
const float fpBegeTheta[3]
Focal plane BEGe theta angles. CURRENTLY JUST ZEROS!
Definition: jyfl_nucspec_detectors.cpp:17
const float fpBegePhi[3]
Focal plane BEGe phi angles. CURRENTLY JUST ZEROS!
Definition: jyfl_nucspec_detectors.cpp:18
const float fpCloverPhi[3]
Focal plane Clover phi angles. CURRENTLY JUST ZEROS!
Definition: jyfl_nucspec_detectors.cpp:22
const float jgPh1Theta[15]
Jurogam3 Phase 1 theta angles in degrees.
Definition: jyfl_nucspec_detectors.cpp:42
const float jg1Ph1Phi[45]
Jurogam1 Phase 1 phi angles in degrees.
Definition: jyfl_nucspec_detectors.cpp:64
const uint8_t jgCloverRing[96]
Jurogam3 Clover ring numbers (values 3,...,6). Ring 6 is the most forward ring.
Definition: jyfl_nucspec_detectors.cpp:75
const uint8_t jgPh1Ring[15]
Jurogam3 Phase 1 ring numbers (values 1 and 2). Ring 1 is the most backward ring.
Definition: jyfl_nucspec_detectors.cpp:38
const uint8_t fpCloverRing[4]
Focal plane clover ring number. All values are zero.
Definition: jyfl_nucspec_detectors.cpp:20
const uint8_t fpBegeRing[3]
Focal plane BEGe ring number. All values are zero.
Definition: jyfl_nucspec_detectors.cpp:16
const float jgCloverPhi[96]
Jurogam3 clover phi angles in degrees. CURRENTLY JUST ZEROS!
Definition: jyfl_nucspec_detectors.cpp:97
const uint32_t jytubeRing[92]
TODO.
Definition: jyfl_nucspec_detectors.cpp:25
const float fpCloverTheta[3]
Focal plane Clover theta angles. CURRENTLY JUST ZEROS!
Definition: jyfl_nucspec_detectors.cpp:21
const float jgPh1Phi[15]
Jurogam3 Phase 1 phi angles in degrees. CURRENTLY JUST ZEROS!
Definition: jyfl_nucspec_detectors.cpp:45
Definition: mainpage.dox:6
Box detector information.
Definition: jyfl_nucspec_detectors.hpp:407
Class to hold gamma events seen at the focal plane.
Definition: jyfl_nucspec_detectors.hpp:282
void fillGammas(bool doCloverAddback=true, int64_t cloverAddbackDuration=10) noexcept
Generates gammas from beges and clovers.
Definition: jyfl_nucspec_detectors.cpp:102
Germanium event used for all germaniums (Jurogam and focal plane).
Definition: jyfl_nucspec_detectors.hpp:250
Class to hold gamma events seen at the focal plane.
Definition: jyfl_nucspec_detectors.hpp:316
void fillGammas(bool doCloverAddback=true, int64_t cloverAddbackDuration=10) noexcept
Generates gammas from beges and clovers.
Definition: jyfl_nucspec_detectors.cpp:183
MWPC information of the logical event.
Definition: jyfl_nucspec_detectors.hpp:185
JYTube information.
Definition: jyfl_nucspec_detectors.hpp:480
static int8_t getRing(const DetectorEvent &det) noexcept
Returns ring number for JYTube element.
Definition: jyfl_nucspec_detectors.hpp:497
Jurogam1Info.
Definition: jyfl_nucspec_detectors.hpp:452
void fillGammas(double beta) noexcept
Generates gammas from ph1 events.
Definition: jyfl_nucspec_detectors.cpp:396
Jurogam3Info.
Definition: jyfl_nucspec_detectors.hpp:422
void fillGammas(int64_t cloverAddbackDuration, double beta) noexcept
Generates gammas from ph1 and clover detector events.
Definition: jyfl_nucspec_detectors.cpp:317
MWPC information of the logical event V2305.
Definition: jyfl_nucspec_detectors.hpp:219
MWPC information of the logical event.
Definition: jyfl_nucspec_detectors.hpp:158
Punch Through information of the logical event.
Definition: jyfl_nucspec_detectors.hpp:349
Information about TAC events.
Definition: jyfl_nucspec_detectors.hpp:87
Tuike information.
Definition: jyfl_nucspec_detectors.hpp:363
void fillFields() noexcept
Fills the values to all other fields based on events in xbars and ybars.
Definition: jyfl_nucspec_detectors.cpp:265