HephAudio v3.0.6
A cross-platform C++ library for recording, playing, and processing audio on Windows, Android, Linux, iOS, and macOS.
Loading...
Searching...
No Matches
Heph::ComplexBuffer Class Referencefinal

buffer for storing complex numbers. More...

#include <ComplexBuffer.h>

Inheritance diagram for Heph::ComplexBuffer:
Heph::BufferBase< ComplexBuffer, Complex > Heph::BufferArithmeticOperators< ComplexBuffer, Complex > Heph::BufferArithmeticOperators< ComplexBuffer, Complex, double > Heph::BufferArithmeticOperators< ComplexBuffer, Complex, ComplexBuffer, Complex > Heph::BufferArithmeticOperators< ComplexBuffer, Complex, DoubleBuffer, double > Heph::BufferUnaryMinusOperator< ComplexBuffer, Complex > Heph::BufferDivisionOperator< ComplexBuffer, Complex, DoubleBuffer, double > Heph::BufferMultiplicationOperator< ComplexBuffer, Complex, DoubleBuffer, double > Heph::BufferSubtractionOperator< ComplexBuffer, Complex, DoubleBuffer, double > Heph::BufferAdditionOperator< ComplexBuffer, Complex, DoubleBuffer, double > Heph::BufferDivisionOperator< ComplexBuffer, Complex, ComplexBuffer, Complex > Heph::BufferMultiplicationOperator< ComplexBuffer, Complex, ComplexBuffer, Complex > Heph::BufferSubtractionOperator< ComplexBuffer, Complex, ComplexBuffer, Complex > Heph::BufferAdditionOperator< ComplexBuffer, Complex, ComplexBuffer, Complex > Heph::BufferDivisionOperator< ComplexBuffer, Complex, double, double > Heph::BufferMultiplicationOperator< ComplexBuffer, Complex, double, double > Heph::BufferSubtractionOperator< ComplexBuffer, Complex, double, double > Heph::BufferAdditionOperator< ComplexBuffer, Complex, double, double > Heph::BufferDivisionOperator< ComplexBuffer, Complex, Complex, Complex > Heph::BufferMultiplicationOperator< ComplexBuffer, Complex, Complex, Complex > Heph::BufferSubtractionOperator< ComplexBuffer, Complex, Complex, Complex > Heph::BufferAdditionOperator< ComplexBuffer, Complex, Complex, Complex >

Public Member Functions

 ComplexBuffer ()
 
 ComplexBuffer (size_t size)
 
 ComplexBuffer (size_t size, BufferFlags flags)
 
 ComplexBuffer (const std::initializer_list< double > &rhs)
 
 ComplexBuffer (const std::initializer_list< Complex > &rhs)
 
 ComplexBuffer (const DoubleBuffer &rhs)
 
 ComplexBuffer (const ComplexBuffer &rhs)
 
 ComplexBuffer (ComplexBuffer &&rhs) noexcept
 
ComplexBufferoperator= (const std::initializer_list< double > &rhs)
 
ComplexBufferoperator= (const std::initializer_list< Complex > &rhs)
 
ComplexBufferoperator= (const DoubleBuffer &rhs)
 
ComplexBufferoperator= (const ComplexBuffer &rhs)
 
ComplexBufferoperator= (ComplexBuffer &&rhs) noexcept
 
void Invert ()
 
- Public Member Functions inherited from Heph::BufferBase< ComplexBuffer, Complex >
virtual ~BufferBase ()
 
virtual ComplexBuffer operator<< (size_t rhs) const
 
virtual ComplexBufferoperator<<= (size_t rhs)
 
virtual ComplexBuffer operator>> (size_t rhs) const
 
virtual ComplexBufferoperator>>= (size_t rhs)
 
virtual bool operator== (const ComplexBuffer &rhs) const
 
virtual bool operator!= (const ComplexBuffer &rhs) const
 
Complexoperator[] (size_t index) const
 
size_t Size () const
 
size_t SizeAsByte () const
 
ComplexAt (size_t index) const
 
virtual bool IsEmpty () const
 
virtual void Reset ()
 
virtual void Release ()
 
virtual ComplexBuffer SubBuffer (size_t index, size_t size) const
 
virtual void Prepend (const ComplexBuffer &rhs)
 
virtual void Append (const ComplexBuffer &rhs)
 
virtual void Insert (const ComplexBuffer &rhs, size_t index)
 
virtual void Cut (size_t index, size_t size)
 
virtual void Replace (const ComplexBuffer &rhs, size_t index)
 
virtual void Replace (const ComplexBuffer &rhs, size_t index, size_t size)
 
virtual void Resize (size_t newSize)
 
virtual void Reverse ()
 
Complexbegin () const
 
Complexend () const
 
- Public Member Functions inherited from Heph::BufferArithmeticOperators< ComplexBuffer, Complex >
 BufferArithmeticOperators (const BufferArithmeticOperators &)=delete
 
BufferArithmeticOperatorsoperator= (const BufferArithmeticOperators &)=delete
 
- Public Member Functions inherited from Heph::BufferAdditionOperator< ComplexBuffer, Complex, Complex, Complex >
 BufferAdditionOperator (const BufferAdditionOperator &)=delete
 
BufferAdditionOperatoroperator= (const BufferAdditionOperator &)=delete
 
- Public Member Functions inherited from Heph::BufferSubtractionOperator< ComplexBuffer, Complex, Complex, Complex >
 BufferSubtractionOperator (const BufferSubtractionOperator &)=delete
 
BufferSubtractionOperatoroperator= (const BufferSubtractionOperator &)=delete
 
- Public Member Functions inherited from Heph::BufferMultiplicationOperator< ComplexBuffer, Complex, Complex, Complex >
 BufferMultiplicationOperator (const BufferMultiplicationOperator &)=delete
 
BufferMultiplicationOperatoroperator= (const BufferMultiplicationOperator &)=delete
 
- Public Member Functions inherited from Heph::BufferDivisionOperator< ComplexBuffer, Complex, Complex, Complex >
 BufferDivisionOperator (const BufferDivisionOperator &)=delete
 
BufferDivisionOperatoroperator= (const BufferDivisionOperator &)=delete
 
- Public Member Functions inherited from Heph::BufferArithmeticOperators< ComplexBuffer, Complex, double >
 BufferArithmeticOperators (const BufferArithmeticOperators &)=delete
 
BufferArithmeticOperatorsoperator= (const BufferArithmeticOperators &)=delete
 
- Public Member Functions inherited from Heph::BufferAdditionOperator< ComplexBuffer, Complex, double, double >
 BufferAdditionOperator (const BufferAdditionOperator &)=delete
 
BufferAdditionOperatoroperator= (const BufferAdditionOperator &)=delete
 
- Public Member Functions inherited from Heph::BufferSubtractionOperator< ComplexBuffer, Complex, double, double >
 BufferSubtractionOperator (const BufferSubtractionOperator &)=delete
 
BufferSubtractionOperatoroperator= (const BufferSubtractionOperator &)=delete
 
- Public Member Functions inherited from Heph::BufferMultiplicationOperator< ComplexBuffer, Complex, double, double >
 BufferMultiplicationOperator (const BufferMultiplicationOperator &)=delete
 
BufferMultiplicationOperatoroperator= (const BufferMultiplicationOperator &)=delete
 
- Public Member Functions inherited from Heph::BufferDivisionOperator< ComplexBuffer, Complex, double, double >
 BufferDivisionOperator (const BufferDivisionOperator &)=delete
 
BufferDivisionOperatoroperator= (const BufferDivisionOperator &)=delete
 
- Public Member Functions inherited from Heph::BufferArithmeticOperators< ComplexBuffer, Complex, ComplexBuffer, Complex >
 BufferArithmeticOperators (const BufferArithmeticOperators &)=delete
 
BufferArithmeticOperatorsoperator= (const BufferArithmeticOperators &)=delete
 
- Public Member Functions inherited from Heph::BufferAdditionOperator< ComplexBuffer, Complex, ComplexBuffer, Complex >
 BufferAdditionOperator (const BufferAdditionOperator &)=delete
 
BufferAdditionOperatoroperator= (const BufferAdditionOperator &)=delete
 
- Public Member Functions inherited from Heph::BufferSubtractionOperator< ComplexBuffer, Complex, ComplexBuffer, Complex >
 BufferSubtractionOperator (const BufferSubtractionOperator &)=delete
 
BufferSubtractionOperatoroperator= (const BufferSubtractionOperator &)=delete
 
- Public Member Functions inherited from Heph::BufferMultiplicationOperator< ComplexBuffer, Complex, ComplexBuffer, Complex >
 BufferMultiplicationOperator (const BufferMultiplicationOperator &)=delete
 
BufferMultiplicationOperatoroperator= (const BufferMultiplicationOperator &)=delete
 
- Public Member Functions inherited from Heph::BufferDivisionOperator< ComplexBuffer, Complex, ComplexBuffer, Complex >
 BufferDivisionOperator (const BufferDivisionOperator &)=delete
 
BufferDivisionOperatoroperator= (const BufferDivisionOperator &)=delete
 
- Public Member Functions inherited from Heph::BufferArithmeticOperators< ComplexBuffer, Complex, DoubleBuffer, double >
 BufferArithmeticOperators (const BufferArithmeticOperators &)=delete
 
BufferArithmeticOperatorsoperator= (const BufferArithmeticOperators &)=delete
 
- Public Member Functions inherited from Heph::BufferAdditionOperator< ComplexBuffer, Complex, DoubleBuffer, double >
 BufferAdditionOperator (const BufferAdditionOperator &)=delete
 
BufferAdditionOperatoroperator= (const BufferAdditionOperator &)=delete
 
- Public Member Functions inherited from Heph::BufferSubtractionOperator< ComplexBuffer, Complex, DoubleBuffer, double >
 BufferSubtractionOperator (const BufferSubtractionOperator &)=delete
 
BufferSubtractionOperatoroperator= (const BufferSubtractionOperator &)=delete
 
- Public Member Functions inherited from Heph::BufferMultiplicationOperator< ComplexBuffer, Complex, DoubleBuffer, double >
 BufferMultiplicationOperator (const BufferMultiplicationOperator &)=delete
 
BufferMultiplicationOperatoroperator= (const BufferMultiplicationOperator &)=delete
 
- Public Member Functions inherited from Heph::BufferDivisionOperator< ComplexBuffer, Complex, DoubleBuffer, double >
 BufferDivisionOperator (const BufferDivisionOperator &)=delete
 
BufferDivisionOperatoroperator= (const BufferDivisionOperator &)=delete
 
- Public Member Functions inherited from Heph::BufferUnaryMinusOperator< ComplexBuffer, Complex >
 BufferUnaryMinusOperator (const BufferUnaryMinusOperator &)=delete
 
BufferUnaryMinusOperatoroperator= (const BufferUnaryMinusOperator &)=delete
 

Additional Inherited Members

- Protected Member Functions inherited from Heph::BufferBase< ComplexBuffer, Complex >
 BufferBase ()
 
 BufferBase (size_t size)
 
 BufferBase (size_t size, BufferFlags flags)
 
 BufferBase (const std::initializer_list< Complex > &rhs)
 
 BufferBase (const BufferBase &rhs)
 
 BufferBase (BufferBase &&rhs) noexcept
 
ComplexBufferoperator= (const std::initializer_list< Complex > &rhs)
 
ComplexBufferoperator= (const ComplexBuffer &rhs)
 
ComplexBufferoperator= (ComplexBuffer &&rhs) noexcept
 
- Static Protected Member Functions inherited from Heph::BufferBase< ComplexBuffer, Complex >
static size_t SizeAsByte (size_t size)
 
static ComplexSubBuffer (Complex *pThisData, size_t thisSize_byte, size_t index_byte, size_t subBufferSize_byte)
 
static ComplexPrepend (Complex *pThisData, size_t thisSize_byte, Complex *pRhsData, size_t rhsSize_byte)
 
static ComplexAppend (Complex *pThisData, size_t thisSize_byte, Complex *pRhsData, size_t rhsSize_byte)
 
static ComplexInsert (Complex *pThisData, size_t thisSize_byte, Complex *pRhsData, size_t rhsSize_byte, size_t index_byte)
 
static ComplexCut (Complex *pThisData, size_t thisSize_byte, size_t index_byte, size_t &cutSize_byte)
 
static void Replace (Complex *pThisData, size_t thisSize_byte, Complex *pRhsData, size_t rhsSize_byte, size_t index_byte)
 
static std::enable_if< std::is_class< U >::value >::type Initialize (U *pData, U *pDataEnd)
 
static std::enable_if<!std::is_class< U >::value >::type Initialize (U *pData, U *pDataEnd)
 
static ComplexAllocate (size_t size_byte)
 
static ComplexAllocateUninitialized (size_t size_byte)
 
- Protected Attributes inherited from Heph::BufferBase< ComplexBuffer, Complex >
ComplexpData
 
size_t size
 

Detailed Description

buffer for storing complex numbers.

Constructor & Destructor Documentation

◆ ComplexBuffer() [1/8]

Heph::ComplexBuffer::ComplexBuffer ( )

creates a new instance and initializes it with default values.

◆ ComplexBuffer() [2/8]

Heph::ComplexBuffer::ComplexBuffer ( size_t size)
explicit

creates a new instance and initializes it with the provided values.

Parameters
sizenumber of elements the buffer will store.

◆ ComplexBuffer() [3/8]

Heph::ComplexBuffer::ComplexBuffer ( size_t size,
BufferFlags flags )

creates a new instance and initializes it with the provided values.

Parameters
sizenumber of elements the buffer will store.
flagsflags.

◆ ComplexBuffer() [4/8]

Heph::ComplexBuffer::ComplexBuffer ( const std::initializer_list< double > & rhs)

creates a new instance and initializes it with the provided values.

Parameters
rhsa list of elements the buffer will store.

◆ ComplexBuffer() [5/8]

Heph::ComplexBuffer::ComplexBuffer ( const std::initializer_list< Complex > & rhs)

creates a new instance and initializes it with the provided values.

Parameters
rhsa list of elements the buffer will store.

◆ ComplexBuffer() [6/8]

Heph::ComplexBuffer::ComplexBuffer ( const DoubleBuffer & rhs)
explicit

creates a new instance and copies the rhs's data to it.

Parameters
rhsinstance whose data will be copied.

◆ ComplexBuffer() [7/8]

Heph::ComplexBuffer::ComplexBuffer ( const ComplexBuffer & rhs)

creates a new instance and copies the rhs's data to it.

Parameters
rhsinstance whose data will be copied.

◆ ComplexBuffer() [8/8]

Heph::ComplexBuffer::ComplexBuffer ( ComplexBuffer && rhs)
noexcept

creates a new instance and moves the rhs's data to it.

Parameters
rhsinstance whose data will be moved.

Member Function Documentation

◆ Invert()

void Heph::ComplexBuffer::Invert ( )

inverts the elements.