CMS 3D CMS Logo

EDPutToken.h
Go to the documentation of this file.
1 #ifndef FWCore_Utilities_EDPutToken_h
2 #define FWCore_Utilities_EDPutToken_h
3 // -*- C++ -*-
4 //
5 // Package: FWCore/Utilities
6 // Class : EDPutToken
7 //
20 //
21 // Original Author: Chris Jones
22 // Created: Mon, 18 Sep 2017 17:54:11 GMT
23 //
24 
25 // system include files
26 
27 // user include files
28 
29 // forward declarations
30 namespace edm {
31  class ProductRegistryHelper;
32  template <typename T>
33  class EDPutTokenT;
34  namespace test {
35  class TestProcessorConfig;
36  }
37 
38  class EDPutToken {
39  friend class ProductRegistryHelper;
40 
41  public:
42  using value_type = unsigned int;
43 
45 
46  template <typename T>
48 
49  // ---------- const member functions ---------------------
50  value_type index() const { return m_value; }
51  bool isUninitialized() const { return m_value == s_uninitializedValue; }
52 
53  private:
54  //for testing
55  friend class TestEDPutToken;
56 
57  static const unsigned int s_uninitializedValue = 0xFFFFFFFF;
58 
59  explicit EDPutToken(unsigned int iValue) : m_value(iValue) {}
60 
61  // ---------- member data --------------------------------
63  };
64 
65  template <typename T>
66  class EDPutTokenT {
67  friend class ProductRegistryHelper;
68  friend class EDPutToken;
70 
71  public:
73 
75 
76  // ---------- const member functions ---------------------
77  value_type index() const { return m_value; }
78  bool isUninitialized() const { return m_value == s_uninitializedValue; }
79 
80  private:
81  //for testing
82  friend class TestEDPutToken;
83 
84  static const unsigned int s_uninitializedValue = 0xFFFFFFFF;
85 
86  explicit EDPutTokenT(unsigned int iValue) : m_value(iValue) {}
87 
88  // ---------- member data --------------------------------
90  };
91 } // namespace edm
92 
93 #endif
edm::EDPutToken::isUninitialized
bool isUninitialized() const
Definition: EDPutToken.h:51
edm::EDPutToken::EDPutToken
EDPutToken()
Definition: EDPutToken.h:44
edm::EDPutTokenT::index
value_type index() const
Definition: EDPutToken.h:77
edm::EDPutToken::index
value_type index() const
Definition: EDPutToken.h:50
edm::EDPutTokenT::s_uninitializedValue
static const unsigned int s_uninitializedValue
Definition: EDPutToken.h:84
edm::EDPutToken::TestEDPutToken
friend class TestEDPutToken
Definition: EDPutToken.h:55
edm
HLT enums.
Definition: AlignableModifier.h:19
edm::EDPutTokenT
Definition: EDPutToken.h:33
edm::EDPutTokenT::EDPutTokenT
EDPutTokenT(unsigned int iValue)
Definition: EDPutToken.h:86
edm::test::TestProcessorConfig
Definition: TestProcessor.h:91
edm::EDPutToken::value_type
unsigned int value_type
Definition: EDPutToken.h:42
edm::EDPutToken::m_value
value_type m_value
Definition: EDPutToken.h:62
edm::EDPutToken::EDPutToken
EDPutToken(EDPutTokenT< T > iOther)
Definition: EDPutToken.h:47
test
Definition: SmallWORMDict.h:13
edm::EDPutTokenT::m_value
value_type m_value
Definition: EDPutToken.h:89
edm::EDPutToken
Definition: EDPutToken.h:38
edm::EDPutToken::s_uninitializedValue
static const unsigned int s_uninitializedValue
Definition: EDPutToken.h:57
createfilelist.int
int
Definition: createfilelist.py:10
edm::EDPutTokenT< FEDRawDataCollection >::value_type
EDPutToken::value_type value_type
Definition: EDPutToken.h:72
edm::EDPutTokenT::TestEDPutToken
friend class TestEDPutToken
Definition: EDPutToken.h:82
edm::EDPutTokenT::isUninitialized
bool isUninitialized() const
Definition: EDPutToken.h:78
edm::EDPutTokenT::EDPutTokenT
EDPutTokenT()
Definition: EDPutToken.h:74
edm::ProductRegistryHelper
Definition: ProductRegistryHelper.h:23
edm::EDPutToken::EDPutToken
EDPutToken(unsigned int iValue)
Definition: EDPutToken.h:59