amduat/include/amduat/enc/asl1_core.h

43 lines
919 B
C

#ifndef AMDUAT_ENC_ASL1_CORE_H
#define AMDUAT_ENC_ASL1_CORE_H
#include "amduat/asl/core.h"
#include <stdbool.h>
#include <stddef.h>
#include <stdint.h>
#ifdef __cplusplus
extern "C" {
#endif
enum { AMDUAT_ENC_ASL1_CORE_V1 = 0x0001 };
typedef struct {
amduat_asl_encoding_profile_id_t profile_id;
const char *name;
uint16_t version;
void *impl;
} amduat_enc_asl1_core_profile_desc_t;
amduat_octets_t amduat_enc_asl1_core_key(
amduat_asl_encoding_profile_id_t profile_id,
uint8_t out[2]);
const amduat_enc_asl1_core_profile_desc_t *
amduat_enc_asl1_core_desc_lookup(
amduat_asl_encoding_profile_id_t profile_id);
const amduat_enc_asl1_core_profile_desc_t *
amduat_enc_asl1_core_descs(size_t *out_len);
bool amduat_enc_asl1_core_register_impl(
amduat_asl_encoding_profile_id_t profile_id,
void *impl);
#ifdef __cplusplus
} /* extern "C" */
#endif
#endif /* AMDUAT_ENC_ASL1_CORE_H */