ATLAS Offline Software
Loading...
Searching...
No Matches
DiskOutputXRD.cxx File Reference
#include <SampleHandler/DiskOutputXRD.h>
#include <sstream>
#include <RootCoreUtils/Assert.h>
#include <SampleHandler/DiskWriterXRD.h>
Include dependency graph for DiskOutputXRD.cxx:

Go to the source code of this file.

Functions

 ClassImp (SH::DiskOutputXRD) namespace SH

Function Documentation

◆ ClassImp()

ClassImp ( SH::DiskOutputXRD )
Author
Nils Krumnack

Definition at line 22 of file DiskOutputXRD.cxx.

25{
26 void DiskOutputXRD ::
27 testInvariant () const
28 {
29 RCU_INVARIANT (m_prefix.find ("root://") == 0);
30 }
31
32
33
34 DiskOutputXRD ::
35 DiskOutputXRD ()
36 : m_prefix ("root://ThisIsANonExistantPath")
37 {
38 RCU_NEW_INVARIANT (this);
39 }
40
41
42
43 DiskOutputXRD ::
44 DiskOutputXRD (const std::string& val_prefix)
45 : m_prefix (val_prefix)
46 {
47 RCU_REQUIRE (val_prefix.find ("root://") == 0);
48
49 RCU_NEW_INVARIANT (this);
50 }
51
52
53
54 std::unique_ptr<DiskWriter> DiskOutputXRD ::
55 doMakeWriter (const std::string& sampleName,
56 const std::string& segmentName,
57 const std::string& suffix) const
58 {
59 RCU_READ_INVARIANT (this);
60 return std::make_unique<DiskWriterXRD>
61 (targetURL (sampleName, segmentName, suffix));
62 }
63
64
65
66 std::string DiskOutputXRD ::
67 getTargetURL (const std::string& sampleName,
68 const std::string& segmentName,
69 const std::string& suffix) const
70 {
71 RCU_READ_INVARIANT (this);
72 std::ostringstream file;
73 file << m_prefix;
74 if (m_prefix.back() != '-')
75 file << "/";
77 if (!segmentName.empty())
78 file << "-" << segmentName;
79 file << suffix;
80 return file.str();
81 }
82}
#define RCU_INVARIANT(x)
Definition Assert.h:201
#define RCU_NEW_INVARIANT(x)
Definition Assert.h:233
#define RCU_REQUIRE(x)
Definition Assert.h:208
#define RCU_READ_INVARIANT(x)
Definition Assert.h:229
TFile * file