Cheetah - SKA - PSS - Prototype Time Domain Search Pipeline
Public Types | Public Member Functions | List of all members
ska::cheetah::data::detail::DmTimeSliceIterator< DmTimeSliceType > Class Template Reference

An iterator over a DmTimeSlice object. More...

#include <cheetah/data/detail/DmTimeSliceIterator.h>

Collaboration diagram for ska::cheetah::data::detail::DmTimeSliceIterator< DmTimeSliceType >:
Collaboration graph

Public Types

typedef DmTimeDm< DmTimeSliceType > DmTimeDmType
 

Public Member Functions

 DmTimeSliceIterator (std::size_t current_dm_idx, std::shared_ptr< const DmTimeSliceType > parent)
 Create a new instances. More...
 
DmTimeDmType operator* () const
 Dereference the iterator. More...
 
DmTimeSliceIteratoroperator++ ()
 Increment the iterator. More...
 
bool operator!= (DmTimeSliceIterator const &other)
 Test if another DmTimeSliceIterator is different to this one. More...
 
bool operator== (DmTimeSliceIterator const &other)
 Test if another DmTimeSliceIterator is the same as this one. More...
 

Detailed Description

template<typename DmTimeSliceType>
class ska::cheetah::data::detail::DmTimeSliceIterator< DmTimeSliceType >

An iterator over a DmTimeSlice object.

Provides methods to acqurire DmTimeDm objects pointing to individual DM trials in the parent DmTimeSlice object.

Definition at line 42 of file DmTimeSlice.h.

Constructor & Destructor Documentation

◆ DmTimeSliceIterator()

template<typename DmTimeSliceType>
ska::cheetah::data::detail::DmTimeSliceIterator< DmTimeSliceType >::DmTimeSliceIterator ( std::size_t  current_dm_idx,
std::shared_ptr< const DmTimeSliceType >  parent 
)

Create a new instances.

Parameters
[in]current_dm_idxThe current dm index in the slice
[in]parentThe parent DmTimeSlice object

Definition at line 11 of file DmTimeSliceIterator.cpp.

13  : _current_dm_idx(current_dm_idx)
14  , _parent(parent)
15 {
16 }

Member Function Documentation

◆ operator!=()

template<typename DmTimeSliceType >
bool ska::cheetah::data::detail::DmTimeSliceIterator< DmTimeSliceType >::operator!= ( DmTimeSliceIterator< DmTimeSliceType > const &  other)

Test if another DmTimeSliceIterator is different to this one.

Parameters
otherThe other DmTimeSliceIterator object
Returns
true or false

Definition at line 37 of file DmTimeSliceIterator.cpp.

38 {
39  return _current_dm_idx != other._current_dm_idx;
40 }

◆ operator*()

template<typename DmTimeSliceType >
DmTimeSliceIterator< DmTimeSliceType >::DmTimeDmType ska::cheetah::data::detail::DmTimeSliceIterator< DmTimeSliceType >::operator* ( ) const

Dereference the iterator.

Returns
A DmTimeDm object

Definition at line 24 of file DmTimeSliceIterator.cpp.

25 {
26  return DmTimeDmType(_current_dm_idx, _parent);
27 }

◆ operator++()

template<typename DmTimeSliceType >
DmTimeSliceIterator< DmTimeSliceType > & ska::cheetah::data::detail::DmTimeSliceIterator< DmTimeSliceType >::operator++ ( )

Increment the iterator.

Returns
A reference to a DmTimeSliceIterator pointing to the next DM trial in the slice.

Definition at line 30 of file DmTimeSliceIterator.cpp.

31 {
32  ++_current_dm_idx;
33  return *this;
34 }

◆ operator==()

template<typename DmTimeSliceType >
bool ska::cheetah::data::detail::DmTimeSliceIterator< DmTimeSliceType >::operator== ( DmTimeSliceIterator< DmTimeSliceType > const &  other)

Test if another DmTimeSliceIterator is the same as this one.

Parameters
otherThe other DmTimeSliceIterator object
Returns
true or false

Definition at line 43 of file DmTimeSliceIterator.cpp.

44 {
45  return _current_dm_idx == other._current_dm_idx;
46 }

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