SIM-115: update simulator to use latest E2SM KPM version 3
[sim/e2-interface.git] / e2sim / 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 #define BIT_STRING_free OCTET_STRING_free
28
29 #if !defined(ASN_DISABLE_PRINT_SUPPORT)
30 asn_struct_print_f BIT_STRING_print;  /* Human-readable output */
31 #endif  /* !defined(ASN_DISABLE_PRINT_SUPPORT) */
32
33 asn_struct_compare_f BIT_STRING_compare;
34
35 asn_constr_check_f BIT_STRING_constraint;
36
37 #if !defined(ASN_DISABLE_BER_SUPPORT)
38 #define BIT_STRING_decode_ber OCTET_STRING_decode_ber
39 #define BIT_STRING_encode_der OCTET_STRING_encode_der
40 #endif  /* !defined(ASN_DISABLE_BER_SUPPORT) */
41
42 #if !defined(ASN_DISABLE_XER_SUPPORT)
43 #define BIT_STRING_decode_xer OCTET_STRING_decode_xer_binary
44 xer_type_encoder_f BIT_STRING_encode_xer;
45 #endif  /* !defined(ASN_DISABLE_XER_SUPPORT) */
46
47 #if !defined(ASN_DISABLE_JER_SUPPORT)
48 jer_type_encoder_f BIT_STRING_encode_jer;
49 #endif  /* !defined(ASN_DISABLE_JER_SUPPORT) */
50
51 #if !defined(ASN_DISABLE_OER_SUPPORT)
52 oer_type_decoder_f BIT_STRING_decode_oer;
53 oer_type_encoder_f BIT_STRING_encode_oer;
54 #endif  /* !defined(ASN_DISABLE_OER_SUPPORT) */
55
56 #if !defined(ASN_DISABLE_UPER_SUPPORT)
57 per_type_decoder_f BIT_STRING_decode_uper;
58 per_type_encoder_f BIT_STRING_encode_uper;
59 #endif  /* !defined(ASN_DISABLE_UPER_SUPPORT) */
60 #if !defined(ASN_DISABLE_APER_SUPPORT)
61 #define BIT_STRING_decode_aper OCTET_STRING_decode_aper
62 #define BIT_STRING_encode_aper OCTET_STRING_encode_aper
63 #endif  /* !defined(ASN_DISABLE_APER_SUPPORT) */
64
65 #if !defined(ASN_DISABLE_RFILL_SUPPORT)
66 asn_random_fill_f BIT_STRING_random_fill;
67 #endif  /* !defined(ASN_DISABLE_RFILL_SUPPORT) */
68
69 const BIT_STRING_t *BIT_STRING__compactify(const BIT_STRING_t *st, BIT_STRING_t *tmp);
70
71 #ifdef __cplusplus
72 }
73 #endif
74
75 #endif  /* _BIT_STRING_H_ */