BOSS 8.0.0
BESIII Offline Software System
Loading...
Searching...
No Matches
raw_ifstream Class Reference

#include <raw_ifstream.h>

Inheritance diagram for raw_ifstream:

Public Member Functions

std::string currentFile () const
void next_file ()
uint32_t runNo ()
 raw_ifstream (const std::vector< std::string > &fnames)
virtual ~raw_ifstream ()
FileStartRecordfileStartRecord ()
FileNameStringsfileNameStrings ()
RunParametersRecordrunParametersRecord ()
std::string currentFile () const
void next_file ()
uint32_t runNo ()
 raw_ifstream (const std::vector< std::string > &fnames)
virtual ~raw_ifstream ()
FileStartRecordfileStartRecord ()
FileNameStringsfileNameStrings ()
RunParametersRecordrunParametersRecord ()
std::string currentFile () const
void next_file ()
uint32_t runNo ()
 raw_ifstream (const std::vector< std::string > &fnames)
virtual ~raw_ifstream ()
FileStartRecordfileStartRecord ()
FileNameStringsfileNameStrings ()
RunParametersRecordrunParametersRecord ()

Static Public Member Functions

static raw_ifstreaminstance (const std::vector< std::string > &fnames)
static void release ()
static void lock ()
static void unlock ()
static raw_ifstreaminstance (const std::vector< std::string > &fnames)
static void release ()
static void lock ()
static void unlock ()
static raw_ifstreaminstance (const std::vector< std::string > &fnames)
static void release ()
static void lock ()
static void unlock ()

Detailed Description

Definition at line 12 of file Event/RawFile/include/RawFile/raw_ifstream.h.

Constructor & Destructor Documentation

◆ raw_ifstream() [1/3]

raw_ifstream::raw_ifstream ( const std::vector< std::string > & fnames)

Definition at line 43 of file raw_ifstream.cxx.

44 : m_isOpen( false ), m_fnames( fnames ) {
45 if ( m_fnames.empty() ) { throw RawExMessage( "[RawFile] Empty input file list!" ); }
46
47 m_curFile = m_fnames.begin();
48 init_fstream();
49}

Referenced by instance().

◆ ~raw_ifstream() [1/3]

raw_ifstream::~raw_ifstream ( )
virtual

Definition at line 51 of file raw_ifstream.cxx.

51{}

◆ raw_ifstream() [2/3]

raw_ifstream::raw_ifstream ( const std::vector< std::string > & fnames)

◆ ~raw_ifstream() [2/3]

virtual raw_ifstream::~raw_ifstream ( )
virtual

◆ raw_ifstream() [3/3]

raw_ifstream::raw_ifstream ( const std::vector< std::string > & fnames)

◆ ~raw_ifstream() [3/3]

virtual raw_ifstream::~raw_ifstream ( )
virtual

Member Function Documentation

◆ currentFile() [1/3]

std::string raw_ifstream::currentFile ( ) const
inline

Definition at line 26 of file Event/RawFile/include/RawFile/raw_ifstream.h.

26{ return *m_curFile; }

◆ currentFile() [2/3]

std::string raw_ifstream::currentFile ( ) const
inline

Definition at line 26 of file InstallArea/x86_64-el9-gcc13-dbg/include/RawFile/raw_ifstream.h.

26{ return *m_curFile; }

◆ currentFile() [3/3]

std::string raw_ifstream::currentFile ( ) const
inline

Definition at line 26 of file InstallArea/x86_64-el9-gcc13-opt/include/RawFile/raw_ifstream.h.

26{ return *m_curFile; }

◆ fileNameStrings() [1/3]

FileNameStrings & raw_ifstream::fileNameStrings ( )
inline

Definition at line 36 of file Event/RawFile/include/RawFile/raw_ifstream.h.

36{ return m_fileNameStrings; }

◆ fileNameStrings() [2/3]

FileNameStrings & raw_ifstream::fileNameStrings ( )
inline

Definition at line 36 of file InstallArea/x86_64-el9-gcc13-dbg/include/RawFile/raw_ifstream.h.

36{ return m_fileNameStrings; }

◆ fileNameStrings() [3/3]

FileNameStrings & raw_ifstream::fileNameStrings ( )
inline

Definition at line 36 of file InstallArea/x86_64-el9-gcc13-opt/include/RawFile/raw_ifstream.h.

36{ return m_fileNameStrings; }

◆ fileStartRecord() [1/3]

FileStartRecord & raw_ifstream::fileStartRecord ( )
inline

Definition at line 35 of file Event/RawFile/include/RawFile/raw_ifstream.h.

35{ return m_fileStartRecord; }

◆ fileStartRecord() [2/3]

FileStartRecord & raw_ifstream::fileStartRecord ( )
inline

Definition at line 35 of file InstallArea/x86_64-el9-gcc13-dbg/include/RawFile/raw_ifstream.h.

35{ return m_fileStartRecord; }

◆ fileStartRecord() [3/3]

FileStartRecord & raw_ifstream::fileStartRecord ( )
inline

Definition at line 35 of file InstallArea/x86_64-el9-gcc13-opt/include/RawFile/raw_ifstream.h.

35{ return m_fileStartRecord; }

◆ instance() [1/3]

raw_ifstream * raw_ifstream::instance ( const std::vector< std::string > & fnames)
static

Definition at line 14 of file raw_ifstream.cxx.

14 {
15 lock();
16
17 if ( _instance == 0 ) { _instance = new raw_ifstream( fnames ); }
18
19 ++_nHandler;
20
21 unlock();
22
23 return _instance;
24}
raw_ifstream(const std::vector< std::string > &fnames)

Referenced by RawFileReader::RawFileReader(), RawFileReader::RawFileReader(), RawFileReader::RawFileReader(), and RawFileReader::RawFileReader().

◆ instance() [2/3]

raw_ifstream * raw_ifstream::instance ( const std::vector< std::string > & fnames)
static

◆ instance() [3/3]

raw_ifstream * raw_ifstream::instance ( const std::vector< std::string > & fnames)
static

◆ lock() [1/3]

void raw_ifstream::lock ( )
inlinestatic

Definition at line 17 of file Event/RawFile/include/RawFile/raw_ifstream.h.

17 {
18 int lstat = pthread_mutex_lock( &_pthread_lock );
19 assert( lstat == 0 );
20 };

Referenced by instance(), RawFileReader::nextEvent(), and release().

◆ lock() [2/3]

void raw_ifstream::lock ( )
inlinestatic

Definition at line 17 of file InstallArea/x86_64-el9-gcc13-dbg/include/RawFile/raw_ifstream.h.

17 {
18 int lstat = pthread_mutex_lock( &_pthread_lock );
19 assert( lstat == 0 );
20 };

◆ lock() [3/3]

void raw_ifstream::lock ( )
inlinestatic

Definition at line 17 of file InstallArea/x86_64-el9-gcc13-opt/include/RawFile/raw_ifstream.h.

17 {
18 int lstat = pthread_mutex_lock( &_pthread_lock );
19 assert( lstat == 0 );
20 };

◆ next_file() [1/3]

void raw_ifstream::next_file ( )

Definition at line 53 of file raw_ifstream.cxx.

53 {
54 std::cout << "[RawFile] Closing: " << *m_curFile << std::endl;
55 close();
56 m_isOpen = false;
57
58 if ( ++m_curFile == m_fnames.end() )
59 {
60 --m_curFile;
61 throw ReachEndOfFileList();
62 }
63
64 init_fstream();
65}

◆ next_file() [2/3]

void raw_ifstream::next_file ( )

◆ next_file() [3/3]

void raw_ifstream::next_file ( )

◆ release() [1/3]

void raw_ifstream::release ( )
static

Definition at line 26 of file raw_ifstream.cxx.

26 {
27 lock();
28
29 if ( _nHandler > 0 && --_nHandler == 0 )
30 {
31 if ( _instance->m_isOpen )
32 {
33 std::cout << "[RawFile] Closing: " << *( _instance->m_curFile ) << std::endl;
34 _instance->close();
35 }
36 delete _instance;
37 _instance = 0;
38 }
39
40 unlock();
41}

Referenced by RawFileReader::~RawFileReader().

◆ release() [2/3]

void raw_ifstream::release ( )
static

◆ release() [3/3]

void raw_ifstream::release ( )
static

◆ runNo() [1/3]

uint32_t raw_ifstream::runNo ( )

Definition at line 67 of file raw_ifstream.cxx.

67{ return m_runParametersRecord.getRecord().run_number; }

◆ runNo() [2/3]

uint32_t raw_ifstream::runNo ( )

◆ runNo() [3/3]

uint32_t raw_ifstream::runNo ( )

◆ runParametersRecord() [1/3]

RunParametersRecord & raw_ifstream::runParametersRecord ( )
inline

Definition at line 37 of file Event/RawFile/include/RawFile/raw_ifstream.h.

37{ return m_runParametersRecord; }

◆ runParametersRecord() [2/3]

RunParametersRecord & raw_ifstream::runParametersRecord ( )
inline

Definition at line 37 of file InstallArea/x86_64-el9-gcc13-dbg/include/RawFile/raw_ifstream.h.

37{ return m_runParametersRecord; }

◆ runParametersRecord() [3/3]

RunParametersRecord & raw_ifstream::runParametersRecord ( )
inline

Definition at line 37 of file InstallArea/x86_64-el9-gcc13-opt/include/RawFile/raw_ifstream.h.

37{ return m_runParametersRecord; }

◆ unlock() [1/3]

void raw_ifstream::unlock ( )
inlinestatic

Definition at line 21 of file Event/RawFile/include/RawFile/raw_ifstream.h.

21 {
22 int lstat = pthread_mutex_unlock( &_pthread_lock );
23 assert( lstat == 0 );
24 };

Referenced by instance(), RawFileReader::nextEvent(), and release().

◆ unlock() [2/3]

void raw_ifstream::unlock ( )
inlinestatic

Definition at line 21 of file InstallArea/x86_64-el9-gcc13-dbg/include/RawFile/raw_ifstream.h.

21 {
22 int lstat = pthread_mutex_unlock( &_pthread_lock );
23 assert( lstat == 0 );
24 };

◆ unlock() [3/3]

void raw_ifstream::unlock ( )
inlinestatic

Definition at line 21 of file InstallArea/x86_64-el9-gcc13-opt/include/RawFile/raw_ifstream.h.

21 {
22 int lstat = pthread_mutex_unlock( &_pthread_lock );
23 assert( lstat == 0 );
24 };

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