LArSoft  v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
BranchKey.cc
Go to the documentation of this file.
4 
5 #include <ostream>
6 
7 namespace {
8  constexpr char underscore [[maybe_unused]]{'_'};
9  constexpr char period [[maybe_unused]]{'.'};
10 }
11 
12 namespace art {
13 
15  : friendlyClassName_{desc.friendlyClassName()}
16  , moduleLabel_{desc.moduleLabel()}
17  , productInstanceName_{desc.productInstanceName()}
18  , processName_{desc.processName()}
19  , branchType_{desc.branchType()}
20  {}
21 
22  std::string
24  {
25  return canonicalProductName(
27  }
28 
29  std::ostream&
30  operator<<(std::ostream& os, BranchKey const& bk)
31  {
32  os << "BranchKey(" << bk.friendlyClassName_ << ", " << bk.moduleLabel_
33  << ", " << bk.productInstanceName_ << ", " << bk.processName_ << ", "
34  << static_cast<BranchType>(bk.branchType_) << ')';
35  return os;
36  }
37 }
std::string branchName() const
Definition: BranchKey.cc:23
std::string productInstanceName_
Definition: BranchKey.h:45
std::ostream & operator<<(std::ostream &os, const GroupSelector &gs)
std::string friendlyClassName_
Definition: BranchKey.h:43
std::string canonicalProductName(std::string const &friendlyClassName, std::string const &moduleLabel, std::string const &productInstanceName, std::string const &processName)
BranchKey()=default
std::string processName_
Definition: BranchKey.h:46
BranchType
Definition: BranchType.h:20
Definition: MVAAlg.h:12
std::string moduleLabel_
Definition: BranchKey.h:44
std::string const & friendlyClassName() const noexcept