Codec structure. More...
#include <codec_interface.h>

Data Fields | |
| char | name [16] |
| Name of the codec. | |
| char | mimetype [32] |
| MIME type associated with the codec. | |
| char | extension [8] |
| Serialized file extension. | |
| VOLK_CodecFeatures | features |
| term_enc_fn_t | encode_term |
| Feature flags. | |
| encode_gr_init_fn_t | encode_graph_init |
| Graph encoder initialization. | |
| encode_gr_iter_fn_t | encode_graph_iter |
| Graph encoder iteration. | |
| encode_gr_done_fn_t | encode_graph_done |
| Graph encoder finalization. | |
| encode_ds_init_fn_t | encode_dset_init |
| dataset encoder initialization. | |
| encode_ds_iter_fn_t | encode_dset_iter |
| dataset encoder iteration. | |
| encode_ds_done_fn_t | encode_dset_done |
| dataset encoder finalization. | |
| encode_store_init_fn_t | encode_store_init |
| store encoder initialization. | |
| encode_store_iter_fn_t | encode_store_iter |
| store encoder iteration. | |
| encode_store_done_fn_t | encode_store_done |
| store encoder finalization. | |
| decode_term_fn_t | decode_term |
| Term decoder function. | |
| decode_gr_fn_t | decode_graph |
| Graph decoder function. | |
| decode_ds_init_fn_t | decode_dset_init |
| dataset decoder initialization. | |
| decode_ds_iter_fn_t | decode_dset_iter |
| dataset decoder iteration. | |
| decode_ds_done_fn_t | decode_dset_done |
| dataset decoder finalization. | |
Codec structure.
An instance of this structure is a singleton defined at compile time (see examples in "include/codec_*.h" and "src/codec_*.c") and MUST have the following defined:
Additionally, it MAY implement any of the following encoding and decoding functions, depending on the scope of the codec:
For documentation on the individual encoding and decoding callbacks, see the related function prototypes.
This interface is abstracted by the high-level codec module. Non-implemented functions MUST be set to NULL so that the codec module can handle exceptions gracefully.
Definition at line 504 of file codec_interface.h.
| char VOLK_Codec::name[16] |
Name of the codec.
Definition at line 505 of file codec_interface.h.
| char VOLK_Codec::mimetype[32] |
MIME type associated with the codec.
Definition at line 506 of file codec_interface.h.
| char VOLK_Codec::extension[8] |
Serialized file extension.
Definition at line 507 of file codec_interface.h.
| VOLK_CodecFeatures VOLK_Codec::features |
Definition at line 508 of file codec_interface.h.
| term_enc_fn_t VOLK_Codec::encode_term |
| encode_gr_init_fn_t VOLK_Codec::encode_graph_init |
Graph encoder initialization.
Definition at line 513 of file codec_interface.h.
| encode_gr_iter_fn_t VOLK_Codec::encode_graph_iter |
Graph encoder iteration.
Definition at line 514 of file codec_interface.h.
| encode_gr_done_fn_t VOLK_Codec::encode_graph_done |
Graph encoder finalization.
Definition at line 515 of file codec_interface.h.
| encode_ds_init_fn_t VOLK_Codec::encode_dset_init |
dataset encoder initialization.
Definition at line 517 of file codec_interface.h.
| encode_ds_iter_fn_t VOLK_Codec::encode_dset_iter |
dataset encoder iteration.
Definition at line 518 of file codec_interface.h.
| encode_ds_done_fn_t VOLK_Codec::encode_dset_done |
dataset encoder finalization.
Definition at line 519 of file codec_interface.h.
| encode_store_init_fn_t VOLK_Codec::encode_store_init |
store encoder initialization.
Definition at line 521 of file codec_interface.h.
| encode_store_iter_fn_t VOLK_Codec::encode_store_iter |
store encoder iteration.
Definition at line 522 of file codec_interface.h.
| encode_store_done_fn_t VOLK_Codec::encode_store_done |
store encoder finalization.
Definition at line 523 of file codec_interface.h.
| decode_term_fn_t VOLK_Codec::decode_term |
Term decoder function.
Definition at line 526 of file codec_interface.h.
| decode_gr_fn_t VOLK_Codec::decode_graph |
Graph decoder function.
Definition at line 528 of file codec_interface.h.
| decode_ds_init_fn_t VOLK_Codec::decode_dset_init |
dataset decoder initialization.
Definition at line 530 of file codec_interface.h.
| decode_ds_iter_fn_t VOLK_Codec::decode_dset_iter |
dataset decoder iteration.
Definition at line 531 of file codec_interface.h.
| decode_ds_done_fn_t VOLK_Codec::decode_dset_done |
dataset decoder finalization.
Definition at line 532 of file codec_interface.h.