VMC Version 2.2
Loading...
Searching...
No Matches
TMCVNtupleWriter.h
Go to the documentation of this file.
1#ifndef ROOT_TMCVNtupleWriter
2#define ROOT_TMCVNtupleWriter
3
4//------------------------------------------------
5// The Geant4 Virtual Monte Carlo package
6// Copyright (C) 2013 - 2018 Ivana Hrivnacova
7// All rights reserved.
8//
9// For the licensing terms see geant4_vmc/LICENSE.
10// Contact: root-vmc@cern.ch
11//-------------------------------------------------
12
17
18#include <Rtypes.h>
19
20class TFile;
21
23{
24public:
25 TMCVNtupleWriter(const char *storageName, TFile* file, Bool_t workerMode) :
26 fStorageName(storageName), fFile(file), fWorkerMode(workerMode) {}
27 TMCVNtupleWriter() = default;
28 virtual ~TMCVNtupleWriter() = default;
29
30 // Standard virtual interface for the rest of the lifecycle
31 virtual void CreateRNTuple() = 0;
32 virtual void Fill() = 0;
33 virtual void WriteAll() = 0;
34 virtual void Close() = 0;
35 virtual void ReadEvent(Int_t /*i*/) {}
36
37protected:
38 TFile* fFile{nullptr};
39 std::string fStorageName{};
40 Bool_t fWorkerMode{false};
41};
42
43#endif // ROOT_TMCVNtupleWriter
virtual ~TMCVNtupleWriter()=default
virtual void CreateRNTuple()=0
std::string fStorageName
virtual void Fill()=0
TMCVNtupleWriter(const char *storageName, TFile *file, Bool_t workerMode)
virtual void ReadEvent(Int_t)
virtual void WriteAll()=0
virtual void Close()=0
TMCVNtupleWriter()=default