58 #ifndef Simulation_LArVoxelData_h_
59 #define Simulation_LArVoxelData_h_
200 return std::accumulate( ftrackEnergy.begin(), ftrackEnergy.end(), 0.0,
205 return std::accumulate( ftrackEnergy.begin(), ftrackEnergy.end(), fenergy,
210 iterator search = ftrackEnergy.find( track );
211 if ( search != ftrackEnergy.end() )
213 fenergy += (*search).second;
214 ftrackEnergy.erase( search );
222 ftrackEnergy.clear();
226 { ftrackEnergy[trackID] += energy; }
228 { fenergy += energy; }
256 double temp = fenergy;
262 {
return ftrackEnergy.find(key); }
264 {
return ftrackEnergy.find(key); }
266 {
return ftrackEnergy.upper_bound(key); }
268 {
return ftrackEnergy.upper_bound(key); }
270 {
return ftrackEnergy.lower_bound(key); }
272 {
return ftrackEnergy.lower_bound(key); }
274 {
return this->RemoveTrack(key); }
277 {
return ftrackEnergy[key]; }
279 {
return ftrackEnergy.at(key); }
281 {
return ftrackEnergy.at(key); }
283 {
return ftrackEnergy.at(key); }
285 { ftrackEnergy[key] =
value; }
287 #endif // Simulation_LArVoxelData_h_
void Add(const mapped_type &energy, const key_type &trackID)
const LArVoxelData operator*(const double &value) const
size_type erase(const key_type &key)
list_type::key_compare key_compare
mapped_type & operator[](const key_type &key)
std::less< int > key_compare
iterator lower_bound(const key_type &key)
list_type::value_type value_type
void insert(const key_type &key, const mapped_type &value)
std::size_t size(FixedBins< T, C > const &) noexcept
process_name use argoneut_mc_hitfinder track
list_type::mapped_type mapped_type
list_type::const_reverse_iterator const_reverse_iterator
vector_type::iterator iterator
const LArVoxelData operator+(const LArVoxelData &other) const
mapped_type UnassignedEnergy() const
LArVoxelData & operator+=(const LArVoxelData &other)
std::allocator< std::pair< int, double > > allocator_type
list_type::reverse_iterator reverse_iterator
vector_type::const_iterator const_iterator
std::reverse_iterator< const_iterator > const_reverse_iterator
util::VectorMap< int, double > list_type
size_type NumberParticles() const
mapped_type AssignedEnergy() const
std::reverse_iterator< iterator > reverse_iterator
LArVoxelData & operator*=(const double &value)
list_type::difference_type difference_type
mapped_type Energy() const
ptrdiff_t difference_type
list_type::key_type key_type
void swap(LArVoxelData &other)
BEGIN_PROLOG sequence::SlidingWindowTriggerPatternsOppositeWindows END_PROLOG simSlidingORM6O6 effSlidingORW output
reverse_iterator rbegin()
mapped_type & at(const key_type &key)
list_type::const_iterator const_iterator
sim::LArVoxelID VoxelID() const
friend std::ostream & operator<<(std::ostream &output, const LArVoxelData &)
size_type RemoveTrack(const int &track)
void SetVoxelID(sim::LArVoxelID voxID)
iterator find(const key_type &key)
list_type::size_type size_type
Unique identifier for a given LAr voxel.
std::pair< _Key, _Tp > value_type
list_type::allocator_type allocator_type
const key_type & TrackID(const size_type) const
list_type::iterator iterator
iterator upper_bound(const key_type &key)