Main Page
Namespaces
Classes
Package Documentation
FWCore
Framework
interface
DataProxyTemplate.h
Go to the documentation of this file.
1
#ifndef FWCore_Framework_DataProxyTemplate_h
2
#define FWCore_Framework_DataProxyTemplate_h
3
// -*- C++ -*-
4
//
5
// Package: Framework
6
// Class : DataProxyTemplate
7
//
16
//
17
// Author: Chris Jones
18
// Created: Thu Mar 31 12:45:32 EST 2005
19
//
20
21
// system include files
22
23
// user include files
24
#include "
FWCore/Framework/interface/DataProxy.h
"
25
#include "
FWCore/Framework/interface/EventSetupRecord.h
"
26
#include <cassert>
27
#include <limits>
28
29
// forward declarations
30
31
namespace
edm
{
32
namespace
eventsetup {
33
template
<
class
RecordT,
class
DataT>
34
class
DataProxyTemplate
:
public
DataProxy
{
35
public
:
36
typedef
DataT
value_type
;
37
typedef
RecordT
record_type
;
38
39
DataProxyTemplate
() {}
40
//virtual ~DataProxyTemplate();
41
42
// ---------- const member functions ---------------------
43
44
// ---------- static member functions --------------------
45
46
// ---------- member functions ---------------------------
47
const
void
*
getImpl
(
const
EventSetupRecordImpl
& iRecord,
const
DataKey
& iKey)
override
{
48
assert(iRecord.
key
() == RecordT::keyForClass());
49
RecordT rec;
50
rec.setImpl(&iRecord,
std::numeric_limits<unsigned int>::max
(),
nullptr
);
51
return
this->
make
(rec, iKey);
52
}
53
54
protected
:
55
virtual
const
DataT*
make
(
const
RecordT&,
const
DataKey
&) = 0;
56
57
private
:
58
DataProxyTemplate
(
const
DataProxyTemplate
&) =
delete
;
// stop default
59
60
const
DataProxyTemplate
&
operator=
(
const
DataProxyTemplate
&) =
delete
;
// stop default
61
62
// ---------- member data --------------------------------
63
};
64
65
}
// namespace eventsetup
66
}
// namespace edm
67
#endif
edm::eventsetup::DataProxyTemplate::value_type
DataT value_type
Definition:
DataProxyTemplate.h:36
edm::eventsetup::DataProxyTemplate::DataProxyTemplate
DataProxyTemplate()
Definition:
DataProxyTemplate.h:39
edm::eventsetup::DataProxyTemplate::getImpl
const void * getImpl(const EventSetupRecordImpl &iRecord, const DataKey &iKey) override
Definition:
DataProxyTemplate.h:47
edm::eventsetup::DataProxyTemplate
Definition:
DataProxyTemplate.h:34
edm::eventsetup::EventSetupRecordImpl
Definition:
EventSetupRecordImpl.h:83
SiStripPI::max
Definition:
SiStripPayloadInspectorHelper.h:178
DataProxy.h
edm::eventsetup::DataKey
Definition:
DataKey.h:29
EventSetupRecord.h
edm::eventsetup::DataProxyTemplate::make
virtual const DataT * make(const RecordT &, const DataKey &)=0
edm
HLT enums.
Definition:
AlignableModifier.h:17
edm::eventsetup::DataProxyTemplate::operator=
const DataProxyTemplate & operator=(const DataProxyTemplate &)=delete
edm::eventsetup::DataProxy
Definition:
DataProxy.h:37
edm::eventsetup::DataProxyTemplate::record_type
RecordT record_type
Definition:
DataProxyTemplate.h:37
edm::eventsetup::EventSetupRecordImpl::key
EventSetupRecordKey const & key() const
Definition:
EventSetupRecordImpl.h:106
Generated for CMSSW Reference Manual by
1.8.11