Analysis Software
Documentation for
sPHENIX
simulation software
Home page
Related Pages
Modules
Namespaces
Classes
Files
Examples
External Links
File List
File Members
Analysis Software
Deprecated List
Modules
Namespaces
Classes
Files
File List
acts
acts-fatras
analysis
analysis_tpc_prototype
coresoftware
blob
master
calibrations
generators
offline
database
framework
ffamodules
ffaobjects
ffarawmodules
ffarawobjects
frog
fun4all
fun4allraw
Fun4AllEventOutputManager.cc
Fun4AllEventOutputManager.h
Fun4AllEventOutStream.cc
Fun4AllEventOutStream.h
Fun4AllFileOutStream.cc
Fun4AllFileOutStream.h
Fun4AllPrdfInputManager.cc
Fun4AllPrdfInputManager.h
Fun4AllPrdfInputPoolManager.cc
Fun4AllPrdfInputPoolManager.h
Fun4AllPrdfOutputManager.cc
Fun4AllPrdfOutputManager.h
Fun4AllRolloverFileOutStream.cc
Fun4AllRolloverFileOutStream.h
Fun4AllStreamingInputManager.cc
Fun4AllStreamingInputManager.h
intt_pool.cc
intt_pool.h
SingleGl1PoolInput.cc
SingleGl1PoolInput.h
SingleInttPoolInput.cc
SingleInttPoolInput.h
SingleMicromegasPoolInput.cc
SingleMicromegasPoolInput.h
SingleMvtxPoolInput.cc
SingleMvtxPoolInput.h
SinglePrdfInput.cc
SinglePrdfInput.h
SingleStreamingInput.cc
SingleStreamingInput.h
SingleTpcPoolInput.cc
SingleTpcPoolInput.h
SingleZdcInput.cc
SingleZdcInput.h
tpc_pool.cc
tpc_pool.h
fun4allutils
phool
phoolraw
packages
QA
simulation
validation
Doxygen_Assist
g4exampledetector
GenFit
JETSCAPE
KFParticle
macros
online_distribution
OnlMon
prototype
pythia6
rcdaq
RDBC
tutorials
doxygen_mainpage.h
File Members
Examples
External Links
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
SinglePrdfInput.h
Go to the documentation of this file.
Or view
the newest version in sPHENIX GitHub for file SinglePrdfInput.h
1
#ifndef FUN4ALLRAW_SINGLEPRDFINPUT_H
2
#define FUN4ALLRAW_SINGLEPRDFINPUT_H
3
4
#include <
fun4all/Fun4AllBase.h
>
5
#include <
fun4all/InputFileHandler.h
>
6
7
#include <array>
8
#include <limits>
9
#include <map>
10
#include <set>
11
#include <string>
12
#include <utility>
// for pair
13
#include <vector>
14
15
class
Eventiterator
;
16
class
Fun4AllPrdfInputPoolManager
;
17
class
Packet
;
18
19
class
SinglePrdfInput
:
public
Fun4AllBase
,
public
InputFileHandler
20
{
21
public
:
22
explicit
SinglePrdfInput
(
const
std::string
&
name
,
Fun4AllPrdfInputPoolManager
*inman);
23
~SinglePrdfInput
()
override
;
24
Eventiterator
*
GetEventIterator
() {
return
m_EventIterator
; }
25
virtual
void
FillPool
(
const
unsigned
int
nevents
);
26
int
RunNumber
()
const
{
return
m_RunNumber
; }
27
void
RunNumber
(
const
int
irun) {
m_RunNumber
= irun; }
28
int
fileopen
(
const
std::string
&
filename
)
override
;
29
int
fileclose
()
override
;
30
int
AllDone
()
const
{
return
m_AllDone
; }
31
void
AllDone
(
const
int
i
) {
m_AllDone
=
i
; }
32
void
EventNumberOffset
(
const
int
i
) {
m_EventNumberOffset
=
i
; }
// if beam clk are out of sync, tweak this one
33
int
EventNumberOffset
()
const
{
return
m_EventNumberOffset
; }
34
Fun4AllPrdfInputPoolManager
*
InputMgr
() {
return
m_InputMgr
; }
35
void
MakeReference
(
const
bool
b
);
36
bool
ReferenceFlag
()
const
{
return
m_MeReferenceFlag
; }
37
38
private
:
39
int
majority_eventnumber
();
40
int
majority_beamclock
();
41
void
adjust_eventnumber_offset
(
const
int
decided_evtno);
42
struct
PacketInfo
43
{
44
std::vector<Packet *>
PacketVector
;
45
unsigned
int
EventFoundCounter
= 0;
46
};
47
Eventiterator
*
m_EventIterator
=
nullptr
;
48
Fun4AllPrdfInputPoolManager
*
m_InputMgr
=
nullptr
;
49
Packet
**
plist
=
nullptr
;
50
unsigned
int
m_NumSpecialEvents
= 0;
51
int
m_EventNumberOffset
= 1;
// packet event counters start at 0 but we start with event number 1
52
int
*
m_PacketEventNumberOffset
=
nullptr
;
// packet event counters start at 0 but we start with event number 1
53
int
m_RunNumber
= 0;
54
int
m_EventsThisFile
= 0;
55
int
m_AllDone
= 0;
56
bool
m_MeReferenceFlag
=
false
;
57
std::map<int, std::vector<Packet *>>
m_PacketMap
;
58
std::set<int>
m_EvtSet
;
59
std::vector<std::pair<int, int>>
m_Event
;
60
std::array<unsigned int,100>
rollover
;
61
std::array<int,100>
previous_eventnumber
;
62
};
63
64
#endif
coresoftware
blob
master
offline
framework
fun4allraw
SinglePrdfInput.h
Built by
Jin Huang
. updated:
Sat Feb 17 2024 22:18:05
using
1.8.2 with
sPHENIX GitHub integration