astrotypes  0.0
Public Types | Public Member Functions | List of all members
pss::astrotypes::FrequencyTime< T, Alloc > Class Template Reference

A template class representing values associated with a time and frequecny such as Stokes values or voltages. More...

#include <src/cpp/pss/astrotypes/types/TimeFrequency.h>

Inheritance diagram for pss::astrotypes::FrequencyTime< T, Alloc >:
Inheritance graph

Public Types

typedef BaseT::Channel Channel
 
typedef BaseT::ConstChannel ConstChannel
 
typedef BaseT::Spectra Spectra
 
typedef BaseT::ConstSpectra ConstSpectra
 
- Public Types inherited from pss::astrotypes::TimeFreqCommon< MultiArray< Alloc, T, TimeFreqCommon, units::Frequency, units::Time > >
typedef MultiArray< Alloc, T, TimeFreqCommon, units::Frequency, units::Time >::template OperatorSliceType< units::Frequency >::type Channel
 
typedef MultiArray< Alloc, T, TimeFreqCommon, units::Frequency, units::Time >::template ConstOperatorSliceType< units::Frequency >::type ConstChannel
 
typedef MultiArray< Alloc, T, TimeFreqCommon, units::Frequency, units::Time >::template OperatorSliceType< units::Time >::type Spectra
 
typedef MultiArray< Alloc, T, TimeFreqCommon, units::Frequency, units::Time >::template ConstOperatorSliceType< units::Time >::type ConstSpectra
 
- Public Types inherited from pss::astrotypes::MultiArray< Alloc, T, TimeFreqCommon, units::Frequency, units::Time >
typedef BaseT::iterator iterator
 
typedef BaseT::const_iterator const_iterator
 
typedef BaseT::value_type value_type
 
typedef TimeFreqCommon< Slice< false, SelfType, TimeFreqCommon, units::Frequency, OtherDimensions...> > SliceType
 
typedef TimeFreqCommon< Slice< true, SelfType, TimeFreqCommon, units::Frequency, OtherDimensions...> > ConstSliceType
 
typedef SliceType::template OperatorSliceType< units::Frequency >::type ReducedDimensionSliceType
 
typedef ConstSliceType::template ConstOperatorSliceType< units::Frequency >::type ConstReducedDimensionSliceType
 
typedef T & reference_type
 
typedef T const & const_reference_type
 

Public Member Functions

 FrequencyTime ()
 
 FrequencyTime (DimensionSize< units::Frequency >, DimensionSize< units::Time >)
 
 FrequencyTime (DimensionSize< units::Time >, DimensionSize< units::Frequency >)
 
template<typename TimeFrequencyType , typename Enable = typename std::enable_if< has_exact_dimensions<TimeFrequencyType, units::Time, units::Frequency>::value>::type>
 FrequencyTime (TimeFrequencyType const &)
 The transpose constructor. More...
 
 ~FrequencyTime ()
 
- Public Member Functions inherited from pss::astrotypes::TimeFreqCommon< MultiArray< Alloc, T, TimeFreqCommon, units::Frequency, units::Time > >
 TimeFreqCommon ()
 
 TimeFreqCommon (TimeFreqCommon const &)
 
 TimeFreqCommon (MultiArray< Alloc, T, TimeFreqCommon, units::Frequency, units::Time >const &t)
 
 TimeFreqCommon (MultiArray< Alloc, T, TimeFreqCommon, units::Frequency, units::Time > &&t)
 
Channel channel (std::size_t channel_number)
 retrun a single channel across all time samples More...
 
ConstChannel channel (std::size_t channel_number) const
 
Spectra spectrum (std::size_t offset)
 return a single spectrum from the specified offset More...
 
ConstSpectra spectrum (std::size_t offset) const
 
std::size_t number_of_channels () const
 return the number of channels in the data structure More...
 
std::size_t number_of_spectra () const
 return the number of spectra in the data structure More...
 
- Public Member Functions inherited from pss::astrotypes::MultiArray< Alloc, T, TimeFreqCommon, units::Frequency, units::Time >
 MultiArray (DimensionSize< Dim > size, DimensionSize< Dims >...sizes)
 
 MultiArray (MultiArray const &)=default
 copy operator needs to be called explicitly as this is an expensive operation More...
 
 MultiArray (DimensionType const &)
 initialise and transpose from a group with different memory ordering More...
 
iterator begin ()
 iterators acting over he entire data structure More...
 
const_iterator begin () const
 
iterator end ()
 
const_iterator end () const
 
const_iterator cbegin () const
 
const_iterator cend () const
 
ReducedDimensionSliceType operator[] (DimensionIndex< units::Frequency > index)
 take a slice of width 1 data at the specified index of the first dimension More...
 
ConstReducedDimensionSliceType operator[] (DimensionIndex< units::Frequency > index) const
 
std::enable_if< has_dimension< MultiArray, Dim >::value &&!std::is_same< Dim, units::Frequency >::value, typename OperatorSliceType< Dim >::type >::type operator[] (DimensionIndex< Dim > const &)
 
std::enable_if< has_dimension< MultiArray, Dim >::value &&!std::is_same< Dim, units::Frequency >::value, typename ConstOperatorSliceType< Dim >::type >::type operator[] (DimensionIndex< Dim > const &) const
 
std::enable_if< std::is_same< Dim, units::Frequency >::value, DimensionSize< units::Frequency > >::type size () const
 return a slice of the specified dimension spanning the index_range provided More...
 
std::enable_if<!std::is_same< Dim, units::Frequency >::value, DimensionSize< Dim > >::type size () const
 
std::enable_if< std::is_same< Dim, units::Frequency >::value, DimensionSize< units::Frequency > >::type dimension () const
 
std::enable_if<!std::is_same< Dim, units::Frequency >::value, DimensionSize< Dim > >::type dimension () const
 
std::size_t data_size () const
 the total size of data in all dimensions More...
 
bool operator== (MultiArray const &) const
 compare data in the two arrays More...
 
bool equal_size (MultiArray const &) const
 return true if the sizes of each dimension are equivalent More...
 

Additional Inherited Members

- Protected Member Functions inherited from pss::astrotypes::MultiArray< Alloc, T, TimeFreqCommon, units::Frequency, units::Time >
 MultiArray (typename std::enable_if< arg_helper< units::Frequency, Dims...>::value, bool >::type disable_resize_tag, DimensionSize< Dims > const &...)
 
 MultiArray (typename std::enable_if< has_dimensions< DimensionType, units::Frequency, OtherDimensions...>::value, bool >::type disable_transpose_tag, DimensionType const &d)
 
std::enable_if<!arg_helper< units::Frequency, Dimension, Dims...>::value, void >::type do_resize (std::size_t total, DimensionSize< Dimension > size, DimensionSize< Dims >...sizes)
 
std::enable_if<!arg_helper< units::Frequency, Dimension, Dims...>::value, void >::type do_resize (std::size_t total, DimensionSize< Dimension > size, DimensionSize< Dims >...sizes, T const &value)
 
std::enable_if< arg_helper< units::Frequency, Dimension, Dims...>::value, void >::type do_resize (std::size_t total, DimensionSize< Dimension > size, DimensionSize< Dims >...sizes)
 
std::enable_if< arg_helper< units::Frequency, Dimension, Dims...>::value, void >::type do_resize (std::size_t total, DimensionSize< Dimension > size, DimensionSize< Dims >...sizes, T const &value)
 
void do_resize (std::size_t total)
 
void do_resize (std::size_t total, T const &value)
 
void do_transpose (SelfSlice &, OtherSlice const &)
 

Detailed Description

template<typename T, typename Alloc = std::allocator<T>>
class pss::astrotypes::FrequencyTime< T, Alloc >

A template class representing values associated with a time and frequecny such as Stokes values or voltages.

Stored as a multiple contiguous time series. This can be used in exactly the same calls as the TimeFrequency object. They are designed to be interchangable without having to rewrite any code that uses this interface.

Definition at line 151 of file TimeFrequency.h.

Member Typedef Documentation

template<typename T, typename Alloc = std::allocator<T>>
typedef BaseT::Channel pss::astrotypes::FrequencyTime< T, Alloc >::Channel

Definition at line 157 of file TimeFrequency.h.

template<typename T, typename Alloc = std::allocator<T>>
typedef BaseT::ConstChannel pss::astrotypes::FrequencyTime< T, Alloc >::ConstChannel

Definition at line 158 of file TimeFrequency.h.

template<typename T, typename Alloc = std::allocator<T>>
typedef BaseT::ConstSpectra pss::astrotypes::FrequencyTime< T, Alloc >::ConstSpectra

Definition at line 160 of file TimeFrequency.h.

template<typename T, typename Alloc = std::allocator<T>>
typedef BaseT::Spectra pss::astrotypes::FrequencyTime< T, Alloc >::Spectra

Definition at line 159 of file TimeFrequency.h.

Constructor & Destructor Documentation

template<typename T , typename Alloc >
pss::astrotypes::FrequencyTime< T, Alloc >::FrequencyTime ( )

Definition at line 63 of file TimeFrequency.cpp.

template<typename T , typename Alloc >
pss::astrotypes::FrequencyTime< T, Alloc >::FrequencyTime ( DimensionSize< units::Frequency freq_size,
DimensionSize< units::Time time_size 
)

Definition at line 69 of file TimeFrequency.cpp.

template<typename T , typename Alloc >
pss::astrotypes::FrequencyTime< T, Alloc >::FrequencyTime ( DimensionSize< units::Time time_size,
DimensionSize< units::Frequency freq_size 
)

Definition at line 75 of file TimeFrequency.cpp.

template<typename T , typename Alloc >
template<typename TimeFrequencyType , typename Enable >
pss::astrotypes::FrequencyTime< T, Alloc >::FrequencyTime ( TimeFrequencyType const &  tf)

The transpose constructor.

copy data from a TimeFrequency object

Definition at line 82 of file TimeFrequency.cpp.

template<typename T , typename Alloc >
pss::astrotypes::FrequencyTime< T, Alloc >::~FrequencyTime ( )

Definition at line 88 of file TimeFrequency.cpp.