Program Listing for File pad.h

Return to documentation for file (fastft/include/pad.h)

#ifndef PAD_H
#define PAD_H

#include <string.h>
#include <stdio.h>
#include <stdlib.h>

typedef enum {
    REFLECT,
    SYMMETRIC,
    EDGE,
    CONSTANT
} PaddingMode;

typedef struct {
    int width;
    float* padded_signal;
    int padded_signal_length;
    int unpadded_signal_length;
    PaddingMode mode;
    int padded_num_frames;
    int unpadded_num_frames;
} Padding;



void init_padding(Padding* padding, PaddingMode mode, int width, int unpadded_signal_length, int padded_signal_length, int unpadded_num_frames, int padded_num_frames);

void apply_padding(float* signal, int signal_length, Padding* padding);

#endif