Enhanced SIM for E2AP v1 for TS UC
[sim/e2-interface.git] / e2sim / e2apv1sim / ASN1c / BIT_STRING.h
1 /*-
2  * Copyright (c) 2003-2017 Lev Walkin <vlm@lionet.info>. All rights reserved.
3  * Redistribution and modifications are permitted subject to BSD license.
4  */
5 #ifndef _BIT_STRING_H_
6 #define _BIT_STRING_H_
7
8 #include <OCTET_STRING.h>       /* Some help from OCTET STRING */
9
10 #ifdef __cplusplus
11 extern "C" {
12 #endif
13
14 typedef struct BIT_STRING_s {
15         uint8_t *buf;   /* BIT STRING body */
16         size_t size;    /* Size of the above buffer */
17
18         int bits_unused;/* Unused trailing bits in the last octet (0..7) */
19
20         asn_struct_ctx_t _asn_ctx;      /* Parsing across buffer boundaries */
21 } BIT_STRING_t;
22
23 extern asn_TYPE_descriptor_t asn_DEF_BIT_STRING;
24 extern asn_TYPE_operation_t asn_OP_BIT_STRING;
25 extern asn_OCTET_STRING_specifics_t asn_SPC_BIT_STRING_specs;
26
27 asn_struct_print_f BIT_STRING_print;    /* Human-readable output */
28 asn_struct_compare_f BIT_STRING_compare;
29 asn_constr_check_f BIT_STRING_constraint;
30 xer_type_encoder_f BIT_STRING_encode_xer;
31 oer_type_decoder_f BIT_STRING_decode_oer;
32 oer_type_encoder_f BIT_STRING_encode_oer;
33 per_type_decoder_f BIT_STRING_decode_uper;
34 per_type_encoder_f BIT_STRING_encode_uper;
35 asn_random_fill_f  BIT_STRING_random_fill;
36
37 #define BIT_STRING_free              OCTET_STRING_free
38 #define BIT_STRING_decode_ber        OCTET_STRING_decode_ber
39 #define BIT_STRING_encode_der        OCTET_STRING_encode_der
40 #define BIT_STRING_decode_xer        OCTET_STRING_decode_xer_binary
41 #define BIT_STRING_decode_aper       OCTET_STRING_decode_aper
42 #define BIT_STRING_encode_aper       OCTET_STRING_encode_aper
43
44 #ifdef __cplusplus
45 }
46 #endif
47
48 #endif  /* _BIT_STRING_H_ */