Loaders

listmode.loaders.caen_loader(self, data_path)[source]

Reads data saved by Caen MCA. Caen data format does not record time and date of data taking, so these are calculated from the datafile modification timestamp.

In case there are several runs on single data (appended to same file) the results may be unpredictable. In the future all appends should be recognized and extracted as channel files, but only first one is loaded as data.

The loaded channel list is compared to one in cfg and if not matching an error is generated.

Caen loader supports two kinds of bitmask extra data: Pileup and flags. Flags is set whenever there the ‘extras’ data is nonzero. Pileup flag is set whenever the energy for the channel is zero, signaling a pileup event (unless set to return energy value).

Parameters
  • self – Calling Data instance. This is set when the loader is set as class method.

  • data_path – path to a file

Returns

listmode.loaders.dspec_loader(self, data_path)[source]
listmode.loaders.g4_loader(self, data_path)[source]
listmode.loaders.panda_loader(self, data_path)[source]

Reads PANDA data. Even though PANDA data is already reconstructed in event mode, it will still be broken down to channel files for the pipeline. PANDA clock is used for dead time and timing. DSSSD will be handled as two detectors with associated coordinate extra. Due to this and the capability of the multi-hit processor to combine data from several channels the DSSSD data will be strip calibrated when read from the raw file. If strip calibration needs to be redone later one has to make a dummy calibration to access the uncalibrated strip values.

If PANDA data is divided into several files, only one is converted and loaded. In this case either start_time, stop_time or both are undefined and will be calculated from data length and, in worst case, file modification time.

Parameters
  • self – Calling Data instance. This is set when the loader is set as class method.

  • data_path – path to a file

Returns

listmode.loaders.pixie4_loader(self, data_path)[source]