Alexandria 2.32.0
SDC-CH common library for the Euclid project
Loading...
Searching...
No Matches
Euclid::SourceCatalog::Photometry::PhotometryIterator< Const > Class Template Reference

#include <Photometry.h>

Inheritance diagram for Euclid::SourceCatalog::Photometry::PhotometryIterator< Const >:
Collaboration diagram for Euclid::SourceCatalog::Photometry::PhotometryIterator< Const >:

Public Types

using value_t = typename std::conditional<Const, const FluxErrorPair, FluxErrorPair>::type
using filters_iter_t = typename std::vector<std::string>::const_iterator
using values_iter_t

Public Member Functions

 PhotometryIterator (const PhotometryIterator< false > &other)
PhotometryIteratoroperator++ ()
bool operator== (const PhotometryIterator &other) const
bool operator!= (const PhotometryIterator &other) const
reference operator* ()
pointer operator-> ()
ssize_t operator- (const PhotometryIterator &other) const
const std::stringfilterName () const

Protected Member Functions

 PhotometryIterator (const filters_iter_t &filters_iter, const values_iter_t &values_iter)

Private Attributes

filters_iter_t m_filters_iter
values_iter_t m_values_iter

Friends

class Photometry

Detailed Description

template<bool Const>
class Euclid::SourceCatalog::Photometry::PhotometryIterator< Const >

Iterator class, implemented as a template to avoid repetition for const and non const iterators

Template Parameters
ConstA boolean. If true, this will be a const iterator

Definition at line 83 of file Photometry.h.

Member Typedef Documentation

◆ filters_iter_t

template<bool Const>
using Euclid::SourceCatalog::Photometry::PhotometryIterator< Const >::filters_iter_t = typename std::vector<std::string>::const_iterator

Definition at line 91 of file Photometry.h.

◆ value_t

template<bool Const>
using Euclid::SourceCatalog::Photometry::PhotometryIterator< Const >::value_t = typename std::conditional<Const, const FluxErrorPair, FluxErrorPair>::type

Definition at line 87 of file Photometry.h.

◆ values_iter_t

template<bool Const>
using Euclid::SourceCatalog::Photometry::PhotometryIterator< Const >::values_iter_t
Initial value:
std::vector<FluxErrorPair>::iterator>::type

Definition at line 92 of file Photometry.h.

Constructor & Destructor Documentation

◆ PhotometryIterator() [1/2]

template<bool Const>
Euclid::SourceCatalog::Photometry::PhotometryIterator< Const >::PhotometryIterator ( const PhotometryIterator< false > & other)

Constructor from non-const iterator

Definition at line 30 of file Photometry.h.

◆ PhotometryIterator() [2/2]

template<bool Const>
Euclid::SourceCatalog::Photometry::PhotometryIterator< Const >::PhotometryIterator ( const filters_iter_t & filters_iter,
const values_iter_t & values_iter )
protected

Constructor

Parameters
filters_iterFilter name iterator
values_iterFluxErrorPair iterator

Definition at line 26 of file Photometry.h.

Member Function Documentation

◆ filterName()

template<bool Const>
const std::string & Euclid::SourceCatalog::Photometry::PhotometryIterator< Const >::filterName ( ) const
Returns
The filter name corresponding to this FluxErrorPair

Definition at line 66 of file Photometry.h.

◆ operator!=()

template<bool Const>
bool Euclid::SourceCatalog::Photometry::PhotometryIterator< Const >::operator!= ( const PhotometryIterator< Const > & other) const
Returns
true if this iterator and other do not point to the same position

Definition at line 46 of file Photometry.h.

◆ operator*()

template<bool Const>
auto Euclid::SourceCatalog::Photometry::PhotometryIterator< Const >::operator* ( )
Returns
A reference to the FluxErrorPair pointed by this iterator

Definition at line 51 of file Photometry.h.

◆ operator++()

template<bool Const>
Photometry::PhotometryIterator< Const > & Euclid::SourceCatalog::Photometry::PhotometryIterator< Const >::operator++ ( )

Increment the iterator

Definition at line 34 of file Photometry.h.

◆ operator-()

template<bool Const>
ssize_t Euclid::SourceCatalog::Photometry::PhotometryIterator< Const >::operator- ( const PhotometryIterator< Const > & other) const
Returns
The number of elements between this iterator and other

Definition at line 61 of file Photometry.h.

◆ operator->()

template<bool Const>
auto Euclid::SourceCatalog::Photometry::PhotometryIterator< Const >::operator-> ( )
Returns
A pointer to the FluxErrorPair pointed by this iterator

Definition at line 56 of file Photometry.h.

◆ operator==()

template<bool Const>
bool Euclid::SourceCatalog::Photometry::PhotometryIterator< Const >::operator== ( const PhotometryIterator< Const > & other) const
Returns
true if this iterator and other point to the same position

Definition at line 41 of file Photometry.h.

References Euclid::SourceCatalog::FluxErrorPair::FluxErrorPair().

Here is the call graph for this function:

◆ Photometry

template<bool Const>
friend class Photometry
friend

Definition at line 145 of file Photometry.h.

Member Data Documentation

◆ m_filters_iter

template<bool Const>
filters_iter_t Euclid::SourceCatalog::Photometry::PhotometryIterator< Const >::m_filters_iter
private

Definition at line 148 of file Photometry.h.

◆ m_values_iter

template<bool Const>
values_iter_t Euclid::SourceCatalog::Photometry::PhotometryIterator< Const >::m_values_iter
private

Definition at line 149 of file Photometry.h.


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