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.");
189 const VOLK_Codec *codec = VOLK_codec_get (fmt);
191 log_error (
"Dataset encoding is not supported by this codec.");
220VOLK_codec_encode_dset_iter (
251 const VOLK_Codec *codec = VOLK_codec_get (fmt);
253 log_error (
"Store encoding is not supported by this codec.");
304VOLK_codec_decode_term (
307 const VOLK_Codec *codec = VOLK_codec_get (fmt);
328VOLK_codec_decode_gr (
330 size_t *ct,
char **err)
332 const VOLK_Codec *codec = VOLK_codec_get (fmt);
357VOLK_codec_decode_dset (
358 FILE *fh,
const char *data,
VOLK_Store *store,
void *txn,
361 const VOLK_Codec *codec = VOLK_codec_get (fmt);
363 log_error (
"Store decoding is not supported by this codec.");
367 return codec->
decode_dset (fh, data, store, txn, ct, err);
@ 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_ENCODE_STORE
Supports encoding a whole store.
@ 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.
#define NLNL(exp)
Log error and return NULL if exp is NULL.
#define VOLK_NOT_IMPL_ERR
Functionality is not implemented.
Prototype for initializing a dataset decoding loop.
encode_ds_init_fn_t encode_dset_init
dataset encoder initialization.
encode_store_init_fn_t encode_store_init
store encoder initialization.
encode_ds_done_fn_t encode_dset_done
dataset encoder finalization.
encode_term_fn_t encode_term
Feature flags.
encode_store_done_fn_t encode_store_done
store encoder finalization.
decode_gr_fn_t decode_graph
Graph decoder function.
encode_gr_done_fn_t encode_graph_done
Graph encoder finalization.
encode_gr_init_fn_t encode_graph_init
Graph encoder initialization.
encode_ds_iter_fn_t encode_dset_iter
dataset encoder iteration.
VOLK_CodecFeatures features
encode_store_iter_fn_t encode_store_iter
store encoder iteration.
decode_term_fn_t decode_term
Term decoder function.
decode_ds_fn_t decode_dset
dataset decoder initialization.
encode_gr_iter_fn_t encode_graph_iter
Graph encoder iteration.