/*
 * Generated by asn1c-0.9.23 (http://lionet.info/asn1c)
 * From ASN.1 module "CHATCLEANER-PROTOCOL"
 * 	found in "../../../docs/chatcleaner.asn1"
 * 	`asn1c -fskeletons-copy`
 */

#include "ChatCleanerMessage.h"

static asn_TYPE_member_t asn_MBR_ChatCleanerMessage_1[] = {
	{	ATF_NOFLAGS, 0, offsetof(struct ChatCleanerMessage, choice.cleanerInitMessage),
		(ASN_TAG_CLASS_APPLICATION | (0 << 2)),
		0,
		&asn_DEF_CleanerInitMessage,
		0,	/* Defer constraints checking to the member type */
		0,	/* PER is not compiled, use -gen-PER */
		0,
		"cleanerInitMessage"
	},
	{	ATF_NOFLAGS, 0, offsetof(struct ChatCleanerMessage, choice.cleanerInitAckMessage),
		(ASN_TAG_CLASS_APPLICATION | (1 << 2)),
		0,
		&asn_DEF_CleanerInitAckMessage,
		0,	/* Defer constraints checking to the member type */
		0,	/* PER is not compiled, use -gen-PER */
		0,
		"cleanerInitAckMessage"
	},
	{	ATF_NOFLAGS, 0, offsetof(struct ChatCleanerMessage, choice.cleanerChatRequestMessage),
		(ASN_TAG_CLASS_APPLICATION | (2 << 2)),
		0,
		&asn_DEF_CleanerChatRequestMessage,
		0,	/* Defer constraints checking to the member type */
		0,	/* PER is not compiled, use -gen-PER */
		0,
		"cleanerChatRequestMessage"
	},
	{	ATF_NOFLAGS, 0, offsetof(struct ChatCleanerMessage, choice.cleanerChatReplyMessage),
		(ASN_TAG_CLASS_APPLICATION | (3 << 2)),
		0,
		&asn_DEF_CleanerChatReplyMessage,
		0,	/* Defer constraints checking to the member type */
		0,	/* PER is not compiled, use -gen-PER */
		0,
		"cleanerChatReplyMessage"
	},
};
static asn_TYPE_tag2member_t asn_MAP_ChatCleanerMessage_tag2el_1[] = {
	{ (ASN_TAG_CLASS_APPLICATION | (0 << 2)), 0, 0, 0 }, /* cleanerInitMessage at 26 */
	{ (ASN_TAG_CLASS_APPLICATION | (1 << 2)), 1, 0, 0 }, /* cleanerInitAckMessage at 27 */
	{ (ASN_TAG_CLASS_APPLICATION | (2 << 2)), 2, 0, 0 }, /* cleanerChatRequestMessage at 28 */
	{ (ASN_TAG_CLASS_APPLICATION | (3 << 2)), 3, 0, 0 } /* cleanerChatReplyMessage at 30 */
};
static asn_CHOICE_specifics_t asn_SPC_ChatCleanerMessage_specs_1 = {
	sizeof(struct ChatCleanerMessage),
	offsetof(struct ChatCleanerMessage, _asn_ctx),
	offsetof(struct ChatCleanerMessage, present),
	sizeof(((struct ChatCleanerMessage *)0)->present),
	asn_MAP_ChatCleanerMessage_tag2el_1,
	4,	/* Count of tags in the map */
	0,
	4	/* Extensions start */
};
asn_TYPE_descriptor_t asn_DEF_ChatCleanerMessage = {
	"ChatCleanerMessage",
	"ChatCleanerMessage",
	CHOICE_free,
	CHOICE_print,
	CHOICE_constraint,
	CHOICE_decode_ber,
	CHOICE_encode_der,
	CHOICE_decode_xer,
	CHOICE_encode_xer,
	0, 0,	/* No PER support, use "-gen-PER" to enable */
	CHOICE_outmost_tag,
	0,	/* No effective tags (pointer) */
	0,	/* No effective tags (count) */
	0,	/* No tags (pointer) */
	0,	/* No tags (count) */
	0,	/* No PER visible constraints */
	asn_MBR_ChatCleanerMessage_1,
	4,	/* Elements count */
	&asn_SPC_ChatCleanerMessage_specs_1	/* Additional specs */
};

