ATLAS Offline Software
Loading...
Searching...
No Matches
CaloClusterCellLink::iterator Class Reference

#include <CaloClusterCellLink.h>

Collaboration diagram for CaloClusterCellLink::iterator:

Public Types

using iterator_category = std::bidirectional_iterator_tag
using value_type = const CaloCell*
using difference_type = std::ptrdiff_t
using pointer = value_type*
using reference = value_type&

Public Member Functions

 iterator ()=delete
 iterator (const CaloCellContainer *ccc, linkAndWeightCollType::iterator it)
 constructor *
const CaloCelloperator* () const
const CaloCelloperator-> () const
weight_t weight () const
 Accessor for weight associated to this cell.
unsigned index () const
 Accessor for the index of the cell in the CaloCellContainer.
iterator operator++ ()
iterator operator-- ()
iterator operator++ (int)
iterator operator-- (int)
bool operator== (const iterator &b) const
bool operator!= (const iterator &b) const
void reweight (const weight_t newWeight)
 Update the weight.
void reindex (const unsigned newIndex)
 Update the index.

Private Attributes

const CaloCellContainerm_ccc
linkAndWeightCollType::iterator m_it

Friends

class CaloClusterCellLink

Detailed Description

Definition at line 125 of file CaloClusterCellLink.h.

Member Typedef Documentation

◆ difference_type

Definition at line 131 of file CaloClusterCellLink.h.

◆ iterator_category

using CaloClusterCellLink::iterator::iterator_category = std::bidirectional_iterator_tag

Definition at line 129 of file CaloClusterCellLink.h.

◆ pointer

◆ reference

◆ value_type

Constructor & Destructor Documentation

◆ iterator() [1/2]

CaloClusterCellLink::iterator::iterator ( )
delete

◆ iterator() [2/2]

CaloClusterCellLink::iterator::iterator ( const CaloCellContainer * ccc,
linkAndWeightCollType::iterator it )
inline

constructor *

Parameters
[in]cellContPointer to the CaloCellContainer
[in]itmap-iterator to the map insinde CaloClusterLinkContainer

Definition at line 141 of file CaloClusterCellLink.h.

141 :
142 m_ccc(ccc), m_it(it) {};

Member Function Documentation

◆ index()

unsigned CaloClusterCellLink::iterator::index ( ) const
inline

Accessor for the index of the cell in the CaloCellContainer.

Definition at line 151 of file CaloClusterCellLink.h.

151{return m_it->first;}

◆ operator!=()

bool CaloClusterCellLink::iterator::operator!= ( const iterator & b) const
inline

Definition at line 158 of file CaloClusterCellLink.h.

158{ return m_it!=b.m_it;}

◆ operator*()

const CaloCell * CaloClusterCellLink::iterator::operator* ( ) const
inline

Definition at line 143 of file CaloClusterCellLink.h.

143{return (*m_ccc)[m_it->first];}

◆ operator++() [1/2]

iterator CaloClusterCellLink::iterator::operator++ ( )
inline

Definition at line 153 of file CaloClusterCellLink.h.

153{++m_it; return *this;}

◆ operator++() [2/2]

iterator CaloClusterCellLink::iterator::operator++ ( int )
inline

Definition at line 155 of file CaloClusterCellLink.h.

155{++m_it; return *this;}

◆ operator--() [1/2]

iterator CaloClusterCellLink::iterator::operator-- ( )
inline

Definition at line 154 of file CaloClusterCellLink.h.

154{--m_it; return *this;}

◆ operator--() [2/2]

iterator CaloClusterCellLink::iterator::operator-- ( int )
inline

Definition at line 156 of file CaloClusterCellLink.h.

156{--m_it; return *this;}

◆ operator->()

const CaloCell * CaloClusterCellLink::iterator::operator-> ( ) const
inline

Definition at line 144 of file CaloClusterCellLink.h.

144{return (*m_ccc)[m_it->first];}

◆ operator==()

bool CaloClusterCellLink::iterator::operator== ( const iterator & b) const
inline

Definition at line 157 of file CaloClusterCellLink.h.

157{ return m_it==b.m_it;}

◆ reindex()

void CaloClusterCellLink::iterator::reindex ( const unsigned newIndex)
inline

Update the index.

Parameters
newWIndexThe new index

Definition at line 169 of file CaloClusterCellLink.h.

169{m_it->first=newIndex;}

◆ reweight()

void CaloClusterCellLink::iterator::reweight ( const weight_t newWeight)
inline

Update the weight.

Parameters
newWeightThe new weight

Definition at line 164 of file CaloClusterCellLink.h.

164{m_it->second=newWeight;}

◆ weight()

weight_t CaloClusterCellLink::iterator::weight ( ) const
inline

Accessor for weight associated to this cell.

Definition at line 147 of file CaloClusterCellLink.h.

147{return m_it->second;}

◆ CaloClusterCellLink

friend class CaloClusterCellLink
friend

Definition at line 127 of file CaloClusterCellLink.h.

Member Data Documentation

◆ m_ccc

const CaloCellContainer* CaloClusterCellLink::iterator::m_ccc
private

Definition at line 173 of file CaloClusterCellLink.h.

◆ m_it

linkAndWeightCollType::iterator CaloClusterCellLink::iterator::m_it
private

Definition at line 174 of file CaloClusterCellLink.h.


The documentation for this class was generated from the following file: