CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
ProcessBlockIndex.h
Go to the documentation of this file.
1 #ifndef FWCore_Utilities_ProcessBlockIndex_h
2 #define FWCore_Utilities_ProcessBlockIndex_h
3 // -*- C++ -*-
4 //
5 // Package: FWCore/Utilities
6 // Class : edm::ProcessBlockIndex
7 //
14 //
15 // Original Author: W. David Dagenhart
16 // Created: 18 March 2020
17 
18 namespace edm {
19  class ProcessBlockPrincipal;
20 
22  public:
23  ProcessBlockIndex() = delete;
24  ~ProcessBlockIndex() = default;
25  ProcessBlockIndex(const ProcessBlockIndex&) = default;
27 
28  bool operator==(const ProcessBlockIndex& iIndex) const { return value() == iIndex.value(); }
29  operator unsigned int() const { return value_; }
30 
31  unsigned int value() const { return value_; }
32 
34 
35  private:
37  friend class ProcessBlockPrincipal;
38  explicit ProcessBlockIndex(unsigned int iIndex) : value_(iIndex) {}
39 
40  unsigned int value_;
41 
42  static const unsigned int invalidValue_;
43  };
44 } // namespace edm
45 
46 #endif
~ProcessBlockIndex()=default
unsigned int value() const
bool operator==(const ProcessBlockIndex &iIndex) const
ProcessBlockIndex(unsigned int iIndex)
static ProcessBlockIndex invalidProcessBlockIndex()
static const unsigned int invalidValue_
ProcessBlockIndex & operator=(const ProcessBlockIndex &)=default