14 #ifndef FFTCOMPRESSOR_H
15 #define FFTCOMPRESSOR_H
44 static bool is_compression_available();
46 void set_quality(
int quality);
47 int get_quality()
const;
49 void set_use_error_threshold(
bool use_error_threshold);
50 bool get_use_error_threshold()
const;
52 void set_transpose_quats(
bool flag);
53 bool get_transpose_quats()
const;
55 void write_header(
Datagram &datagram);
56 void write_reals(
Datagram &datagram,
const PN_stdfloat *array,
int length);
57 void write_hprs(
Datagram &datagram,
const LVecBase3 *array,
int length);
65 static void free_storage();
74 RW_length_mask = 0x3f,
83 int write_run(
Datagram &datagram, RunWidth run_width,
84 const vector_double &run);
86 double get_scale_factor(
int i,
int length)
const;
87 static double interpolate(
double t,
double a,
double b);
89 PN_stdfloat get_compressability(
const PN_stdfloat *data,
int length)
const;
91 int _bam_minor_version;
93 bool _use_error_threshold;
97 bool _transpose_quats;