Reader for ILL .lst files.
This Class is used to read and write LST files in the root framework.
Definition at line 31 of file TLstFile.h.
Public Types | |
enum | EOpenType { EOpenType::kRead, EOpenType::kWrite } |
Public Member Functions | |
TLstFile () | |
TLstFile (const char *filename, TRawFile::EOpenType open_type=TRawFile::EOpenType::kRead) | |
~TLstFile () override | |
void | Close () override |
virtual size_t | GetBytesRead () |
virtual const char * | GetFilename () const |
virtual size_t | GetFileSize () |
virtual std::shared_ptr< TRawEvent > | GetOdbEvent () |
int | GetRunNumber () override |
int | GetSubRunNumber () override |
std::shared_ptr< TRawEvent > | NewEvent () override |
bool | Open (const char *filename) override |
int | Read (std::shared_ptr< TRawEvent > lstEvent) override |
void | Skip (size_t nofEvents) override |
std::string | Status (bool long_file_description=true) override |
Protected Attributes | |
size_t | fBytesRead {0} |
std::string | fFilename |
size_t | fFileSize {0} |
std::vector< char > | fReadBuffer |
Private Attributes | |
int32_t * | fBoardHeaders |
std::ifstream | fInputStream |
int32_t | fnbBoards |
int32_t | fnbEvents |
int32_t | fTimeBase |
int32_t | fVersion |
#include <TLstFile.h>
|
stronginherited |
Enumerator | |
---|---|
kRead | |
kWrite |
Definition at line 33 of file TRawFile.h.
TLstFile::TLstFile | ( | ) |
default constructor
Definition at line 32 of file TLstFile.cxx.
TLstFile::TLstFile | ( | const char * | filename, |
TRawFile::EOpenType | open_type = TRawFile::EOpenType::kRead |
||
) |
Definition at line 39 of file TLstFile.cxx.
References TRawFile::kRead, TRawFile::kWrite, and Open().
|
override |
|
overridevirtual |
Close input file.
Implements TRawFile.
Definition at line 137 of file TLstFile.cxx.
References fInputStream.
Referenced by ~TLstFile().
|
inlinevirtualinherited |
Definition at line 56 of file TRawFile.h.
References TRawFile::fBytesRead.
Referenced by TDataLoop::Iteration().
|
inlinevirtualinherited |
Get the name of this file.
Reimplemented in TMidasFile.
Definition at line 51 of file TRawFile.h.
References TRawFile::fFilename.
Referenced by Open(), TTdrFile::Open(), and TRlmdFile::Open().
|
inlinevirtualinherited |
Definition at line 57 of file TRawFile.h.
References TRawFile::fFileSize.
Referenced by TDataLoop::Iteration().
|
inlinevirtualinherited |
Reimplemented in TMidasFile.
Definition at line 60 of file TRawFile.h.
|
overridevirtual |
Implements TRawFile.
Definition at line 190 of file TLstFile.cxx.
References TRawFile::fFilename.
Referenced by Open().
|
overridevirtual |
|
inlineoverridevirtual |
Implements TRawFile.
Definition at line 53 of file TLstFile.h.
|
overridevirtual |
Open input file.
Open a lst .lst file with given file name.
Remote files can be accessed using these special file names:
Examples:
[in] | filename | The file to open. |
Implements TRawFile.
Definition at line 83 of file TLstFile.cxx.
References TRunInfo::ClearVersion(), fBoardHeaders, TRawFile::fFilename, TRawFile::fFileSize, fInputStream, fnbBoards, fnbEvents, TRawFile::fReadBuffer, fTimeBase, fVersion, TRawFile::GetFilename(), GetRunNumber(), GetSubRunNumber(), ILLDATA_RELEASE, READ_EVENT_SIZE, TRunInfo::SetDetectorInformation(), TChannel::SetMnemonicClass(), TRunInfo::SetRunInfo(), TRunInfo::SetRunLength(), and TRunInfo::SetVersion().
Referenced by TLstFile().
|
overridevirtual |
Read one event from the file.
[in] | Event | Pointer to an empty TLstEvent |
EDITED FROM THE ORIGINAL TO RETURN TOTAL SUCESSFULLY BYTES READ INSTEAD OF TRUE/FALSE, PCB
Implements TRawFile.
Definition at line 147 of file TLstFile.cxx.
References TLstEvent::Clear(), TRawFile::fBytesRead, TRawFile::fFileSize, fInputStream, TRawFile::fReadBuffer, fVersion, and READ_EVENT_SIZE.
|
overridevirtual |
|
overridevirtual |
Implements TRawFile.
Definition at line 56 of file TLstFile.cxx.
References TRawFile::fBytesRead, TRawFile::fFileSize, HIDE_CURSOR, and SHOW_CURSOR.
|
private |
Definition at line 60 of file TLstFile.h.
Referenced by Open(), and ~TLstFile().
|
protectedinherited |
Definition at line 69 of file TRawFile.h.
Referenced by TRlmdFile::Close(), TRawFile::GetBytesRead(), TRlmdFile::Open(), Read(), TTdrFile::Read(), TMidasFile::Read(), TRlmdFile::Read(), TTdrFile::Skip(), TMidasFile::Skip(), Status(), TTdrFile::Status(), and TMidasFile::Status().
|
protectedinherited |
name of the currently open file
Definition at line 65 of file TRawFile.h.
Referenced by TMidasFile::Close(), TRawFile::GetFilename(), TMidasFile::GetFilename(), GetRunNumber(), TTdrFile::GetRunNumber(), TMidasFile::GetRunNumber(), TRlmdFile::GetRunNumber(), TTdrFile::GetSubRunNumber(), TMidasFile::GetSubRunNumber(), Open(), TTdrFile::Open(), TMidasFile::Open(), and TRlmdFile::Open().
|
protectedinherited |
Definition at line 70 of file TRawFile.h.
Referenced by TRlmdFile::Close(), TRawFile::GetFileSize(), Open(), TMidasFile::Open(), TTdrFile::Open(), TRlmdFile::Open(), Read(), TTdrFile::Read(), TRlmdFile::Read(), TTdrFile::Skip(), Status(), TTdrFile::Status(), TMidasFile::Status(), and TRlmdFile::Status().
|
private |
Definition at line 61 of file TLstFile.h.
|
private |
Definition at line 59 of file TLstFile.h.
Referenced by Open().
|
private |
Definition at line 58 of file TLstFile.h.
Referenced by Open().
|
protectedinherited |
Definition at line 67 of file TRawFile.h.
Referenced by Open(), TTdrFile::Open(), Read(), TTdrFile::Read(), TMidasFile::Read(), TRlmdFile::Read(), TMidasFile::ReadMoreBytes(), and TMidasFile::Skip().
|
private |
Definition at line 57 of file TLstFile.h.
Referenced by Open().
|
private |
Definition at line 56 of file TLstFile.h.