35 ENTRY( NT, nt, nt_codec ) \
36 ENTRY( TTL, ttl, ttl_codec ) \
37 ENTRY( TRIG, trig, trig_codec ) \
45#define ENTRY(a, b, c) VOLK_CODEC_FMT_##a,
58typedef struct codec_iter_wrapper_t {
70#define ENTRY(a, b, c) case VOLK_CODEC_FMT_##a: return &c;
77 log_warn (
"No codec found for format `%s`.", fmt);
103 const VOLK_Codec *codec = VOLK_codec_get (fmt);
124VOLK_codec_encode_gr_init (
127 const VOLK_Codec *codec = VOLK_codec_get (fmt);
129 log_error (
"Graph encoding is not supported by this codec.");
187 const VOLK_Codec *codec = VOLK_codec_get (fmt);
189 log_error (
"Dataset encoding is not supported by this codec.");
238VOLK_codec_decode_term (
241 const VOLK_Codec *codec = VOLK_codec_get (fmt);
262VOLK_codec_decode_gr (
265 const VOLK_Codec *codec = VOLK_codec_get (fmt);
288VOLK_codec_decode_dset_txn (
289 void *txn, FILE *fh,
const char *data,
VOLK_Dataset *dset,
292 const VOLK_Codec *codec = VOLK_codec_get (fmt);
294 log_error (
"Store decoding is not supported by this codec.");
302#define VOLK_codec_decode_dset(...) VOLK_codec_decode_dset_txn(NULL, __VA_ARGS__)
#define NLNL(exp)
Log error and return NULL if exp is NULL.
#define VOLK_NOT_IMPL_ERR
Functionality is not implemented.
@ VOLK_CODEC_FEAT_DECODE_GR
Supports decoding a graph.
@ VOLK_CODEC_FEAT_ENCODE_GR
Supports encoding a graph.
@ VOLK_CODEC_FEAT_ENCODE_DS
Supports encoding a data set.
@ VOLK_CODEC_FEAT_DECODE_TERM
Supports decoding a single term.
@ VOLK_CODEC_FEAT_ENCODE_TERM
Supports encoding a single term.
@ VOLK_CODEC_FEAT_DECODE_DS
Supports decoding a data set.
VOLK_CodecFormat
Codec formats available.
encode_term_fn_t encode_term
Feature flags.
encode_dset_done_fn_t encode_dset_done
dataset encoder finalization.
decode_gr_fn_t decode_graph
Graph decoder function.
encode_gr_done_fn_t encode_graph_done
Graph encoder finalization.
encode_dset_init_fn_t encode_dset_init
dataset encoder initialization.
encode_gr_init_fn_t encode_graph_init
Graph encoder initialization.
decode_dset_fn_t decode_dset
Dataset decoder function.
VOLK_CodecFeatures features
decode_term_fn_t decode_term
Term decoder function.
encode_gr_iter_fn_t encode_graph_iter
Graph encoder iteration.
encode_dset_iter_fn_t encode_dset_iter
dataset encoder iteration.