Commit 6590e889 authored by garciay's avatar garciay
Browse files

Update Btp.DecodedBtpPayload data structure

parent e24c33ef
/**
* @author ETSI / STF405
* @version $URL$
* $Id$
* @desc Module containing types and values for Basic Transport Protocol
*
*/
module LibItsBtp_TypesAndValues {
// LibCommon
import from LibCommon_BasicTypesAndValues all;
// LibIts
import from CAM_PDU_Descriptions language "ASN.1:1997" {
type CAM
};
import from DENM_PDU_Descriptions language "ASN.1:1997" {
type DENM
};
group btpPdus {
/**
* @desc BTP Packet
* @see ETSI TS 102 636-5-1 chapter 6
* @member header
* @member payload
*/
type record BtpPacket {
BtpHeader header,
BtpPayload payload optional
}
} // end btpPdus
group btpHeaders {
/**
* @desc BTP Header
* @see ETSI TS 102 636-5-1 chapter 7.1
* @member btpAHeader
* @member btpBHeader
*/
type union BtpHeader {
BtpAHeader btpAHeader,
BtpBHeader btpBHeader
}
/**
* @desc BTP-A Header
* @see ETSI TS 102 636-5-1 chapter 7.2
* @member destinationPort
* @member sourcePort
*/
type record BtpAHeader {
BtpPortId destinationPort,
BtpPortId sourcePort
}
/**
* @desc BTP-B Header
* @see ETSI TS 102 636-5-1 chapter 7.3
* @member destinationPort
* @member destinationPortInfo
*/
type record BtpBHeader {
BtpPortId destinationPort,
BtpPortInfo destinationPortInfo
}
/**
* @desc BTP Port ID
* @see ETSI TS 102 636-5-1 chapter 7.3.2
*/
type UInt16 BtpPortId;
/**
* @desc BTP-B Port info
* @see ETSI TS 102 636-5-1 chapter 7.3.2
*/
type UInt16 BtpPortInfo;
} // end btpHeaders
group btpPayload {
type octetstring BtpRawPayload;
/**
* @desc The payload of the BTP packet
* @member decodedPayload The decoded payload
* @member rawPayload Raw payload as it is received
*/
type record BtpPayload {
DecodedBtpPayload decodedPayload optional,
BtpRawPayload rawPayload
}
/**
* @desc The decoded payload of the BTP packet
* @member camPacket The CAM packet
* @member denmPacket The DENM packet
* @member
*/
type union DecodedBtpPayload {
CAM camPacket,
DENM denmPacket
} with {
encode (camPacket) "LibItsCam_asn1";
encode (denmPacket) "LibItsDenm_asn1"
}
} //end btpPayload
group utPrimitives {
group utCommonPrimitives {
/**
/**
* @author ETSI / STF405
* @version $URL$
* $Id$
* @desc Module containing types and values for Basic Transport Protocol
*
*/
module LibItsBtp_TypesAndValues {
// LibCommon
import from LibCommon_BasicTypesAndValues all;
// LibIts
import from CAM_PDU_Descriptions language "ASN.1:1997" {
type CAM
};
import from DENM_PDU_Descriptions language "ASN.1:1997" {
type DENM
};
import from MAPEM_PDU_Descriptions language "ASN.1:1997" {
type MAPEM
};
import from SPATEM_PDU_Descriptions language "ASN.1:1997" {
type SPATEM
};
import from IVIM_PDU_Descriptions language "ASN.1:1997" {
type IVIM
};
import from SREM_PDU_Descriptions language "ASN.1:1997" {
type SREM
};
import from SSEM_PDU_Descriptions language "ASN.1:1997" {
type SSEM
};
group btpPdus {
/**
* @desc BTP Packet
* @see ETSI TS 102 636-5-1 chapter 6
* @member header
* @member payload
*/
type record BtpPacket {
BtpHeader header,
BtpPayload payload optional
}
} // end btpPdus
group btpHeaders {
/**
* @desc BTP Header
* @see ETSI TS 102 636-5-1 chapter 7.1
* @member btpAHeader
* @member btpBHeader
*/
type union BtpHeader {
BtpAHeader btpAHeader,
BtpBHeader btpBHeader
}
/**
* @desc BTP-A Header
* @see ETSI TS 102 636-5-1 chapter 7.2
* @member destinationPort
* @member sourcePort
*/
type record BtpAHeader {
BtpPortId destinationPort,
BtpPortId sourcePort
}
/**
* @desc BTP-B Header
* @see ETSI TS 102 636-5-1 chapter 7.3
* @member destinationPort
* @member destinationPortInfo
*/
type record BtpBHeader {
BtpPortId destinationPort,
BtpPortInfo destinationPortInfo
}
/**
* @desc BTP Port ID
* @see ETSI TS 102 636-5-1 chapter 7.3.2
*/
type UInt16 BtpPortId;
/**
* @desc BTP-B Port info
* @see ETSI TS 102 636-5-1 chapter 7.3.2
*/
type UInt16 BtpPortInfo;
} // end btpHeaders
group btpPayload {
type octetstring BtpRawPayload;
/**
* @desc The payload of the BTP packet
* @member decodedPayload The decoded payload
* @member rawPayload Raw payload as it is received
*/
type record BtpPayload {
DecodedBtpPayload decodedPayload optional,
BtpRawPayload rawPayload
}
/**
* @desc The decoded payload of the BTP packet
* @member camPacket The CAM packet
* @member denmPacket The DENM packet
* @member mapemPacket
* @member spatemPacket
* @member ivimPacket
* @member sremPacket
* @member seemPacket
*/
type union DecodedBtpPayload {
CAM camPacket,
DENM denmPacket,
MAPEM mapemPacket,
SPATEM spatemPacket,
IVIM ivimPacket,
SREM sremPacket,
SSEM ssemPacket
} with {
encode (camPacket) "LibItsCam_asn1";
encode (denmPacket) "LibItsDenm_asn1";
encode (mapemPacket) "LibItsMapemSpatem_asn1";
encode (spatemPacket) "LibItsMapemSpatem_asn1";
encode (ivimPacket) "LibItsIvim_asn1";
encode (sremPacket) "LibItsDenm_asn1";
encode (ssemPacket) "LibItsDenm_asn1"
}
} //end btpPayload
group utPrimitives {
group utCommonPrimitives {
/**
* @desc UT primitives for BTP
* @member btpA -
* @member btpB -
*/
*/
type union UtBtpTrigger {
GenerateBtpA btpA,
GenerateBtpB btpB
}
}
type boolean UtBtpTriggerResult;
/**
/**
* @desc Upper Tester message to request triggering of an BTPA message at IUT
*/
*/
type record GenerateBtpA {
BtpAHeader btpAHeader
}
/**
}
/**
* @desc Upper Tester message to request triggering of an BTPB message at IUT
*/
*/
type record GenerateBtpB {
BtpBHeader btpBHeader
}
/**
}
/**
* @desc Upper Tester message to check event/status on BTP IUT
*/
*/
type record UtBtpEventInd {
BtpRawPayload rawPayload
}
/**
}
/**
* @desc List of Upper Tester messages to check event/status on CAM IUT
*/
*/
type record of UtBtpEventInd UtBtpEventIndList;
}
// with {
// encode "LibItsCommon"
// }
} // end utPrimitives
with {
encode "UpperTester"
}
}
with {
encode "LibItsBtp"
}
}
// with {
// encode "LibItsCommon"
// }
} // end utPrimitives
with {
encode "UpperTester"
}
}
with {
encode "LibItsBtp"
}
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment