2 * Copyright (c) 2017-2017 Lev Walkin <vlm@lionet.info>. All rights reserved.
\r
3 * Redistribution and modifications are permitted subject to BSD license.
\r
5 #ifndef ASN_OPEN_TYPE_H
\r
6 #define ASN_OPEN_TYPE_H
\r
8 #include <asn_application.h>
\r
14 #define OPEN_TYPE_free CHOICE_free
\r
15 #define OPEN_TYPE_print CHOICE_print
\r
16 #define OPEN_TYPE_compare CHOICE_compare
\r
17 #define OPEN_TYPE_constraint CHOICE_constraint
\r
18 #define OPEN_TYPE_decode_ber NULL
\r
19 #define OPEN_TYPE_encode_der CHOICE_encode_der
\r
20 #define OPEN_TYPE_decode_xer NULL
\r
21 #define OPEN_TYPE_encode_xer CHOICE_encode_xer
\r
22 #define OPEN_TYPE_decode_oer NULL
\r
23 #define OPEN_TYPE_encode_oer CHOICE_encode_oer
\r
24 #define OPEN_TYPE_decode_uper NULL
\r
25 #define OPEN_TYPE_decode_aper NULL
\r
27 extern asn_TYPE_operation_t asn_OP_OPEN_TYPE;
\r
30 * Decode an Open Type which is potentially constraiend
\r
31 * by the other members of the parent structure.
\r
33 asn_dec_rval_t OPEN_TYPE_ber_get(const asn_codec_ctx_t *opt_codec_ctx,
\r
34 const asn_TYPE_descriptor_t *parent_type,
\r
35 void *parent_structure,
\r
36 const asn_TYPE_member_t *element,
\r
37 const void *ptr, size_t size);
\r
39 asn_dec_rval_t OPEN_TYPE_xer_get(const asn_codec_ctx_t *opt_codec_ctx,
\r
40 const asn_TYPE_descriptor_t *parent_type,
\r
41 void *parent_structure,
\r
42 const asn_TYPE_member_t *element,
\r
43 const void *ptr, size_t size);
\r
45 asn_dec_rval_t OPEN_TYPE_oer_get(const asn_codec_ctx_t *opt_codec_ctx,
\r
46 const asn_TYPE_descriptor_t *parent_type,
\r
47 void *parent_structure,
\r
48 asn_TYPE_member_t *element, const void *ptr,
\r
51 asn_dec_rval_t OPEN_TYPE_uper_get(const asn_codec_ctx_t *opt_codec_ctx,
\r
52 const asn_TYPE_descriptor_t *parent_type,
\r
53 void *parent_structure,
\r
54 const asn_TYPE_member_t *element,
\r
55 asn_per_data_t *pd);
\r
57 asn_dec_rval_t OPEN_TYPE_aper_get(const asn_codec_ctx_t *opt_codec_ctx,
\r
58 const asn_TYPE_descriptor_t *parent_type,
\r
59 void *parent_structure,
\r
60 const asn_TYPE_member_t *element,
\r
61 asn_per_data_t *pd);
\r
63 asn_enc_rval_t OPEN_TYPE_encode_uper(
\r
64 const asn_TYPE_descriptor_t *type_descriptor,
\r
65 const asn_per_constraints_t *constraints, const void *struct_ptr,
\r
66 asn_per_outp_t *per_output);
\r
68 asn_enc_rval_t OPEN_TYPE_encode_aper(
\r
69 const asn_TYPE_descriptor_t *type_descriptor,
\r
70 const asn_per_constraints_t *constraints, const void *struct_ptr,
\r
71 asn_per_outp_t *per_output);
\r
77 #endif /* ASN_OPEN_TYPE_H */
\r