KaliVeda
Toolkit for HIC analysis
KVFzDataReader Class Reference

Detailed Description

Handle FAZIA protobuf-format raw data files.

Definition at line 22 of file KVFzDataReader.h.

#include <KVFzDataReader.h>

Inheritance diagram for KVFzDataReader:

Public Member Functions

 KVFzDataReader ()
 
 KVFzDataReader (const Char_t *filepath, Int_t bufSiz=16 *1024 *1024)
 
virtual ~KVFzDataReader ()
 
const DAQ::FzEvent & get_fazia_event () const
 
Int_t GetRunNumberReadFromFile () const
 
- Public Member Functions inherited from KVProtobufDataReader
 KVProtobufDataReader (const Char_t *filepath, Int_t bufSiz=16 *1024 *1024)
 
 KVProtobufDataReader (Int_t bufSiz=16 *1024 *1024)
 Create file reader of given buffer size, do not open any files yet. More...
 
virtual ~KVProtobufDataReader ()
 Destructor. More...
 
TString GetDataFormat () const
 
Bool_t GetNextEvent ()
 
Int_t GetRunNumberReadFromFile () const
 
- Public Member Functions inherited from KVRawDataReader
 KVRawDataReader ()
 Default constructor. More...
 
virtual ~KVRawDataReader ()
 Destructor. More...
 
const KVNameValueListGetRunInfos () const
 
virtual Int_t GetStatus () const
 
- Public Member Functions inherited from KVBase
 KVBase ()
 Default constructor. More...
 
 KVBase (const Char_t *name, const Char_t *title="")
 Ctor for object with given name and type. More...
 
 KVBase (const KVBase &)
 copy ctor More...
 
virtual ~ KVBase ()
 
virtual void Clear (Option_t *opt="")
 Clear object properties : name, type/title, number, label. More...
 
virtual void Copy (TObject &) const
 Make a copy of this object. More...
 
const Char_t * GetLabel () const
 
UInt_t GetNumber () const
 
UInt_t GetNumberOfObjects () const
 
virtual TObject * GetObject () const
 
virtual const Char_t * GetType () const
 
Bool_t HasLabel () const
 
virtual Bool_t IsCalled (const Char_t *name) const
 
Bool_t IsLabelled (const Char_t *l) const
 
virtual Bool_t IsType (const Char_t *typ) const
 
virtual void List ()
 
KVBaseoperator= (const KVBase &)
 copy assignment operator More...
 
virtual void Print (Option_t *option="") const
 
Double_t ProtectedGetX (const TF1 *func, Double_t val, int &status, Double_t xmin=0.0, Double_t xmax=0.0) const
 
void SetLabel (const Char_t *lab)
 
virtual void SetNumber (UInt_t num)
 
virtual void SetType (const Char_t *str)
 

Static Public Member Functions

static KVFzDataReaderOpen (const Char_t *filename, Option_t *opt="")
 
- Static Public Member Functions inherited from KVRawDataReader
static KVRawDataReaderOpenFile (const TString &type, const TString &filename)
 
- Static Public Member Functions inherited from KVBase
static Bool_t AreEqual (Double_t x, Double_t y, Long64_t maxdif=1)
 Comparison between two 64-bit floating-point values. More...
 
static void BackupFileWithDate (const Char_t *path)
 
static void CombineFiles (const Char_t *file1, const Char_t *file2, const Char_t *newfilename, Bool_t keep=kTRUE)
 
static void Deprecated (const char *method, const char *advice)
 
static Bool_t FindClassSourceFiles (const Char_t *class_name, KVString &imp_file, KVString &dec_file, const Char_t *dir_name=".")
 
static Bool_t FindExecutable (TString &exec, const Char_t *path="$(PATH)")
 
static const Char_t * FindFile (const Char_t *search, TString &wfil)
 
static const Char_t * GetBINDIRFilePath (const Char_t *namefile="")
 
static const Char_t * GetDATABASEFilePath ()
 
static const Char_t * GetDATADIRFilePath (const Char_t *namefile="")
 
static Bool_t GetDataSetEnv (const Char_t *dataset, const Char_t *type, Bool_t defval)
 
static const Char_t * GetDataSetEnv (const Char_t *dataset, const Char_t *type, const Char_t *defval)
 
static Double_t GetDataSetEnv (const Char_t *dataset, const Char_t *type, Double_t defval)
 
static const Char_t * GetETCDIRFilePath (const Char_t *namefile="")
 
static const Char_t * GetExampleFilePath (const Char_t *library, const Char_t *namefile)
 Return full path to example file for given library (="KVMultiDet", "BackTrack", etc.) More...
 
static const Char_t * GetINCDIRFilePath (const Char_t *namefile="")
 
static const Char_t * GetKVBuildDate ()
 Returns KaliVeda build date. More...
 
static const Char_t * GetKVBuildDir ()
 Returns top-level directory used for build. More...
 
static const Char_t * GetKVBuildTime ()
 Returns KaliVeda build time. More...
 
static const Char_t * GetKVBuildType ()
 Returns KaliVeda build type (cmake build: Release, Debug, RelWithDebInfo, ...) More...
 
static const Char_t * GetKVBuildUser ()
 Returns username of person who performed build. More...
 
static const Char_t * GetKVSourceDir ()
 Returns top-level directory of source tree used for build. More...
 
static const Char_t * GetKVVersion ()
 Returns KaliVeda version string. More...
 
static const Char_t * GetLIBDIRFilePath (const Char_t *namefile="")
 
static const Char_t * GetListOfPlugins (const Char_t *base)
 
static const Char_t * GetListOfPluginURIs (const Char_t *base)
 
static const Char_t * GetPluginURI (const Char_t *base, const Char_t *plugin)
 
static void GetTempFileName (TString &base)
 
static const Char_t * GetTEMPLATEDIRFilePath (const Char_t *namefile="")
 
static const Char_t * GetWORKDIRFilePath (const Char_t *namefile="")
 
static const Char_t * gitBranch ()
 Returns git branch of sources. More...
 
static const Char_t * gitCommit ()
 Returns last git commit of sources. More...
 
static void InitEnvironment ()
 
static bool is_gnuinstall ()
 
static Bool_t IsThisAPlugin (const TString &uri, TString &base)
 
static TPluginHandler * LoadPlugin (const Char_t *base, const Char_t *uri="0")
 
static Bool_t OpenContextMenu (const char *method, TObject *obj, const char *alt_method_name="")
 
static void OpenTempFile (TString &base, std::ofstream &fp)
 
static void PrintSplashScreen ()
 Prints welcome message and infos on version etc. More...
 
static Bool_t SearchAndOpenKVFile (const Char_t *name, KVSQLite::database &dbfile, const Char_t *kvsubdir="")
 
static Bool_t SearchAndOpenKVFile (const Char_t *name, std::ifstream &file, const Char_t *kvsubdir="", KVLockfile *locks=0)
 
static Bool_t SearchAndOpenKVFile (const Char_t *name, std::ofstream &file, const Char_t *kvsubdir="", KVLockfile *locks=0)
 
static Bool_t SearchKVFile (const Char_t *name, TString &fullpath, const Char_t *kvsubdir="")
 
static const Char_t * WorkingDirectory ()
 

Private Member Functions

bool parse_event_from_message ()
 
bool read_buffer ()
 if previous read reached the end of a file, we try to open the next file in the list More...
 

Private Attributes

std::unique_ptr< TIter > fFileListIterator
 iterator for file list More...
 
KVString fFullFilePath
 full path to files including "root:" etc. and "/run000000/" More...
 
std::unique_ptr< KVUniqueNameListfListOfFiles
 list of files for run More...
 
int run_number
 run number deduced from filename More...
 

Additional Inherited Members

- Public Types inherited from KVBase
enum  EKaliVedaBits { kIsKaliVedaObject = BIT(23) }
 

Constructor & Destructor Documentation

◆ KVFzDataReader() [1/2]

KVFzDataReader::KVFzDataReader ( )
inline

Definition at line 33 of file KVFzDataReader.h.

◆ KVFzDataReader() [2/2]

KVFzDataReader::KVFzDataReader ( const Char_t *  filepath,
Int_t  bufSiz = 16 * 1024 * 1024 
)

Open set of FAZIA DAQ files for reading. Filepath URL will be passed to TFile::Open therefore can use same plugins eg. "root://" etc. Note: buffer size given as Int_t, as this is argument type required by TFile::ReadBuffer

Definition at line 66 of file KVFzDataReader.cpp.

◆ ~KVFzDataReader()

virtual KVFzDataReader::~KVFzDataReader ( )
inlinevirtual

Definition at line 35 of file KVFzDataReader.h.

Member Function Documentation

◆ get_fazia_event()

const DAQ::FzEvent & KVFzDataReader::get_fazia_event ( ) const

Definition at line 120 of file KVFzDataReader.cpp.

◆ GetRunNumberReadFromFile()

Int_t KVFzDataReader::GetRunNumberReadFromFile ( ) const
inlinevirtual

Implements KVRawDataReader.

Definition at line 49 of file KVFzDataReader.h.

◆ Open()

KVFzDataReader * KVFzDataReader::Open ( const Char_t *  filename,
Option_t *  opt = "" 
)
static

Definition at line 129 of file KVFzDataReader.cpp.

◆ parse_event_from_message()

bool KVFzDataReader::parse_event_from_message ( )
privatevirtual

Implements KVProtobufDataReader.

Definition at line 26 of file KVFzDataReader.cpp.

◆ read_buffer()

bool KVFzDataReader::read_buffer ( )
privatevirtual

if previous read reached the end of a file, we try to open the next file in the list

Reimplemented from KVProtobufDataReader.

Definition at line 45 of file KVFzDataReader.cpp.

Member Data Documentation

◆ fFileListIterator

std::unique_ptr<TIter> KVFzDataReader::fFileListIterator
private

iterator for file list

Definition at line 25 of file KVFzDataReader.h.

◆ fFullFilePath

KVString KVFzDataReader::fFullFilePath
private

full path to files including "root:" etc. and "/run000000/"

Definition at line 26 of file KVFzDataReader.h.

◆ fListOfFiles

std::unique_ptr<KVUniqueNameList> KVFzDataReader::fListOfFiles
private

list of files for run

Definition at line 24 of file KVFzDataReader.h.

◆ run_number

int KVFzDataReader::run_number
private

run number deduced from filename

Definition at line 27 of file KVFzDataReader.h.