LArSoft  v10_04_05
Liquid Argon Software toolkit - https://larsoft.org/
genFinder Struct Reference

Public Member Functions

void sort_now ()
 
void add (const int &track_id, const std::string &gname)
 
bool has_gen (std::string gname)
 
std::string get_gen (int tid)
 
void sort_now ()
 
void add (const int &track_id, const std::string &gname)
 
bool has_gen (std::string gname)
 
std::string get_gen (int tid)
 

Private Types

typedef std::pair< int, std::string > track_id_to_string
 
typedef std::pair< int, std::string > track_id_to_string
 

Private Attributes

std::vector< track_id_to_stringtrack_id_map
 
std::set< std::string > generator_names
 
bool isSorted = false
 

Detailed Description

Definition at line 150 of file RawWaveformClnSigDump_module.cc.

Member Typedef Documentation

typedef std::pair<int, std::string> genFinder::track_id_to_string
private

Definition at line 136 of file RawWaveformDump_module.cc.

typedef std::pair<int, std::string> genFinder::track_id_to_string
private

Definition at line 152 of file RawWaveformClnSigDump_module.cc.

Member Function Documentation

void genFinder::add ( const int &  track_id,
const std::string &  gname 
)
inline

Definition at line 149 of file RawWaveformDump_module.cc.

150  {
151  this->track_id_map.push_back(std::make_pair(track_id, gname));
152  generator_names.emplace(gname);
153  isSorted = false;
154  }
std::vector< track_id_to_string > track_id_map
std::set< std::string > generator_names
void genFinder::add ( const int &  track_id,
const std::string &  gname 
)
inline

Definition at line 165 of file RawWaveformClnSigDump_module.cc.

Referenced by nnet::RawWaveformDump::analyze(), and nnet::RawWaveformClnSigDump::analyze().

166  {
167  this->track_id_map.push_back(std::make_pair(track_id, gname));
168  generator_names.emplace(gname);
169  isSorted = false;
170  }
std::vector< track_id_to_string > track_id_map
std::set< std::string > generator_names
std::string genFinder::get_gen ( int  tid)
inline

Definition at line 156 of file RawWaveformDump_module.cc.

157  {
158  if (!isSorted) { this->sort_now(); }
159  return std::lower_bound(track_id_map.begin(),
160  track_id_map.end(),
161  tid,
162  [](const auto& a, const auto& b) { return (a.first < b); })
163  ->second;
164  };
std::vector< track_id_to_string > track_id_map
second_as<> second
Type of time stored in seconds, in double precision.
Definition: spacetime.h:82
std::string genFinder::get_gen ( int  tid)
inline

Definition at line 172 of file RawWaveformClnSigDump_module.cc.

Referenced by nnet::RawWaveformDump::analyze(), and nnet::RawWaveformClnSigDump::analyze().

173  {
174  if (!isSorted) { this->sort_now(); }
175  return std::lower_bound(track_id_map.begin(),
176  track_id_map.end(),
177  tid,
178  [](const auto& a, const auto& b) { return (a.first < b); })
179  ->second;
180  };
std::vector< track_id_to_string > track_id_map
second_as<> second
Type of time stored in seconds, in double precision.
Definition: spacetime.h:82
bool genFinder::has_gen ( std::string  gname)
inline

Definition at line 155 of file RawWaveformDump_module.cc.

155 { return static_cast<bool>(generator_names.count(gname)); };
std::set< std::string > generator_names
bool genFinder::has_gen ( std::string  gname)
inline

Definition at line 171 of file RawWaveformClnSigDump_module.cc.

171 { return static_cast<bool>(generator_names.count(gname)); };
std::set< std::string > generator_names
void genFinder::sort_now ( )
inline

Definition at line 142 of file RawWaveformDump_module.cc.

143  {
144  std::sort(this->track_id_map.begin(),
145  this->track_id_map.end(),
146  [](const auto& a, const auto& b) { return (a.first < b.first); });
147  isSorted = true;
148  }
std::vector< track_id_to_string > track_id_map
void genFinder::sort_now ( )
inline

Definition at line 158 of file RawWaveformClnSigDump_module.cc.

159  {
160  std::sort(this->track_id_map.begin(),
161  this->track_id_map.end(),
162  [](const auto& a, const auto& b) { return (a.first < b.first); });
163  isSorted = true;
164  }
std::vector< track_id_to_string > track_id_map

Member Data Documentation

std::set< std::string > genFinder::generator_names
private

Definition at line 154 of file RawWaveformClnSigDump_module.cc.

bool genFinder::isSorted = false
private

Definition at line 155 of file RawWaveformClnSigDump_module.cc.

std::vector< track_id_to_string > genFinder::track_id_map
private

Definition at line 153 of file RawWaveformClnSigDump_module.cc.


The documentation for this struct was generated from the following files: