2 * Copyright (c) 2003-2017 Lev Walkin <vlm@lionet.info>. All rights reserved.
3 * Redistribution and modifications are permitted subject to BSD license.
5 #ifndef _CONSTR_SEQUENCE_H_
6 #define _CONSTR_SEQUENCE_H_
8 #include <asn_application.h>
14 typedef struct asn_SEQUENCE_specifics_s {
16 * Target structure description.
18 unsigned struct_size; /* Size of the target structure. */
19 unsigned ctx_offset; /* Offset of the asn_struct_ctx_t member */
22 * Tags to members mapping table (sorted).
24 const asn_TYPE_tag2member_t *tag2el;
25 unsigned tag2el_count;
28 * Optional members of the extensions root (roms) or additions (aoms).
31 const int *oms; /* Optional MemberS */
32 unsigned roms_count; /* Root optional members count */
33 unsigned aoms_count; /* Additions optional members count */
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.
40 signed first_extension; /* First extension addition */
41 } asn_SEQUENCE_specifics_t;
45 * A set specialized functions dealing with the SEQUENCE type.
47 asn_struct_free_f SEQUENCE_free;
48 asn_struct_print_f SEQUENCE_print;
49 asn_struct_compare_f SEQUENCE_compare;
50 asn_constr_check_f SEQUENCE_constraint;
51 ber_type_decoder_f SEQUENCE_decode_ber;
52 der_type_encoder_f SEQUENCE_encode_der;
53 xer_type_decoder_f SEQUENCE_decode_xer;
54 xer_type_encoder_f SEQUENCE_encode_xer;
55 oer_type_decoder_f SEQUENCE_decode_oer;
56 oer_type_encoder_f SEQUENCE_encode_oer;
57 per_type_decoder_f SEQUENCE_decode_uper;
58 per_type_encoder_f SEQUENCE_encode_uper;
59 asn_random_fill_f SEQUENCE_random_fill;
60 extern asn_TYPE_operation_t asn_OP_SEQUENCE;
66 #endif /* _CONSTR_SEQUENCE_H_ */