ATLAS Offline Software
DiskOutput.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
3 */
4 
6 
7 
8 #ifndef SAMPLE_HANDLER__DISK_OUTPUT_H
9 #define SAMPLE_HANDLER__DISK_OUTPUT_H
10 
11 
12 #include <SampleHandler/Global.h>
13 
14 #include <TObject.h>
15 #include <memory>
16 
17 namespace SH
18 {
44 
45  class DiskOutput : public TObject
46  {
47  //
48  // public interface
49  //
50 
54  public:
55  void testInvariant () const;
56 
57 
63  public:
65 
66 
76  public:
77  std::unique_ptr<DiskWriter>
78  makeWriter (const std::string& sampleName,
79  const std::string& segmentName,
80  const std::string& suffix) const;
81 
82 
91  public:
92  std::string
93  targetURL (const std::string& sampleName,
94  const std::string& segmentName,
95  const std::string& suffix) const;
96 
97 
98 
99  //
100  // virtual interface
101  //
102 
106  protected:
107  virtual std::unique_ptr<DiskWriter>
108  doMakeWriter (const std::string& sampleName,
109  const std::string& segmentName,
110  const std::string& suffix) const = 0;
111 
115  protected:
116  virtual std::string
117  getTargetURL (const std::string& sampleName,
118  const std::string& segmentName,
119  const std::string& suffix) const = 0;
120 
121 
122 
123  //
124  // private interface
125  //
126 
128  };
129 }
130 
131 #endif
hotSpotInTAG.suffix
string suffix
Definition: hotSpotInTAG.py:186
SH::DiskOutput::DiskOutput
DiskOutput()
standard constructor
SH::DiskOutput::ClassDef
ClassDef(DiskOutput, 1)
SH::DiskOutput::getTargetURL
virtual std::string getTargetURL(const std::string &sampleName, const std::string &segmentName, const std::string &suffix) const =0
SH::DiskOutput
a class/interface representing an output location for files
Definition: DiskOutput.h:46
SH::DiskOutput::targetURL
std::string targetURL(const std::string &sampleName, const std::string &segmentName, const std::string &suffix) const
the final output location for the given segment
SH::DiskOutput::doMakeWriter
virtual std::unique_ptr< DiskWriter > doMakeWriter(const std::string &sampleName, const std::string &segmentName, const std::string &suffix) const =0
create a DiskWriter object managing an output file
SH::DiskOutput::makeWriter
std::unique_ptr< DiskWriter > makeWriter(const std::string &sampleName, const std::string &segmentName, const std::string &suffix) const
create a DiskWriter object managing an output file
SH
This module provides a lot of global definitions, forward declarations and includes that are used by ...
Definition: PrunDriver.h:15
SH::DiskOutput::testInvariant
void testInvariant() const
test the invariant of this object
Global.h