Enum basic_dsp_vector::ErrorReason[][src]

pub enum ErrorReason {
    InputMustHaveTheSameSize,
    InputMetaDataMustAgree,
    InputMustBeComplex,
    InputMustBeReal,
    InputMustBeInTimeDomain,
    InputMustBeInFrequencyDomain,
    InvalidArgumentLength,
    InputMustBeConjSymmetric,
    InputMustHaveAnOddLength,
    ArgumentFunctionMustBeSymmetric,
    InvalidNumberOfArgumentsForCombinedOp,
    InputMustNotBeEmpty,
    InputMustHaveAnEvenLength,
    TypeCanNotResize,
}

Enumeration of all error reasons

Variants

The operations requires all inputs to have the same size, in most cases this means that the following must be true: self.len() == argument.len()

The operations requires all inputs to have the same meta data. For a vector this means that the following must be true: self.is_complex() == argument.is_complex() && self.domain() == argument.domain() && self.delta()== argument.domain(); Consider to convert one of the inputs so that this condition is true. The necessary operations may include FFT/IFFT, complex/real conversion and resampling.

The operation requires the input to be complex.

The operation requires the input to be real.

The operation requires the input to be in time domain.

The operation requires the input to be in frequency domain.

The arguments have an invalid length to perform the operation. The operations documentation should have more information about the requirements. Please open a defect if this isn't the case.

The operations is only valid if the data input contains half of a symmetric spectrum. The symmetry definition follows soon however more important is that the element at 0 Hz which happens to be the first vector element must be real. The error message is raised if this is violated, the rest of the definition is only listed here for completeness snce it can't be checked. The required symmetry for a vector is that for every point vector[x].conj() == vector[-x](pseudocode) where x is the x-axis position relative to 0 Hz and conj is the complex conjugate.

self.points() must be an odd number.

The function passed as argument must be symmetric

The number of arguments passed into a combined operation methods doesn't match with the number of arguments specified previously via the add_op methods.

The operation isn't specified for an empty vector.

Given input must have an even length.

The arguments would require that the type allocates larger memory. But the type can't do that.

Trait Implementations

impl Copy for ErrorReason
[src]

impl Clone for ErrorReason
[src]

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

impl PartialEq for ErrorReason
[src]

This method tests for self and other values to be equal, and is used by ==. Read more

This method tests for !=.

impl Debug for ErrorReason
[src]

Formats the value using the given formatter. Read more

Auto Trait Implementations

impl Send for ErrorReason

impl Sync for ErrorReason