forked from nu774/qaac
-
Notifications
You must be signed in to change notification settings - Fork 1
/
flacmodule.h
56 lines (51 loc) · 2.17 KB
/
flacmodule.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
#ifndef _FLACMODULE_H
#define _FLACMODULE_H
#include <FLAC/all.h>
#include "dl.h"
class FLACModule {
DL m_dl;
public:
FLACModule() {}
explicit FLACModule(const std::wstring &path);
bool loaded() const { return m_dl.loaded(); }
const char *VERSION_STRING;
/* decoder interfaces */
FLAC__StreamDecoder *(*stream_decoder_new)();
FLAC__bool (*stream_decoder_finish)(FLAC__StreamDecoder *);
void (*stream_decoder_delete)(FLAC__StreamDecoder *);
FLAC__StreamDecoderInitStatus (*stream_decoder_init_stream)(
FLAC__StreamDecoder *,
FLAC__StreamDecoderReadCallback,
FLAC__StreamDecoderSeekCallback,
FLAC__StreamDecoderTellCallback,
FLAC__StreamDecoderLengthCallback,
FLAC__StreamDecoderEofCallback,
FLAC__StreamDecoderWriteCallback,
FLAC__StreamDecoderMetadataCallback,
FLAC__StreamDecoderErrorCallback,
void *);
FLAC__StreamDecoderInitStatus (*stream_decoder_init_ogg_stream)(
FLAC__StreamDecoder *,
FLAC__StreamDecoderReadCallback,
FLAC__StreamDecoderSeekCallback,
FLAC__StreamDecoderTellCallback,
FLAC__StreamDecoderLengthCallback,
FLAC__StreamDecoderEofCallback,
FLAC__StreamDecoderWriteCallback,
FLAC__StreamDecoderMetadataCallback,
FLAC__StreamDecoderErrorCallback,
void *);
FLAC__bool (*stream_decoder_set_metadata_respond)(FLAC__StreamDecoder *,
FLAC__MetadataType);
FLAC__bool
(*stream_decoder_process_until_end_of_metadata)(FLAC__StreamDecoder *);
FLAC__StreamDecoderState
(*stream_decoder_get_state)(const FLAC__StreamDecoder *);
FLAC__bool (*stream_decoder_process_single)(FLAC__StreamDecoder *);
FLAC__bool (*stream_decoder_seek_absolute)(FLAC__StreamDecoder *,
FLAC__uint64);
FLAC__bool (*stream_decoder_get_decode_position)(FLAC__StreamDecoder *,
FLAC__uint64*);
FLAC__bool (*stream_decoder_reset)(FLAC__StreamDecoder *);
};
#endif