/*
 * Generated by asn1c-0.9.23 (http://lionet.info/asn1c)
 * From ASN.1 module "MAP-LCS-DataTypes"
 * 	found in "../asn1src/MAP-LCS-DataTypes.asn"
 * 	`asn1c -gen-PER -fskeletons-copy -fnative-types`
 */

#ifndef	_SubscriberLocationReport_Arg_H_
#define	_SubscriberLocationReport_Arg_H_


#include <asn_application.h>

/* Including external dependencies */
#include "LCS-Event.h"
#include "LCS-ClientID.h"
#include "LCSLocationInfo.h"
#include "ISDN-AddressString.h"
#include "IMSI.h"
#include "IMEI.h"
#include "Ext-GeographicalInformation.h"
#include "AgeOfLocationInformation.h"
#include "Add-GeographicalInformation.h"
#include "LCS-ReferenceNumber.h"
#include "PositioningDataInformation.h"
#include "UtranPositioningDataInfo.h"
#include "GSN-Address.h"
#include "LCSServiceTypeID.h"
#include <NULL.h>
#include "AccuracyFulfilmentIndicator.h"
#include "VelocityEstimate.h"
#include "SequenceNumber.h"
#include "GeranGANSSpositioningData.h"
#include "UtranGANSSpositioningData.h"
#include <constr_SEQUENCE.h>

#ifdef __cplusplus
extern "C" {
#endif

/* Forward declarations */
struct SLR_ArgExtensionContainer;
struct Deferredmt_lrData;
struct CellGlobalIdOrServiceAreaIdOrLAI;
struct PeriodicLDRInfo;
struct ServingNodeAddress;

/* SubscriberLocationReport-Arg */
typedef struct SubscriberLocationReport_Arg {
	LCS_Event_t	 lcs_Event;
	LCS_ClientID_t	 lcs_ClientID;
	LCSLocationInfo_t	 lcsLocationInfo;
	ISDN_AddressString_t	*msisdn	/* OPTIONAL */;
	IMSI_t	*imsi	/* OPTIONAL */;
	IMEI_t	*imei	/* OPTIONAL */;
	ISDN_AddressString_t	*na_ESRD	/* OPTIONAL */;
	ISDN_AddressString_t	*na_ESRK	/* OPTIONAL */;
	Ext_GeographicalInformation_t	*locationEstimate	/* OPTIONAL */;
	AgeOfLocationInformation_t	*ageOfLocationEstimate	/* OPTIONAL */;
	struct SLR_ArgExtensionContainer	*slr_ArgExtensionContainer	/* OPTIONAL */;
	/*
	 * This type is extensible,
	 * possible extensions are below.
	 */
	Add_GeographicalInformation_t	*add_LocationEstimate	/* OPTIONAL */;
	struct Deferredmt_lrData	*deferredmt_lrData	/* OPTIONAL */;
	LCS_ReferenceNumber_t	*lcs_ReferenceNumber	/* OPTIONAL */;
	PositioningDataInformation_t	*geranPositioningData	/* OPTIONAL */;
	UtranPositioningDataInfo_t	*utranPositioningData	/* OPTIONAL */;
	struct CellGlobalIdOrServiceAreaIdOrLAI	*cellIdOrSai	/* OPTIONAL */;
	GSN_Address_t	*h_gmlc_Address	/* OPTIONAL */;
	LCSServiceTypeID_t	*lcsServiceTypeID	/* OPTIONAL */;
	NULL_t	*sai_Present	/* OPTIONAL */;
	NULL_t	*pseudonymIndicator	/* OPTIONAL */;
	AccuracyFulfilmentIndicator_t	*accuracyFulfilmentIndicator	/* OPTIONAL */;
	VelocityEstimate_t	*velocityEstimate	/* OPTIONAL */;
	SequenceNumber_t	*sequenceNumber	/* OPTIONAL */;
	struct PeriodicLDRInfo	*periodicLDRInfo	/* OPTIONAL */;
	NULL_t	*mo_lrShortCircuitIndicator	/* OPTIONAL */;
	GeranGANSSpositioningData_t	*geranGANSSpositioningData	/* OPTIONAL */;
	UtranGANSSpositioningData_t	*utranGANSSpositioningData	/* OPTIONAL */;
	struct ServingNodeAddress	*targetServingNodeForHandover	/* OPTIONAL */;
	
	/* Context for parsing across buffer boundaries */
	asn_struct_ctx_t _asn_ctx;
} SubscriberLocationReport_Arg_t;

/* Implementation */
extern asn_TYPE_descriptor_t asn_DEF_SubscriberLocationReport_Arg;

#ifdef __cplusplus
}
#endif

/* Referred external types */
#include "SLR-ArgExtensionContainer.h"
#include "Deferredmt-lrData.h"
#include "CellGlobalIdOrServiceAreaIdOrLAI.h"
#include "PeriodicLDRInfo.h"
#include "ServingNodeAddress.h"

#endif	/* _SubscriberLocationReport_Arg_H_ */
#include <asn_internal.h>
