The Gaudi Framework
master (1a7a3838)
Toggle main menu visibility
Loading...
Searching...
No Matches
JobHistory.h
Go to the documentation of this file.
1
/***********************************************************************************\
2
* (c) Copyright 1998-2025 CERN for the benefit of the LHCb and ATLAS collaborations *
3
* *
4
* This software is distributed under the terms of the Apache version 2 licence, *
5
* copied verbatim in the file "LICENSE". *
6
* *
7
* In applying this licence, CERN does not waive the privileges and immunities *
8
* granted to it by virtue of its status as an Intergovernmental Organization *
9
* or submit itself to any jurisdiction. *
10
\***********************************************************************************/
11
12
#pragma once
13
14
#include <
Gaudi/Property.h
>
15
#include <
GaudiKernel/HistoryObj.h
>
16
#include <
GaudiKernel/IVersHistoryObj.h
>
17
18
#include <ctime>
19
#include <iosfwd>
20
#include <memory>
21
#include <string>
22
#include <utility>
23
#include <vector>
24
32
class
GAUDI_API
JobHistory
:
public
HistoryObj
,
virtual
public
IVersHistoryObj
{
33
34
public
:
35
typedef
std::vector<std::pair<std::string, std::unique_ptr<Gaudi::Property<std::string>>>>
PropertyPairList
;
36
37
private
:
// data
38
std::string
m_release_version
;
39
std::string
m_dir
;
40
std::string
m_cmtconfig
;
41
42
std::string
m_osname
;
43
std::string
m_hostname
;
44
std::string
m_os_version
;
45
std::string
m_machine
;
46
47
std::vector<std::string>
m_environ
;
48
49
PropertyList
m_props
;
50
PropertyPairList
m_ppl
;
51
52
std::vector<std::string>
m_CVSid
;
53
time_t
m_start_time
;
54
55
public
:
// functions
56
// Constructor.
57
JobHistory
();
58
JobHistory
(
const
std::string& rel,
const
std::string&
os
,
const
std::string& host,
const
std::string&
dir
,
59
const
std::string& osver,
const
std::string& mach,
const
std::string&
cmtconfig
,
const
time_t& time );
60
61
// Destructor.
62
virtual
~JobHistory
();
63
64
// Class IDs
65
const
CLID
&
clID
()
const override
{
return
classID
(); }
66
static
const
CLID
&
classID
();
67
68
// add a global property
69
void
addProperty(
const
std::string& key,
const
std::string& value );
70
71
// Return the job history data.
72
const
std::string&
release_version
()
const
{
return
m_release_version
; }
73
const
std::string&
os
()
const
{
return
m_osname
; }
74
const
std::string&
hostname
()
const
{
return
m_hostname
; }
75
const
std::string&
os_version
()
const
{
return
m_os_version
; }
76
const
std::string&
machine
()
const
{
return
m_machine
; }
77
const
std::string&
dir
()
const
{
return
m_dir
; }
78
const
std::string&
cmtconfig
()
const
{
return
m_cmtconfig
; }
79
const
std::vector<std::string>&
environment
()
const
{
return
m_environ
; }
80
const
PropertyList
&
properties
()
const override
{
return
m_props
; }
81
const
PropertyPairList
&
propertyPairs
()
const
{
return
m_ppl
; }
82
time_t
start_time
()
const
{
return
m_start_time
; }
83
84
std::ostream&
dump
( std::ostream&,
bool
isXML,
int
indent )
const override
;
85
86
const
std::string&
name
()
const override
{
return
m_machine
; }
87
const
std::string&
version
()
const override
{
return
m_release_version
; }
88
const
std::string&
type
()
const override
{
return
m_osname
; }
89
90
// Output stream.
91
friend
std::ostream&
operator<<
( std::ostream& lhs,
const
JobHistory
& rhs ) {
return
rhs.
dump
( lhs,
false
, 0 ); }
92
};
CLID
unsigned int CLID
Class ID definition.
Definition
ClassID.h:16
Property.h
HistoryObj.h
IVersHistoryObj.h
GAUDI_API
#define GAUDI_API
Definition
Kernel.h:49
HistoryObj
Base class for History Objects.
Definition
HistoryObj.h:30
HistoryObj::dump
virtual std::ostream & dump(std::ostream &, bool isXML=false, int indent=0) const =0
HistoryObj::classID
static const CLID & classID()
Definition
HistoryObj.cpp:44
IVersHistoryObj
Interface for Versioned History Objects.
Definition
IVersHistoryObj.h:27
IVersHistoryObj::PropertyList
std::vector< Gaudi::Details::PropertyBase * > PropertyList
Definition
IVersHistoryObj.h:29
JobHistory::~JobHistory
virtual ~JobHistory()
JobHistory::name
const std::string & name() const override
Definition
JobHistory.h:86
JobHistory::m_os_version
std::string m_os_version
Definition
JobHistory.h:44
JobHistory::version
const std::string & version() const override
Definition
JobHistory.h:87
JobHistory::start_time
time_t start_time() const
Definition
JobHistory.h:82
JobHistory::os
const std::string & os() const
Definition
JobHistory.h:73
JobHistory::m_osname
std::string m_osname
Definition
JobHistory.h:42
JobHistory::m_CVSid
std::vector< std::string > m_CVSid
Definition
JobHistory.h:52
JobHistory::clID
const CLID & clID() const override
Retrieve reference to class definition structure.
Definition
JobHistory.h:65
JobHistory::machine
const std::string & machine() const
Definition
JobHistory.h:76
JobHistory::operator<<
friend std::ostream & operator<<(std::ostream &lhs, const JobHistory &rhs)
Definition
JobHistory.h:91
JobHistory::environment
const std::vector< std::string > & environment() const
Definition
JobHistory.h:79
JobHistory::JobHistory
JobHistory()
Definition
JobHistory.cpp:20
JobHistory::dir
const std::string & dir() const
Definition
JobHistory.h:77
JobHistory::release_version
const std::string & release_version() const
Definition
JobHistory.h:72
JobHistory::propertyPairs
const PropertyPairList & propertyPairs() const
Definition
JobHistory.h:81
JobHistory::m_start_time
time_t m_start_time
Definition
JobHistory.h:53
JobHistory::dump
std::ostream & dump(std::ostream &, bool isXML, int indent) const override
Definition
JobHistory.cpp:82
JobHistory::PropertyPairList
std::vector< std::pair< std::string, std::unique_ptr< Gaudi::Property< std::string > > > > PropertyPairList
Definition
JobHistory.h:35
JobHistory::m_machine
std::string m_machine
Definition
JobHistory.h:45
JobHistory::m_cmtconfig
std::string m_cmtconfig
Definition
JobHistory.h:40
JobHistory::m_props
PropertyList m_props
Definition
JobHistory.h:49
JobHistory::m_release_version
std::string m_release_version
Definition
JobHistory.h:38
JobHistory::m_hostname
std::string m_hostname
Definition
JobHistory.h:43
JobHistory::m_environ
std::vector< std::string > m_environ
Definition
JobHistory.h:47
JobHistory::hostname
const std::string & hostname() const
Definition
JobHistory.h:74
JobHistory::m_ppl
PropertyPairList m_ppl
Definition
JobHistory.h:50
JobHistory::os_version
const std::string & os_version() const
Definition
JobHistory.h:75
JobHistory::properties
const PropertyList & properties() const override
Definition
JobHistory.h:80
JobHistory::cmtconfig
const std::string & cmtconfig() const
Definition
JobHistory.h:78
JobHistory::m_dir
std::string m_dir
Definition
JobHistory.h:39
JobHistory::type
const std::string & type() const override
Definition
JobHistory.h:88
GaudiKernel
include
GaudiKernel
JobHistory.h
Generated on
for The Gaudi Framework by
1.17.0