Back to home page

sPhenix code displayed by LXR

 
 

    


File indexing completed on 2025-12-17 09:20:48

0001 #ifndef WEIGHTED_TRACK_MAP_H
0002 #define WEIGHTED_TRACK_MAP_H
0003 
0004 #include "WeightedTrack.h"
0005 
0006 #include <phool/PHObject.h>
0007 
0008 #include <iostream>
0009 #include <map>
0010 #include <utility>
0011 
0012 class WeightedTrackMap : public PHObject, private std::map<unsigned int, WeightedTrack*> {
0013 public:
0014     WeightedTrackMap() = default;
0015     WeightedTrackMap(WeightedTrackMap const& /*other*/);
0016     WeightedTrackMap& operator=(WeightedTrackMap const& /*other*/);
0017     ~WeightedTrackMap() override { Reset(); }
0018 
0019     PHObject* CloneMe() const override { return new WeightedTrackMap(*this); }
0020 
0021     void identify (std::ostream& /*out*/ = std::cout) const override;
0022     void Reset() override;
0023     int isValid() const override { return 1; }
0024 
0025 
0026     // Types
0027     using std::map<unsigned int, WeightedTrack*>::key_type;
0028     using std::map<unsigned int, WeightedTrack*>::mapped_type;
0029     using std::map<unsigned int, WeightedTrack*>::value_type;
0030     using std::map<unsigned int, WeightedTrack*>::size_type;
0031     using std::map<unsigned int, WeightedTrack*>::difference_type;
0032     using std::map<unsigned int, WeightedTrack*>::key_compare;
0033     using std::map<unsigned int, WeightedTrack*>::allocator_type;
0034     using std::map<unsigned int, WeightedTrack*>::reference;
0035     using std::map<unsigned int, WeightedTrack*>::const_reference;
0036     using std::map<unsigned int, WeightedTrack*>::pointer;
0037     using std::map<unsigned int, WeightedTrack*>::const_pointer;
0038     using std::map<unsigned int, WeightedTrack*>::iterator;
0039     using std::map<unsigned int, WeightedTrack*>::const_iterator;
0040     using std::map<unsigned int, WeightedTrack*>::reverse_iterator;
0041     using std::map<unsigned int, WeightedTrack*>::const_reverse_iterator;
0042     using std::map<unsigned int, WeightedTrack*>::node_type;
0043     using std::map<unsigned int, WeightedTrack*>::insert_return_type;
0044 
0045     // Element access
0046     using std::map<unsigned int, WeightedTrack*>::at;
0047     using std::map<unsigned int, WeightedTrack*>::operator[];
0048 
0049     // Iterators
0050     using std::map<unsigned int, WeightedTrack*>::begin;
0051     using std::map<unsigned int, WeightedTrack*>::cbegin;
0052     using std::map<unsigned int, WeightedTrack*>::end;
0053     using std::map<unsigned int, WeightedTrack*>::cend;
0054     using std::map<unsigned int, WeightedTrack*>::rbegin;
0055     using std::map<unsigned int, WeightedTrack*>::crbegin;
0056     using std::map<unsigned int, WeightedTrack*>::rend;
0057     using std::map<unsigned int, WeightedTrack*>::crend;
0058 
0059     // Capacity
0060     using std::map<unsigned int, WeightedTrack*>::empty;
0061     using std::map<unsigned int, WeightedTrack*>::size;
0062     using std::map<unsigned int, WeightedTrack*>::max_size;
0063 
0064     // Modifiers
0065     using std::map<unsigned int, WeightedTrack*>::clear;
0066     using std::map<unsigned int, WeightedTrack*>::insert;
0067     // using std::map<unsigned int, WeightedTrack*>::insert_range; c++23
0068     using std::map<unsigned int, WeightedTrack*>::insert_or_assign;
0069     using std::map<unsigned int, WeightedTrack*>::emplace;
0070     using std::map<unsigned int, WeightedTrack*>::emplace_hint;
0071     using std::map<unsigned int, WeightedTrack*>::try_emplace;
0072     using std::map<unsigned int, WeightedTrack*>::erase;
0073     using std::map<unsigned int, WeightedTrack*>::swap;
0074     using std::map<unsigned int, WeightedTrack*>::extract;
0075     using std::map<unsigned int, WeightedTrack*>::merge;
0076 
0077     // Lookup
0078     using std::map<unsigned int, WeightedTrack*>::count;
0079     using std::map<unsigned int, WeightedTrack*>::find;
0080     using std::map<unsigned int, WeightedTrack*>::contains;
0081     using std::map<unsigned int, WeightedTrack*>::equal_range;
0082     using std::map<unsigned int, WeightedTrack*>::lower_bound;
0083     using std::map<unsigned int, WeightedTrack*>::upper_bound;
0084 
0085 private:
0086     ClassDefOverride(WeightedTrackMap, 1);
0087 };
0088 
0089 #endif//WEIGHTED_TRACK_MAP_H