The Gaudi Framework  master (b9786168)
Loading...
Searching...
No Matches
ServiceHistory.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#pragma once
12
15
16#include <string>
17#include <vector>
18
19class IService;
20class JobHistory;
21
29
31
32public:
34 ServiceHistory( const IService*, const JobHistory* );
35 ServiceHistory( const IService&, const JobHistory* );
36
37 // Class IDs
38 const CLID& clID() const override { return classID(); }
39 static const CLID& classID();
40
41 // Return the service properties.
42 const PropertyList& properties() const override { return m_properties; }
43
44 const IService* service() const { return m_pService; }
45
46 const JobHistory* jobHistory() const { return m_jobHistory; }
47
48 std::ostream& dump( std::ostream&, const bool isXML, int indent ) const override;
49
50 const std::string& name() const override { return m_name; }
51 const std::string& type() const override { return m_type; }
52 const std::string& version() const override { return m_version; }
53
54 // Output stream.
55 friend std::ostream& operator<<( std::ostream& lhs, const ServiceHistory& rhs ) { return rhs.dump( lhs, false, 0 ); }
56
57private:
59 const JobHistory* m_jobHistory{ nullptr };
60 std::string m_name, m_type, m_version;
62};
unsigned int CLID
Class ID definition.
Definition ClassID.h:16
#define GAUDI_API
Definition Kernel.h:49
Base class for History Objects.
Definition HistoryObj.h:30
virtual std::ostream & dump(std::ostream &, bool isXML=false, int indent=0) const =0
static const CLID & classID()
General service interface definition.
Definition IService.h:26
Interface for Versioned History Objects.
std::vector< Gaudi::Details::PropertyBase * > PropertyList
JobHistory class definition.
Definition JobHistory.h:32
std::string m_type
const std::string & type() const override
PropertyList m_properties
friend std::ostream & operator<<(std::ostream &lhs, const ServiceHistory &rhs)
const PropertyList & properties() const override
const JobHistory * m_jobHistory
const CLID & clID() const override
Retrieve reference to class definition structure.
const JobHistory * jobHistory() const
std::string m_name
const std::string & name() const override
std::string m_version
std::ostream & dump(std::ostream &, const bool isXML, int indent) const override
const IService * m_pService
const std::string & version() const override
const IService * service() const