Main Page
Namespaces
Classes
Package Documentation
FWCore
Common
interface
RunBase.h
Go to the documentation of this file.
1
#ifndef FWCore_Common_RunBase_h
2
#define FWCore_Common_RunBase_h
3
4
// -*- C++ -*-
5
//
6
// Package: FWCore/Common
7
// Class : RunBase
8
//
19
//
20
// Original Author: Eric Vaandering
21
// Created: Tue Jan 12 15:31:00 CDT 2010
22
//
23
24
#include "
DataFormats/Common/interface/BasicHandle.h
"
25
#include "
DataFormats/Common/interface/ConvertHandle.h
"
26
#include "
DataFormats/Common/interface/Handle.h
"
27
#include "
DataFormats/Provenance/interface/RunAuxiliary.h
"
28
#include "
DataFormats/Provenance/interface/RunID.h
"
29
#include "
FWCore/Utilities/interface/InputTag.h
"
30
31
namespace
edm
{
32
33
class
RunBase
{
34
public
:
35
RunBase
();
36
virtual
~RunBase
();
37
38
// AUX functions.
39
RunID
const
&
id
()
const
{
return
runAuxiliary
().
id
(); }
40
RunNumber_t
run
()
const
{
return
runAuxiliary
().
run
(); }
41
Timestamp
const
&
beginTime
()
const
{
return
runAuxiliary
().
beginTime
(); }
42
Timestamp
const
&
endTime
()
const
{
return
runAuxiliary
().
endTime
(); }
43
44
virtual
edm::RunAuxiliary
const
&
runAuxiliary
()
const
= 0;
45
47
template
<
typename
PROD>
48
bool
getByLabel
(
InputTag
const
&
tag
,
Handle<PROD>
&
result
)
const
;
49
50
private
:
51
virtual
BasicHandle
getByLabelImpl
(std::type_info
const
& iWrapperType,
52
std::type_info
const
& iProductType,
53
InputTag
const
& iTag)
const
= 0;
54
};
55
56
template
<
typename
T>
57
bool
RunBase::getByLabel
(
InputTag
const
&
tag
,
Handle<T>
&
result
)
const
{
58
result.
clear
();
59
BasicHandle
bh = this->
getByLabelImpl
(
typeid
(
Wrapper<T>
),
typeid
(
T
), tag);
60
result = convert_handle<T>(
std::move
(bh));
61
if
(result.
failedToGet
()) {
62
return
false
;
63
}
64
return
true
;
65
}
66
67
}
// namespace edm
68
#endif
ConvertHandle.h
edm::RunBase::getByLabel
bool getByLabel(InputTag const &tag, Handle< PROD > &result) const
same as above, but using the InputTag class
edm::RunAuxiliary
Definition:
RunAuxiliary.h:15
GlobalPosition_Frontier_DevDB_cff.tag
tag
Definition:
GlobalPosition_Frontier_DevDB_cff.py:11
edm::RunBase::id
RunID const & id() const
Definition:
RunBase.h:39
edm::RunBase::endTime
Timestamp const & endTime() const
Definition:
RunBase.h:42
edm::RunBase::run
RunNumber_t run() const
Definition:
RunBase.h:40
RunID.h
mps_fire.result
result
Definition:
mps_fire.py:291
edm::Handle
Definition:
AssociativeIterator.h:47
edm::RunAuxiliary::endTime
Timestamp const & endTime() const
Definition:
RunAuxiliary.h:40
edm::BasicHandle
Definition:
BasicHandle.h:43
edm::RunAuxiliary::id
RunID const & id() const
Definition:
RunAuxiliary.h:37
edm::RunAuxiliary::beginTime
Timestamp const & beginTime() const
Definition:
RunAuxiliary.h:39
edm::RunBase
Definition:
RunBase.h:33
edm::Timestamp
Definition:
Timestamp.h:30
edm::HandleBase::clear
void clear()
Definition:
HandleBase.h:54
edm::RunBase::getByLabelImpl
virtual BasicHandle getByLabelImpl(std::type_info const &iWrapperType, std::type_info const &iProductType, InputTag const &iTag) const =0
edm::RunBase::~RunBase
virtual ~RunBase()
Definition:
RunBase.cc:24
edm::HandleBase::failedToGet
bool failedToGet() const
Definition:
HandleBase.h:78
edm::RunBase::runAuxiliary
virtual edm::RunAuxiliary const & runAuxiliary() const =0
BasicHandle.h
edm::RunBase::beginTime
Timestamp const & beginTime() const
Definition:
RunBase.h:41
edm
HLT enums.
Definition:
AlignableModifier.h:17
edm::InputTag
Definition:
InputTag.h:15
InputTag.h
edm::Wrapper
Definition:
BasicHandle.h:41
edm::RunNumber_t
unsigned int RunNumber_t
Definition:
RunLumiEventNumber.h:14
T
long double T
Definition:
Basic3DVectorLD.h:66
edm::RunAuxiliary::run
RunNumber_t run() const
Definition:
RunAuxiliary.h:41
eostools.move
def move(src, dest)
Definition:
eostools.py:511
edm::RunBase::RunBase
RunBase()
Definition:
RunBase.cc:22
RunAuxiliary.h
edm::RunID
Definition:
RunID.h:28
Handle.h
Generated for CMSSW Reference Manual by
1.8.11