casacore
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Private Member Functions | Private Attributes | List of all members
RowTimeBlockEncoder Class Reference

#include <rowtimeblockencoder.h>

Inheritance diagram for RowTimeBlockEncoder:
TimeBlockEncoder

Public Member Functions

 RowTimeBlockEncoder (size_t nPol, size_t nChannels)
 
virtual ~RowTimeBlockEncoder () override
 
virtual void EncodeWithDithering (const dyscostman::StochasticEncoder< float > &gausEncoder, FBuffer &buffer, float *metaBuffer, symbol_t *symbolBuffer, size_t antennaCount, std::mt19937 &rnd) finaloverride
 
virtual void EncodeWithoutDithering (const dyscostman::StochasticEncoder< float > &gausEncoder, FBuffer &buffer, float *metaBuffer, symbol_t *symbolBuffer, size_t antennaCount) finaloverride
 
virtual void InitializeDecode (const float *metaBuffer, size_t nRow, size_t nAntennae) finaloverride
 
virtual void Decode (const dyscostman::StochasticEncoder< float > &gausEncoder, FBuffer &buffer, const symbol_t *symbolBuffer, size_t blockRow, size_t antenna1, size_t antenna2) finaloverride
 
virtual size_t SymbolCount (size_t nRow, size_t nPol, size_t nChannels) const finaloverride
 
virtual size_t SymbolCount (size_t nRow) const finaloverride
 
virtual size_t SymbolsPerRow () const finaloverride
 
virtual size_t MetaDataCount (size_t nRow, size_t, size_t, size_t) const finaloverride
 
- Public Member Functions inherited from TimeBlockEncoder
virtual ~TimeBlockEncoder ()
 

Private Member Functions

template<bool UseDithering>
void encode (const dyscostman::StochasticEncoder< float > &gausEncoder, const FBuffer &buffer, float *metaBuffer, symbol_t *symbolBuffer, size_t antennaCount, std::mt19937 *rnd)
 

Private Attributes

size_t _nPol
 
size_t _nChannels
 
std::uniform_int_distribution
< unsigned > 
_ditherDist
 
ao::uvector< double > _rowFactors
 

Additional Inherited Members

- Public Types inherited from TimeBlockEncoder
typedef TimeBlockBuffer
< std::complex< float > > 
FBuffer
 
typedef TimeBlockBuffer
< std::complex< float >
>::DataRow 
FBufferRow
 
typedef TimeBlockBuffer
< std::complex< double > > 
DBuffer
 
typedef TimeBlockBuffer
< std::complex< double >
>::DataRow 
DBufferRow
 
typedef unsigned symbol_t
 
- Protected Member Functions inherited from TimeBlockEncoder
 TimeBlockEncoder ()
 

Detailed Description

Definition at line 14 of file rowtimeblockencoder.h.

Constructor & Destructor Documentation

RowTimeBlockEncoder::RowTimeBlockEncoder ( size_t  nPol,
size_t  nChannels 
)
virtual RowTimeBlockEncoder::~RowTimeBlockEncoder ( )
inlineoverridevirtual

Definition at line 18 of file rowtimeblockencoder.h.

Member Function Documentation

virtual void RowTimeBlockEncoder::Decode ( const dyscostman::StochasticEncoder< float > &  gausEncoder,
FBuffer buffer,
const symbol_t symbolBuffer,
size_t  blockRow,
size_t  antenna1,
size_t  antenna2 
)
finaloverridevirtual

Implements TimeBlockEncoder.

template<bool UseDithering>
void RowTimeBlockEncoder::encode ( const dyscostman::StochasticEncoder< float > &  gausEncoder,
const FBuffer buffer,
float *  metaBuffer,
symbol_t symbolBuffer,
size_t  antennaCount,
std::mt19937 *  rnd 
)
private
virtual void RowTimeBlockEncoder::EncodeWithDithering ( const dyscostman::StochasticEncoder< float > &  gausEncoder,
FBuffer buffer,
float *  metaBuffer,
symbol_t symbolBuffer,
size_t  antennaCount,
std::mt19937 &  rnd 
)
inlinefinaloverridevirtual

Implements TimeBlockEncoder.

Definition at line 20 of file rowtimeblockencoder.h.

virtual void RowTimeBlockEncoder::EncodeWithoutDithering ( const dyscostman::StochasticEncoder< float > &  gausEncoder,
FBuffer buffer,
float *  metaBuffer,
symbol_t symbolBuffer,
size_t  antennaCount 
)
inlinefinaloverridevirtual

Implements TimeBlockEncoder.

Definition at line 28 of file rowtimeblockencoder.h.

virtual void RowTimeBlockEncoder::InitializeDecode ( const float *  metaBuffer,
size_t  nRow,
size_t  nAntennae 
)
finaloverridevirtual

Implements TimeBlockEncoder.

virtual size_t RowTimeBlockEncoder::MetaDataCount ( size_t  nRow,
size_t  ,
size_t  ,
size_t   
) const
inlinefinaloverridevirtual

Implements TimeBlockEncoder.

Definition at line 57 of file rowtimeblockencoder.h.

virtual size_t RowTimeBlockEncoder::SymbolCount ( size_t  nRow,
size_t  nPol,
size_t  nChannels 
) const
inlinefinaloverridevirtual

Implements TimeBlockEncoder.

Definition at line 44 of file rowtimeblockencoder.h.

virtual size_t RowTimeBlockEncoder::SymbolCount ( size_t  nRow) const
inlinefinaloverridevirtual

Implements TimeBlockEncoder.

Definition at line 49 of file rowtimeblockencoder.h.

References _nChannels, and _nPol.

virtual size_t RowTimeBlockEncoder::SymbolsPerRow ( ) const
inlinefinaloverridevirtual

Implements TimeBlockEncoder.

Definition at line 53 of file rowtimeblockencoder.h.

References _nChannels, and _nPol.

Member Data Documentation

std::uniform_int_distribution<unsigned> RowTimeBlockEncoder::_ditherDist
private

Definition at line 71 of file rowtimeblockencoder.h.

size_t RowTimeBlockEncoder::_nChannels
private

Definition at line 69 of file rowtimeblockencoder.h.

Referenced by SymbolCount(), and SymbolsPerRow().

size_t RowTimeBlockEncoder::_nPol
private

Definition at line 69 of file rowtimeblockencoder.h.

Referenced by SymbolCount(), and SymbolsPerRow().

ao::uvector<double> RowTimeBlockEncoder::_rowFactors
private

Definition at line 72 of file rowtimeblockencoder.h.


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