blob: a22ed3a2721ab4368b21ee8ade515bd013e02419 [file] [log] [blame]
Ron Shacham0eba05c2020-05-08 15:13:19 -04001/*-
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 _CONSTR_SEQUENCE_H_
6#define _CONSTR_SEQUENCE_H_
7
8#include <asn_application.h>
9
10#ifdef __cplusplus
11extern "C" {
12#endif
13
14typedef struct asn_SEQUENCE_specifics_s {
15 /*
16 * Target structure description.
17 */
18 unsigned struct_size; /* Size of the target structure. */
19 unsigned ctx_offset; /* Offset of the asn_struct_ctx_t member */
20
21 /*
22 * Tags to members mapping table (sorted).
23 */
24 const asn_TYPE_tag2member_t *tag2el;
25 unsigned tag2el_count;
26
27 /*
28 * Optional members of the extensions root (roms) or additions (aoms).
29 * Meaningful for PER.
30 */
31 const int *oms; /* Optional MemberS */
32 unsigned roms_count; /* Root optional members count */
33 unsigned aoms_count; /* Additions optional members count */
34
35 /*
36 * Description of an extensions group.
37 * Root components are clustered at the beginning of the structure,
38 * whereas extensions are clustered at the end. -1 means not extensible.
39 */
40 signed first_extension; /* First extension addition */
41} asn_SEQUENCE_specifics_t;
42
43
44/*
45 * A set specialized functions dealing with the SEQUENCE type.
46 */
47asn_struct_free_f SEQUENCE_free;
48asn_struct_print_f SEQUENCE_print;
49asn_struct_compare_f SEQUENCE_compare;
50asn_constr_check_f SEQUENCE_constraint;
51ber_type_decoder_f SEQUENCE_decode_ber;
52der_type_encoder_f SEQUENCE_encode_der;
53xer_type_decoder_f SEQUENCE_decode_xer;
54xer_type_encoder_f SEQUENCE_encode_xer;
55oer_type_decoder_f SEQUENCE_decode_oer;
56oer_type_encoder_f SEQUENCE_encode_oer;
57per_type_decoder_f SEQUENCE_decode_uper;
58per_type_encoder_f SEQUENCE_encode_uper;
59per_type_decoder_f SEQUENCE_decode_aper;
60per_type_encoder_f SEQUENCE_encode_aper;
61asn_random_fill_f SEQUENCE_random_fill;
62extern asn_TYPE_operation_t asn_OP_SEQUENCE;
63
64#ifdef __cplusplus
65}
66#endif
67
68#endif /* _CONSTR_SEQUENCE_H_ */