further runtime support for information object classes
diff --git a/skeletons/constr_CHOICE.h b/skeletons/constr_CHOICE.h
index 3c3b6ca..0aedcf7 100644
--- a/skeletons/constr_CHOICE.h
+++ b/skeletons/constr_CHOICE.h
@@ -28,7 +28,7 @@
unsigned tag2el_count;
/* Canonical ordering of CHOICE elements, for PER */
- const int *canonical_order;
+ const unsigned *canonical_order;
/*
* Extensions-related stuff.
@@ -51,6 +51,22 @@
per_type_encoder_f CHOICE_encode_uper;
asn_outmost_tag_f CHOICE_outmost_tag;
+/*
+ * Return the 1-based choice variant presence index.
+ * Returns 0 in case of error.
+ */
+unsigned CHOICE_variant_get_presence(const asn_TYPE_descriptor_t *td,
+ const void *structure_ptr);
+
+/*
+ * Sets or resets the 1-based choice variant presence index.
+ * In case a previous index is not zero, the currently selected structure
+ * member is freed and zeroed-out first.
+ * Returns 0 on success and -1 on error.
+ */
+int CHOICE_variant_set_presence(const asn_TYPE_descriptor_t *td,
+ void *structure_ptr, unsigned present);
+
#ifdef __cplusplus
}
#endif