Analysis Software
Documentation for sPHENIX simulation software
 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 
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
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;
36  void CompressionSetting(const int i) { m_CompressionSetting = i; }
37 
38  private:
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