JeffersonLab / analyzer

HallA C++ Analyzer
BSD 3-Clause "New" or "Revised" License
7 stars 54 forks source link

THaEtClient Fix #190

Open Mrc1104 opened 2 months ago

Mrc1104 commented 2 months ago

Fix for the THaETClass by porting Bryan Moffit's et_consumer example into the class.

Issue

The current THaEtClient class is non-functional.

Fix

Bryan Moffit's example utilizes two additional structures:

all of which were brought into THaEtClient as private members. These members abstract away the core functionality of THaEtClient::codaRead(...). They correctly obtain multi-event chunks from the ET system, return single events to the user (analogous behavior to the THaCodaFile class), and return the multi-event chunk once all events have been used.

Testing

This port was tested with japan-MOLLER, using a simple software-based CODA setup. A Hall A analyzer test setup is not available for a direct testing, but japan-MOLLER and Podd should be identical in their use of THaEtClient as a wrapper to the ET library.

@hansenjo