LArSoft  v07_13_02
Liquid Argon Software toolkit - http://larsoft.org/
CurrentProcessingContext.cc
Go to the documentation of this file.
2 
4 #include <cassert>
5 
6 namespace art {
8  : pathInSchedule_(0)
9  , slotInPath_(0)
10  , moduleDescription_(0)
11  , pathName_(0)
12  , isEndPath_(false)
13  {}
14 
16  int bitpos,
17  bool isEndPth)
18  : pathInSchedule_(bitpos)
19  , slotInPath_(0)
21  , pathName_(name)
22  , isEndPath_(isEndPth)
23  {}
24 
25  std::string const*
27  {
28  return is_active() ? &(moduleDescription_->moduleLabel()) : 0;
29  }
30 
31  std::string const*
33  {
34  return pathName_;
35  }
36 
37  ModuleDescription const*
39  {
40  return moduleDescription_;
41  }
42 
43  int
45  {
46  return is_active() ? pathInSchedule_ : -1;
47  }
48 
49  int
51  {
52  return is_active() ? static_cast<int>(slotInPath_) : -1;
53  }
54 
55  bool
57  {
58  return isEndPath_;
59  }
60 
61  void
62  CurrentProcessingContext::activate(size_t theSlotInPath,
63  ModuleDescription const* mod)
64  {
65  assert(mod);
66  slotInPath_ = theSlotInPath;
67  moduleDescription_ = mod;
68  }
69 
70  void
72  {
73  pathInSchedule_ = 0;
74  slotInPath_ = 0;
76  pathName_ = 0;
77  }
78 
79 } // art
ModuleDescription const * moduleDescription() const
ModuleDescription const * moduleDescription_
std::string const * pathName() const
void activate(std::size_t theSlotInPath, ModuleDescription const *mod)
std::string const * moduleLabel() const
std::string const & moduleLabel() const
HLT enums.