|
ATLAS Offline Software
|
Go to the documentation of this file.
5 #ifndef TRIGFPGATrackSimOBJECTS_MULTITRUTH_H
6 #define TRIGFPGATrackSimOBJECTS_MULTITRUTH_H
49 typedef std::pair<unsigned long, unsigned long>
Barcode;
88 if (
m_truth.empty())
return false;
104 bool operator()(
const TruthMap::value_type&
a,
const TruthMap::value_type&
b)
const {
105 const bool a_info = (
a.first.first !=
bad) && (
a.first.second !=
bad);
106 const bool b_info = (
b.first.first !=
bad) && (
b.first.second !=
bad);
107 return a_info && b_info ?
a.second <
b.second : b_info;
130 #endif // TRIGFPGATrackSimOBJECTS_MULTITRUTH_H
FPGATrackSimMultiTruth(const FPGATrackSimMultiTruth::Barcode &code, const FPGATrackSimMultiTruth::Weight weight=1.)
bool accumulate(AccumulateMap &map, std::vector< module_t > const &modules, FPGATrackSimMatrixAccumulator const &acc)
Accumulates an accumulator (e.g.
bool operator()(const TruthMap::value_type &a, const TruthMap::value_type &b) const
virtual ~FPGATrackSimMultiTruth()=default
auto operator()(const FPGATrackSimMultiTruth::Weight &result, const TruthMap::value_type &a) const
unsigned long best_barcode() const
unsigned multiplicity() const
bool best(FPGATrackSimMultiTruth::Barcode &code, FPGATrackSimMultiTruth::Weight &weight) const
void add(const FPGATrackSimMultiTruth::Barcode &code, const FPGATrackSimMultiTruth::Weight &weight)
std::pair< unsigned long, unsigned long > Barcode
auto operator()(const FPGATrackSimMultiTruth &result, const FPGATrackSimMultiTruth &a) const
FPGATrackSimMultiTruth()=default
FPGATrackSimMultiTruth::Weight weight(const FPGATrackSimMultiTruth::Barcode &code) const
std::ostream & operator<<(std::ostream &o, const FPGATrackSimMultiTruth &mt)
auto operator()(const FPGATrackSimMultiTruth &result, const FPGATrackSimMultiTruth &a) const
void maximize(const FPGATrackSimMultiTruth::Barcode &code, const FPGATrackSimMultiTruth::Weight &weight)
std::map< Barcode, Weight > TruthMap
FPGATrackSimMultiTruth::Weight total_weight() const
void assign_equal_normalization()