CMS 3D CMS Logo

ConsumesInfo.h
Go to the documentation of this file.
1 #ifndef FWCore_ServiceRegistry_ConsumesInfo_h
2 #define FWCore_ServiceRegistry_ConsumesInfo_h
3 
12 //
13 // Original Author: W. David Dagenhart
14 // Created: 12/4/2014
15 
19 
20 #include <string_view>
21 
22 namespace edm {
23  class ConsumesInfo {
24  public:
25  ConsumesInfo(TypeID const& iType,
26  char const* iLabel,
27  char const* iInstance,
28  char const* iProcess,
29  BranchType iBranchType,
30  KindOfType iKindOfType,
31  bool iAlwaysGets,
32  bool iSkipCurrentProcess_);
33 
34  TypeID const& type() const { return type_; }
35  std::string_view label() const { return label_; }
36  std::string_view instance() const { return instance_; }
37  std::string_view process() const { return process_; }
38  BranchType branchType() const { return branchType_; }
39  KindOfType kindOfType() const { return kindOfType_; }
40  bool alwaysGets() const { return alwaysGets_; }
41  bool skipCurrentProcess() const { return skipCurrentProcess_; }
42 
43  // This provides information from EDConsumerBase
44  // There a couple cases that need explanation.
45  //
46  // consumesMany
47  // The label, instance and process are all empty.
48  //
49  // process is empty - A get will search over processes in reverse
50  // time order (unknown which process the product will be gotten
51  // from and it is possible for this to vary from event to event)
52 
53  private:
55  std::string_view label_;
56  std::string_view instance_;
57  std::string_view process_;
62  };
63 } // namespace edm
64 #endif
BranchType branchType() const
Definition: ConsumesInfo.h:38
KindOfType kindOfType() const
Definition: ConsumesInfo.h:39
bool skipCurrentProcess() const
Definition: ConsumesInfo.h:41
BranchType
Definition: BranchType.h:11
std::string_view process() const
Definition: ConsumesInfo.h:37
std::string_view instance_
Definition: ConsumesInfo.h:56
std::string_view process_
Definition: ConsumesInfo.h:57
TypeID const & type() const
Definition: ConsumesInfo.h:34
bool alwaysGets() const
Definition: ConsumesInfo.h:40
std::string_view label_
Definition: ConsumesInfo.h:55
std::string_view instance() const
Definition: ConsumesInfo.h:36
BranchType branchType_
Definition: ConsumesInfo.h:58
HLT enums.
KindOfType kindOfType_
Definition: ConsumesInfo.h:59
ConsumesInfo(TypeID const &iType, char const *iLabel, char const *iInstance, char const *iProcess, BranchType iBranchType, KindOfType iKindOfType, bool iAlwaysGets, bool iSkipCurrentProcess_)
Definition: ConsumesInfo.cc:5
std::string_view label() const
Definition: ConsumesInfo.h:35