/** * @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; group btpPdus { /** * @desc BTP Packet * @see Draft ETSI TS 102 636-5-1 V0.0.8 (2010-10) chapter 6 * @member header * @member payload */ type record BtpPacket { BtpHeader header, BtpPayload payload optional } } // end btpPdus group btpHeaders { /** * @desc BTP Header * @see Draft ETSI TS 102 636-5-1 V0.0.8 (2010-10) chapter 7.1 * @member btpAHeader * @member btpBHeader */ type union BtpHeader { BtpAHeader btpAHeader, BtpBHeader btpBHeader } /** * @desc BTP-A Header * @see Draft ETSI TS 102 636-5-1 V0.0.8 (2010-10) chapter 7.2 * @member destinationPort * @member sourcePort */ type record BtpAHeader { BtpPortId destinationPort, BtpPortId sourcePort } /** * @desc BTP-B Header * @see Draft ETSI TS 102 636-5-1 V0.0.8 (2010-10) chapter 7.3 * @member destinationPort * @member destinationPortInfo */ type record BtpBHeader { BtpPortId destinationPort, BtpPortInfo destinationPortInfo } /** * @desc BTP Port ID * @see Draft ETSI TS 102 636-5-1 V0.0.8 (2010-10) chapter 7.3.2 */ type UInt16 BtpPortId; /** * @desc BTP-B Port info * @see Draft ETSI TS 102 636-5-1 V0.0.8 (2010-10) chapter 7.3.2 */ type UInt16 BtpPortInfo; } // end btpHeaders group btpPayload { /** * @desc The payload of th BTP packet * @remark Change it to concrete union value if necessary */ type octetstring BtpPayload; } //end btpPayload group utPrimitives { /** * @desc Upper Tester message to initialize BTP IUT */ type record UtBtpInitialize { } /** * @desc Upper Tester message generating BTP packet */ type union UtBtpEvent { BtpAHeader btpA, BtpBHeader btpB, BtpPayload payload } } // end utPrimitives } with { encode "LibItsBtp_TypesAndValues" }