Analysis Software
Documentation for
sPHENIX
simulation software
Home page
Related Pages
Modules
Namespaces
Classes
Files
Examples
External Links
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
Fun4AllDstOutputManager.h
Go to the documentation of this file.
Or view
the newest version in sPHENIX GitHub for file Fun4AllDstOutputManager.h
1
// Tell emacs that this is a C++ source
2
// -*- C++ -*-.
3
#ifndef FUN4ALL_FUN4ALLDSTOUTPUTMANAGER_H
4
#define FUN4ALL_FUN4ALLDSTOUTPUTMANAGER_H
5
6
#include "
Fun4AllOutputManager.h
"
7
8
#include <set>
9
#include <string>
10
11
class
PHNodeIOManager
;
12
class
PHCompositeNode
;
13
14
class
Fun4AllDstOutputManager
:
public
Fun4AllOutputManager
15
{
16
public
:
17
Fun4AllDstOutputManager
(
const
std::string
&myname =
"DSTOUT"
,
const
std::string
&
filename
=
"dstout.root"
);
18
~Fun4AllDstOutputManager
()
override
;
19
// Fun4AllDstOutputManager contains pointer to memory
20
// copy ctor and = operator need explicit implementation, do just delete it here
21
Fun4AllDstOutputManager
(
const
Fun4AllDstOutputManager
&) =
delete
;
22
Fun4AllDstOutputManager
&
operator=
(
Fun4AllDstOutputManager
const
&) =
delete
;
23
int
AddNode
(
const
std::string
&nodename)
override
;
24
int
AddRunNode
(
const
std::string
&nodename)
override
;
25
int
StripNode
(
const
std::string
&nodename)
override
;
26
int
StripRunNode
(
const
std::string
&nodename)
override
;
27
void
SaveRunNode
(
const
int
i
)
override
{
m_SaveRunNodeFlag
=
i
; }
28
void
SaveDstNode
(
const
int
i
)
override
{
m_SaveDstNodeFlag
=
i
; }
29
int
outfileopen
(
const
std::string
&
fname
)
override
;
30
31
void
Print
(
const
std::string
&what =
"ALL"
)
const override
;
32
33
int
Write
(
PHCompositeNode
*startNode)
override
;
34
int
WriteNode
(
PHCompositeNode
*thisNode)
override
;
35
std::string
UsedOutFileName
()
const
{
return
m_UsedOutFileName
; }
36
void
CompressionSetting
(
const
int
i
) {
m_CompressionSetting
=
i
; }
37
38
private
:
39
int
outfile_open_first_write
();
40
PHNodeIOManager
*
dstOut
{
nullptr
};
41
int
m_SaveRunNodeFlag
{1};
42
int
m_SaveDstNodeFlag
{1};
43
int
m_CompressionSetting
{505};
44
int
m_CurrentSegment
{0};
45
std::string
m_FileNameStem
;
46
std::string
m_UsedOutFileName
;
47
std::set<std::string>
savenodes
;
48
std::set<std::string>
saverunnodes
;
49
std::set<std::string>
stripnodes
;
50
std::set<std::string>
striprunnodes
;
51
};
52
53
#endif
coresoftware
blob
master
offline
framework
fun4all
Fun4AllDstOutputManager.h
Built by
Jin Huang
. updated:
Sat Feb 17 2024 22:18:04
using
1.8.2 with
sPHENIX GitHub integration