55c961f780bc5c26478b97579d8d8618da5bab75
[ric-plt/resource-status-manager.git] / RSM / asn1codec / e2ap_engine / OPEN_TYPE.h
1
2 /*-
3  * Copyright (c) 2017-2017 Lev Walkin <vlm@lionet.info>. All rights reserved.
4  * Redistribution and modifications are permitted subject to BSD license.
5  */
6 #ifndef ASN_OPEN_TYPE_H
7 #define ASN_OPEN_TYPE_H
8
9 #include <asn_application.h>
10
11 #ifdef __cplusplus
12 extern "C" {
13 #endif
14
15 #define OPEN_TYPE_free CHOICE_free
16 #define OPEN_TYPE_print CHOICE_print
17 #define OPEN_TYPE_compare CHOICE_compare
18 #define OPEN_TYPE_constraint CHOICE_constraint
19 #define OPEN_TYPE_decode_ber NULL
20 #define OPEN_TYPE_encode_der CHOICE_encode_der
21 #define OPEN_TYPE_decode_xer NULL
22 #define OPEN_TYPE_encode_xer CHOICE_encode_xer
23 #define OPEN_TYPE_decode_oer NULL
24 #define OPEN_TYPE_encode_oer CHOICE_encode_oer
25 #define OPEN_TYPE_decode_uper NULL
26 #define OPEN_TYPE_decode_aper NULL
27
28 extern asn_TYPE_operation_t asn_OP_OPEN_TYPE;
29
30 /*
31  * Decode an Open Type which is potentially constraiend
32  * by the other members of the parent structure.
33  */
34 asn_dec_rval_t OPEN_TYPE_ber_get(const asn_codec_ctx_t *opt_codec_ctx,
35                                  const asn_TYPE_descriptor_t *parent_type,
36                                  void *parent_structure,
37                                  const asn_TYPE_member_t *element,
38                                  const void *ptr, size_t size);
39
40 asn_dec_rval_t OPEN_TYPE_xer_get(const asn_codec_ctx_t *opt_codec_ctx,
41                                  const asn_TYPE_descriptor_t *parent_type,
42                                  void *parent_structure,
43                                  const asn_TYPE_member_t *element,
44                                  const void *ptr, size_t size);
45
46 asn_dec_rval_t OPEN_TYPE_oer_get(const asn_codec_ctx_t *opt_codec_ctx,
47                                  const asn_TYPE_descriptor_t *parent_type,
48                                  void *parent_structure,
49                                  asn_TYPE_member_t *element, const void *ptr,
50                                  size_t size);
51
52 asn_dec_rval_t OPEN_TYPE_uper_get(const asn_codec_ctx_t *opt_codec_ctx,
53                                   const asn_TYPE_descriptor_t *parent_type,
54                                   void *parent_structure,
55                                   const asn_TYPE_member_t *element,
56                                   asn_per_data_t *pd);
57
58 asn_dec_rval_t OPEN_TYPE_aper_get(const asn_codec_ctx_t *opt_codec_ctx,
59                                   const asn_TYPE_descriptor_t *parent_type,
60                                   void *parent_structure,
61                                   const asn_TYPE_member_t *element,
62                                   asn_per_data_t *pd);
63
64 asn_enc_rval_t OPEN_TYPE_encode_uper(
65     const asn_TYPE_descriptor_t *type_descriptor,
66     const asn_per_constraints_t *constraints, const void *struct_ptr,
67     asn_per_outp_t *per_output);
68
69 asn_enc_rval_t OPEN_TYPE_encode_aper(
70     const asn_TYPE_descriptor_t *type_descriptor,
71     const asn_per_constraints_t *constraints, const void *struct_ptr,
72     asn_per_outp_t *per_output);
73
74 #ifdef __cplusplus
75 }
76 #endif
77
78 #endif  /* ASN_OPEN_TYPE_H */