#include <stdlib.h>
#include <string.h>
#include <math.h>
#include <ogg/ogg.h>
#include "vorbis/codec.h"
#include "codec_internal.h"
#include "registry.h"
#include "codebook.h"
#include "misc.h"
#include "scales.h"
#include <stdio.h>
#define floor1_rangedB …
lsfit_acc;
static void floor1_free_info(vorbis_info_floor *i){ … }
static void floor1_free_look(vorbis_look_floor *i){ … }
static void floor1_pack (vorbis_info_floor *i,oggpack_buffer *opb){ … }
static int icomp(const void *a,const void *b){ … }
static vorbis_info_floor *floor1_unpack (vorbis_info *vi,oggpack_buffer *opb){ … }
static vorbis_look_floor *floor1_look(vorbis_dsp_state *vd,
vorbis_info_floor *in){ … }
static int render_point(int x0,int x1,int y0,int y1,int x){ … }
static int vorbis_dBquant(const float *x){ … }
static const float FLOOR1_fromdB_LOOKUP[256]= …;
static void render_line(int n, int x0,int x1,int y0,int y1,float *d){ … }
static void render_line0(int n, int x0,int x1,int y0,int y1,int *d){ … }
static int accumulate_fit(const float *flr,const float *mdct,
int x0, int x1,lsfit_acc *a,
int n,vorbis_info_floor1 *info){ … }
static int fit_line(lsfit_acc *a,int fits,int *y0,int *y1,
vorbis_info_floor1 *info){ … }
static int inspect_error(int x0,int x1,int y0,int y1,const float *mask,
const float *mdct,
vorbis_info_floor1 *info){ … }
static int post_Y(int *A,int *B,int pos){ … }
int *floor1_fit(vorbis_block *vb,vorbis_look_floor1 *look,
const float *logmdct,
const float *logmask){ … }
int *floor1_interpolate_fit(vorbis_block *vb,vorbis_look_floor1 *look,
int *A,int *B,
int del){ … }
int floor1_encode(oggpack_buffer *opb,vorbis_block *vb,
vorbis_look_floor1 *look,
int *post,int *ilogmask){ … }
static void *floor1_inverse1(vorbis_block *vb,vorbis_look_floor *in){ … }
static int floor1_inverse2(vorbis_block *vb,vorbis_look_floor *in,void *memo,
float *out){ … }
const vorbis_func_floor floor1_exportbundle= …;