astrotypes  0.0
Public Types | Public Member Functions | List of all members
pss::astrotypes::TimeFrequency< 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::TimeFrequency< 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::Time, units::Frequency > >
typedef MultiArray< Alloc, T, TimeFreqCommon, units::Time, units::Frequency >::template OperatorSliceType< units::Frequency >::type Channel
 
typedef MultiArray< Alloc, T, TimeFreqCommon, units::Time, units::Frequency >::template ConstOperatorSliceType< units::Frequency >::type ConstChannel
 
typedef MultiArray< Alloc, T, TimeFreqCommon, units::Time, units::Frequency >::template OperatorSliceType< units::Time >::type Spectra
 
typedef MultiArray< Alloc, T, TimeFreqCommon, units::Time, units::Frequency >::template ConstOperatorSliceType< units::Time >::type ConstSpectra
 
- Public Types inherited from pss::astrotypes::MultiArray< Alloc, T, TimeFreqCommon, units::Time, units::Frequency >
typedef BaseT::iterator iterator
 
typedef BaseT::const_iterator const_iterator
 
typedef BaseT::value_type value_type
 
typedef TimeFreqCommon< Slice< false, SelfType, TimeFreqCommon, units::Time, OtherDimensions...> > SliceType
 
typedef TimeFreqCommon< Slice< true, SelfType, TimeFreqCommon, units::Time, OtherDimensions...> > ConstSliceType
 
typedef SliceType::template OperatorSliceType< units::Time >::type ReducedDimensionSliceType
 
typedef ConstSliceType::template ConstOperatorSliceType< units::Time >::type ConstReducedDimensionSliceType
 
typedef T & reference_type
 
typedef T const & const_reference_type
 

Public Member Functions

 TimeFrequency ()
 
 TimeFrequency (DimensionSize< units::Time >, DimensionSize< units::Frequency >)
 
 TimeFrequency (DimensionSize< units::Frequency >, DimensionSize< units::Time >)
 
template<typename FrequencyTimeType , typename Enable = typename std::enable_if< has_exact_dimensions<FrequencyTimeType, units::Frequency, units::Time>::value>::type>
 TimeFrequency (FrequencyTimeType const &)
 The transpose constructor. More...
 
 ~TimeFrequency ()
 
- Public Member Functions inherited from pss::astrotypes::TimeFreqCommon< MultiArray< Alloc, T, TimeFreqCommon, units::Time, units::Frequency > >
 TimeFreqCommon ()
 
 TimeFreqCommon (TimeFreqCommon const &)
 
 TimeFreqCommon (MultiArray< Alloc, T, TimeFreqCommon, units::Time, units::Frequency >const &t)
 
 TimeFreqCommon (MultiArray< Alloc, T, TimeFreqCommon, units::Time, units::Frequency > &&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::Time, units::Frequency >
 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::Time > index)
 take a slice of width 1 data at the specified index of the first dimension More...
 
ConstReducedDimensionSliceType operator[] (DimensionIndex< units::Time > index) const
 
std::enable_if< has_dimension< MultiArray, Dim >::value &&!std::is_same< Dim, units::Time >::value, typename OperatorSliceType< Dim >::type >::type operator[] (DimensionIndex< Dim > const &)
 
std::enable_if< has_dimension< MultiArray, Dim >::value &&!std::is_same< Dim, units::Time >::value, typename ConstOperatorSliceType< Dim >::type >::type operator[] (DimensionIndex< Dim > const &) const
 
std::enable_if< std::is_same< Dim, units::Time >::value, DimensionSize< units::Time > >::type size () const
 return a slice of the specified dimension spanning the index_range provided More...
 
std::enable_if<!std::is_same< Dim, units::Time >::value, DimensionSize< Dim > >::type size () const
 
std::enable_if< std::is_same< Dim, units::Time >::value, DimensionSize< units::Time > >::type dimension () const
 
std::enable_if<!std::is_same< Dim, units::Time >::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::Time, units::Frequency >
 MultiArray (typename std::enable_if< arg_helper< units::Time, Dims...>::value, bool >::type disable_resize_tag, DimensionSize< Dims > const &...)
 
 MultiArray (typename std::enable_if< has_dimensions< DimensionType, units::Time, OtherDimensions...>::value, bool >::type disable_transpose_tag, DimensionType const &d)
 
std::enable_if<!arg_helper< units::Time, Dimension, Dims...>::value, void >::type do_resize (std::size_t total, DimensionSize< Dimension > size, DimensionSize< Dims >...sizes)
 
std::enable_if<!arg_helper< units::Time, 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::Time, Dimension, Dims...>::value, void >::type do_resize (std::size_t total, DimensionSize< Dimension > size, DimensionSize< Dims >...sizes)
 
std::enable_if< arg_helper< units::Time, 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::TimeFrequency< T, Alloc >

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

Stored as a contiguous block af complete spectrum.

Definition at line 113 of file TimeFrequency.h.

Member Typedef Documentation

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

Definition at line 119 of file TimeFrequency.h.

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

Definition at line 120 of file TimeFrequency.h.

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

Definition at line 122 of file TimeFrequency.h.

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

Definition at line 121 of file TimeFrequency.h.

Constructor & Destructor Documentation

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

Definition at line 29 of file TimeFrequency.cpp.

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

Definition at line 35 of file TimeFrequency.cpp.

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

Definition at line 41 of file TimeFrequency.cpp.

template<typename T , typename Alloc >
template<typename FrequencyTimeType , typename Enable >
pss::astrotypes::TimeFrequency< T, Alloc >::TimeFrequency ( FrequencyTimeType const &  ft)

The transpose constructor.

copy data from a FrequencyTime object

Definition at line 48 of file TimeFrequency.cpp.

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

Definition at line 54 of file TimeFrequency.cpp.