BOSS
7.1.3
BESIII Offline Software System
Toggle main menu visibility
Main Page
Related Pages
Namespaces
Namespace List
Namespace Members
All
_
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
r
s
t
u
v
w
x
z
Functions
a
c
d
e
f
g
i
l
m
n
o
p
r
s
t
u
v
w
Variables
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
r
s
t
v
w
x
z
Typedefs
c
d
e
g
h
i
l
m
n
o
p
r
s
t
Enumerations
Enumerator
a
b
c
d
e
f
i
k
l
m
n
o
p
r
s
t
u
w
x
z
Classes
Class List
Class Index
Class Hierarchy
Class Members
All
:
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Functions
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
a
b
c
d
e
f
g
h
i
m
n
p
r
s
t
v
w
Enumerations
b
c
d
e
f
g
h
i
k
l
m
n
p
r
s
t
v
Enumerator
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
u
v
w
x
z
Related Symbols
:
a
b
c
d
e
f
g
i
k
l
m
n
o
p
r
s
t
v
w
x
Files
File List
File Members
All
!
$
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Functions
!
a
b
c
d
e
f
g
h
i
j
l
m
n
o
p
q
r
s
t
u
v
w
x
Variables
!
$
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
a
b
c
d
e
f
h
i
j
k
l
m
n
p
r
s
t
u
v
w
z
Enumerations
Enumerator
a
b
c
d
e
f
g
h
i
k
m
n
o
p
r
s
t
u
w
Macros
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
z
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Pages
Loading...
Searching...
No Matches
raw_ifstream.h
Go to the documentation of this file.
1
#ifndef BESIII_RAW_IFSTREAM_H
2
#define BESIII_RAW_IFSTREAM_H
3
4
#include "
RawFile/RawFileUtil.h
"
5
#include <stdint.h>
6
#include <fstream>
7
#include <vector>
8
#include <string>
9
#include <pthread.h>
10
#include <assert.h>
11
12
13
class
raw_ifstream
:
virtual
public
std::ifstream
14
{
15
public :
16
17
static
raw_ifstream
*
instance
(
const
std::vector<std::string>& fnames);
18
static
void
release
();
19
20
static
void
lock
() {
21
int
lstat = pthread_mutex_lock( &_pthread_lock );
22
assert( lstat == 0 );
23
};
20
static
void
lock
() {
…
}
24
static
void
unlock
() {
25
int
lstat = pthread_mutex_unlock( &_pthread_lock );
26
assert( lstat == 0 );
27
};
24
static
void
unlock
() {
…
}
28
29
std::string
currentFile
()
const
{
return
*m_curFile; }
30
31
void
next_file
();
32
33
uint32_t
runNo
();
34
35
raw_ifstream
(
const
std::vector<std::string>& fnames);
36
virtual
~raw_ifstream
();
37
38
private
:
39
40
void
init_fstream();
41
42
raw_ifstream
();
//stop default
43
44
45
private
:
46
47
bool
m_isOpen;
48
49
FileStartRecord
m_fileStartRecord;
50
FileNameStrings
m_fileNameStrings;
51
RunParametersRecord
m_runParametersRecord;
52
53
std::vector<std::string> m_fnames;
54
std::vector<std::string>::iterator m_curFile;
55
56
static
int
_nHandler;
57
static
raw_ifstream
* _instance;
58
static
pthread_mutex_t _pthread_lock;
59
};
13
class
raw_ifstream
:
virtual
public
std::ifstream {
…
};
60
61
#endif
private
#define private
Definition
McEventDict_dict.cpp:6
RawFileUtil.h
FileNameStrings
Definition
RawFileUtil.h:64
FileStartRecord
Definition
RawFileUtil.h:39
RunParametersRecord
Definition
RawFileUtil.h:99
raw_ifstream
Definition
raw_ifstream.h:14
raw_ifstream::raw_ifstream
raw_ifstream(const std::vector< std::string > &fnames)
Definition
raw_ifstream.cxx:46
raw_ifstream::next_file
void next_file()
Definition
raw_ifstream.cxx:61
raw_ifstream::unlock
static void unlock()
Definition
raw_ifstream.h:24
raw_ifstream::lock
static void lock()
Definition
raw_ifstream.h:20
raw_ifstream::release
static void release()
Definition
raw_ifstream.cxx:30
raw_ifstream::instance
static raw_ifstream * instance(const std::vector< std::string > &fnames)
Definition
raw_ifstream.cxx:15
raw_ifstream::~raw_ifstream
virtual ~raw_ifstream()
Definition
raw_ifstream.cxx:57
raw_ifstream::runNo
uint32_t runNo()
Definition
raw_ifstream.cxx:75
raw_ifstream::currentFile
std::string currentFile() const
Definition
raw_ifstream.h:29
7.1.3
Event
RawFile
RawFile-00-01-00
RawFile
raw_ifstream.h
Generated by
1.13.2