CbmRoot
Loading...
Searching...
No Matches
cbm::algo::DigiData Struct Reference

Collection of digis from all detector systems. More...

#include <DigiData.h>

Inheritance diagram for cbm::algo::DigiData:
[legend]

Public Member Functions

 DigiData ()
 
 ~DigiData ()
 
 DigiData (const CbmDigiData &storable)
 
size_t Size (ECbmModuleId system) const
 Get the number of digis for a given subsystem.
 
size_t TotalSize () const
 Get the total number of digis across all subsystems.
 
size_t TotalSizeBytes () const
 Get the total number of bytes used by all digis.
 
CbmDigiData ToStorable () const
 Convert to CbmDigiData for file storage.
 

Public Attributes

PODVector< CbmStsDigifSts
 Unpacked STS digis.
 
PODVector< CbmMuchDigifMuch
 Unpacked MUCH digis.
 
PODVector< CbmTofDigifTof
 Unpacked TOF digis.
 
PODVector< CbmBmonDigifBmon
 Unpacked Bmon digis.
 
PODVector< CbmTrdDigifTrd
 Unpacked TRD digis.
 
PODVector< CbmTrdDigifTrd2d
 Unpacked TRD2D digis.
 
PODVector< CbmRichDigifRich
 Unpacked RICH digis.
 
PODVector< CbmPsdDigifPsd
 Unpacked PSD digis.
 
PODVector< CbmFsdDigifFsd
 Unpacked FSD digis.
 

Detailed Description

Collection of digis from all detector systems.

Very similar to CbmDigiData. CbmDigiData is meant for file storage, while this is used for the actual processing. Seperate classes allow for more flexibility and easier optimization.

See also
CbmDigiData
Note
Uses PODVector for storage, so memory is not initialized by default.

Definition at line 31 of file DigiData.h.

Constructor & Destructor Documentation

◆ DigiData() [1/2]

DigiData::DigiData ( )

Definition at line 10 of file DigiData.cxx.

◆ ~DigiData()

DigiData::~DigiData ( )

Definition at line 12 of file DigiData.cxx.

◆ DigiData() [2/2]

DigiData::DigiData ( const CbmDigiData & storable)
explicit

Definition at line 14 of file DigiData.cxx.

Member Function Documentation

◆ Size()

size_t DigiData::Size ( ECbmModuleId system) const

Get the number of digis for a given subsystem.

Parameters
systemSubsystem to get the number of digis for
Todo
Should use fles::Subsystem instead ECbmModuleId

Definition at line 27 of file DigiData.cxx.

References fBmon, fFsd, fMuch, fPsd, fRich, fSts, fTof, fTrd, fTrd2d, kBmon, kFsd, kMuch, kPsd, kRich, kSts, kTof, kTrd, and kTrd2d.

Referenced by cbm::algo::evbuild::DigiEventSelector::operator()().

◆ ToStorable()

CbmDigiData DigiData::ToStorable ( ) const

Convert to CbmDigiData for file storage.

Note
This is a very expensive operation, as it copies all data.

Definition at line 56 of file DigiData.cxx.

References fBmon, fFsd, fMuch, fPsd, fRich, fSts, fTof, fTrd, fTrd2d, and cbm::algo::ToStdVector().

Referenced by CbmTaskUnpack::Exec(), and cbm::algo::DigiEvent::ToStorable().

◆ TotalSize()

size_t DigiData::TotalSize ( ) const

Get the total number of digis across all subsystems.

Definition at line 43 of file DigiData.cxx.

References fBmon, fFsd, fMuch, fPsd, fRich, fSts, fTof, fTrd, and fTrd2d.

◆ TotalSizeBytes()

size_t DigiData::TotalSizeBytes ( ) const

Get the total number of bytes used by all digis.

Definition at line 49 of file DigiData.cxx.

References fBmon, fFsd, fMuch, fPsd, fRich, fSts, fTof, fTrd, and fTrd2d.

Referenced by cbm::algo::evbuild::EventBuilder::operator()().

Member Data Documentation

◆ fBmon

◆ fFsd

◆ fMuch

◆ fPsd

◆ fRich

◆ fSts

◆ fTof

◆ fTrd

◆ fTrd2d


The documentation for this struct was generated from the following files: