Cheetah - SKA - PSS - Prototype Time Domain Search Pipeline
|
A wrapper class for a list of DmTime instances. More...
#include <cheetah/data/DmTime.h>
Public Types | |
typedef std::list< std::shared_ptr< DmTrialsType > > | ContainerType |
typedef std::shared_ptr< DmTrialsType > | ValueType |
typedef detail::DmTimeSlice< SelfType > | SliceType |
typedef detail::DmTimeIterator< SelfType > | Iterator |
typedef detail::DmTimeIterator< SelfType const > | ConstIterator |
Public Member Functions | |
void | add (ValueType data) |
Insert a new DmTime object into the buffer. More... | |
void | clear () |
Clear the DmTime. | |
Iterator | begin (std::size_t number_dms_per_slice) |
Get an iterator pointing to the first DM trial that iterates over slices of DMs. More... | |
ConstIterator | cbegin (std::size_t number_dms_per_slice) const |
Iterator | end () |
Get an iterator that points to the last DM trial in the buffer. More... | |
ConstIterator | cend () const |
ContainerType const & | blocks () const |
Get a reference to the underlying list. More... | |
ContainerType & | blocks () |
A wrapper class for a list of DmTime instances.
This class provides methods for organising access to a container (currently a list) of DmTime instances. The DmTime list remains sorted at all times. The underlying data structure can be iterated over in blocks of DMs. This allows the DMs to be split up for dispatch to processing algorithms that require the full observation length for processing (e.g. Fdas and Tdas)
Note that the DmTime class does not guarantee that all DmTrials instances it contains are compatible (i.e. contain the same of DMs and are contiguous in time). The Psbc class which wraps a DmTime instance is intended to handle this functionality and act as an aggregation buffer for passing DmTrials between processing algorithms.
A typical use case for the DmTime class is as follows:
Definition at line 14 of file DmTimeIterator.h.
void ska::cheetah::data::DmTime< DmTrialsType >::add | ( | ValueType | data | ) |
Insert a new DmTime object into the buffer.
The shared_ptr is inserted into the underlying list in order based upon the start_time() method of the DmTime object.
[in] | data | The data to be added |
Definition at line 61 of file DmTime.cpp.
DmTime< DmTrialsType >::Iterator ska::cheetah::data::DmTime< DmTrialsType >::begin | ( | std::size_t | number_dms_per_slice | ) |
Get an iterator pointing to the first DM trial that iterates over slices of DMs.
[in] | number_dms_per_slice | The number DM trials per slice |
Definition at line 77 of file DmTime.cpp.
DmTime< DmTrialsType >::ContainerType const & ska::cheetah::data::DmTime< DmTrialsType >::blocks | ( | ) | const |
Get a reference to the underlying list.
Definition at line 105 of file DmTime.cpp.
DmTime< DmTrialsType >::Iterator ska::cheetah::data::DmTime< DmTrialsType >::end | ( | ) |
Get an iterator that points to the last DM trial in the buffer.
Definition at line 89 of file DmTime.cpp.