Loading [MathJax]/extensions/tex2jax.js
ATLAS Offline Software
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
Public Member Functions | Static Public Member Functions | List of all members
ManagedMonitorToolBase::StreamNameFcn Class Referenceabstract

A function-object base class allowing the specific implementation of getStreamName to be decided at runtime. More...

#include <ManagedMonitorToolBase.h>

Inheritance diagram for ManagedMonitorToolBase::StreamNameFcn:
Collaboration diagram for ManagedMonitorToolBase::StreamNameFcn:

Public Member Functions

virtual ~StreamNameFcn ()
 
virtual std::string getStreamName (const ManagedMonitorToolBase *tool, const MonGroup &group, const std::string &objName, bool usePreviousInterval=false)=0
 A function that converts a MonGroup of logical parameters into a physical output stream name. More...
 
virtual std::string getDirectoryName (const ManagedMonitorToolBase *tool, const MonGroup &group, const std::string &objName, const bool usePreviousInterval)=0
 A function that returns TDirectory path in a file that corresponds to a given MonGroup and object name. More...
 

Static Public Member Functions

static void parseString (const std::string &streamName, std::string &root, std::string &rem)
 A helper non-virtual function, parses id string. More...
 

Detailed Description

A function-object base class allowing the specific implementation of getStreamName to be decided at runtime.

Definition at line 325 of file ManagedMonitorToolBase.h.

Constructor & Destructor Documentation

◆ ~StreamNameFcn()

virtual ManagedMonitorToolBase::StreamNameFcn::~StreamNameFcn ( )
inlinevirtual

Definition at line 327 of file ManagedMonitorToolBase.h.

327 {};

Member Function Documentation

◆ getDirectoryName()

virtual std::string ManagedMonitorToolBase::StreamNameFcn::getDirectoryName ( const ManagedMonitorToolBase tool,
const MonGroup group,
const std::string &  objName,
const bool  usePreviousInterval 
)
pure virtual

A function that returns TDirectory path in a file that corresponds to a given MonGroup and object name.

Implemented in ManagedMonitorToolBase::OfflineStream, ManagedMonitorToolBase::OnlineStream, ManagedMonitorToolBase::NoOutputStream, and ManagedMonitorToolBase::DefaultStream.

◆ getStreamName()

virtual std::string ManagedMonitorToolBase::StreamNameFcn::getStreamName ( const ManagedMonitorToolBase tool,
const MonGroup group,
const std::string &  objName,
bool  usePreviousInterval = false 
)
pure virtual

A function that converts a MonGroup of logical parameters into a physical output stream name.

Implemented in ManagedMonitorToolBase::OfflineStream, ManagedMonitorToolBase::OnlineStream, ManagedMonitorToolBase::NoOutputStream, and ManagedMonitorToolBase::DefaultStream.

◆ parseString()

void ManagedMonitorToolBase::StreamNameFcn::parseString ( const std::string &  streamName,
std::string &  root,
std::string &  rem 
)
static

A helper non-virtual function, parses id string.

String format: id = /root/rem The method is needed to separate root stream from the directory in a file. E.g. typical streamName is /TestMon/run_211670/lb_360/spacepointVsEvent_managed

  • TestMon is the stream from configuration file (svcMgr.THistSvc.Output += ["TestMon DATAFILE='TestMon.root' OPT='RECREATE'"])
  • run_211670/lb_360/ - directory path
  • spacepointVsEvent_managed - object name

in this case, root = TestMon rem = run_211670/lb_360/spacepointVsEvent_managed

Definition at line 2185 of file ManagedMonitorToolBase.cxx.

2186  {
2187  std::string::size_type pos = streamName.find('/');
2188 
2189  if (pos == std::string::npos) {
2190  root = "";
2191  rem = streamName;
2192  return;
2193  }
2194 
2195  if (pos == 0) {
2196  parseString(streamName.substr(1,streamName.length()),root,rem);
2197  } else {
2198  root = streamName.substr(0,pos);
2199  rem = streamName.substr(pos+1,streamName.length());
2200  }
2201 
2202 }

The documentation for this class was generated from the following files:
sendEI_SPB.root
root
Definition: sendEI_SPB.py:34
WriteHiveWithMetaData.streamName
string streamName
Definition: WriteHiveWithMetaData.py:22
python.LumiBlobConversion.pos
pos
Definition: LumiBlobConversion.py:18
ManagedMonitorToolBase::StreamNameFcn::parseString
static void parseString(const std::string &streamName, std::string &root, std::string &rem)
A helper non-virtual function, parses id string.
Definition: ManagedMonitorToolBase.cxx:2186