Commit 76a135ea authored by petersenj's avatar petersenj
Browse files

Put types in alphabetic order

parent 26a9310e
Loading
Loading
Loading
Loading
+3 −10
Original line number Diff line number Diff line
@@ -752,26 +752,19 @@
	  		channelNr :=  p_channelNumber,
			politeLvl  := omit,
			signalLevel := omit,
			colourCode  := omit,
			taActParams := e_taStandby
			colourCode  := omit
		}



		template TaRequest m_interfereOnCC(ChannelNumber p_channelNumber,
												Int8   p_signalLevel,
												ColourCode	  p_cc,
												TaActParams	  p_taAction) := {
												ColourCode	  p_cc) := {
	  		channelNr :=  p_channelNumber,
			politeLvl  := omit,
			signalLevel := p_signalLevel,
			colourCode  := p_cc,
			taActParams := p_taAction
			colourCode  := p_cc
		}
	 


	 
	}


+314 −333
Original line number Diff line number Diff line
@@ -57,99 +57,43 @@ module dPMR_Types {

	group InformationElements {

		// 5.6 Frame numbering

		type enumerated FrameNumber {  // 2 bits
		  e_frame1  (0),
		  e_frame2  (1),
		  e_frame3  (3),
		  e_frame4  (4)
		} with {encode "2 bits"}


		// 5.7  Communication mode

		type enumerated CommunicationsMode {  // 3 bits
		  e_voice          (0),
		  e_voiceSlowData  (1),
		  e_dataT1         (2),
		  e_dataT2         (3),
		  e_dataT3         (4),
		  e_voiceDataT2    (5),
		  e_rsv6           (6),
		  e_rsv7           (7)
		} with {encode "2 bits"}


		// 5.8   Communication format
		// 5.13  ARQ

		type enumerated CommsFormat {   // 4 bits
		  e_callAll   (0),
		  e_p2p       (1),
		type enumerated AckRequest {  // 2 bits
		  e_noAckReq    (0),
		  e_AckReq      (1),
		  e_rsv2        (2),
		  e_rsv3      (3),
		  e_other     (4)
		} with {encode "4 bits"}


		// 5.9 SLD format
		  e_rsv3        (3)
		} with {encode "2 bit"}

		type union SlowData {
		  SlowDataInVoice       slowDataInVoice,
		  SlowDataInDataT1OrT2  slowDataInDataT1OrT2
		}
		type UInt8 ApplicableCommonId (1 .. 254);

		type record SlowDataInVoice {
		  Continue   cont1,
		  UserData   userData1,
		  Continue   cont2,
		  UserData   userData2
		}
		// Called and Own Id types

		type Bit12 CalledIdUP;
		type Bit12 CalledIdLP;

		type enumerated Continue { // 1 bit
		  e_continue  (0),
		  e_terminate (1)
		type union ChannelNumber {
			IsfChannelNr isfChannelNr,
			CsfChannelNr csfChannelNr
		}

		type Bit8 UserData;
		// 5.10  Call information 

		type record SlowDataInDataT1OrT2 {
		  Reserved5bit  reserved5bit,
		  DataPosition  dataPosition,
		type record CiInfoNormalDataT1T2 {
		  DataFormat        format,
		  ContFlag      contFlag,
		  DataLength    dataLength
		  Reserved4bit  reserved4bit
		}

		type Bit6 DataLength;

		type enumerated DataPosition { // 2 bits
		  e_NoDataInFrame  (0),
		  e_rsv1           (1),
		  e_rsv2           (2),
		  e_DataInFrame    (3)
		} with {encode "2 bits"}

		type enumerated DataFormat {  // 4 bits
		  e_statusMessage      (0),
		  e_precodedMessage    (1),
		  e_freeTextMessage    (2),
		  e_shortFileTransfer  (3),
		  e_userDefData1       (4),
		  e_userDefData2       (5),
		  e_userDefData3       (6),
		  e_userDefData4       (7),
		  e_other              (8)   // Represent all other non-defined values.
		}  with {encode "4 bits"}

		type enumerated ContFlag {   // 1 bit
		  e_continueAfterFrame   (0),
		  e_finishAfterFrame     (1)

		}  with {encode "1 bit"}
		type record CiInfoNormalDataT3 {
		  PdS   pdS,
		  PdM   pdM
		}

		// 5.10  Call information 
		type union CiInfoNormalOrPws {
		  CiInformationNormal  ciInformationNormal,
		  CiInformationPws     ciInformationPws
		}

		type union CallInformation {   // 11 bits
		  CiInformationNormalOrPws  ciInformationNormalOrPws,
@@ -159,61 +103,56 @@ module dPMR_Types {

		// 5.10.1 

		type record CiInformationNormalOrPws { 
		  CiTypeNormalOrPws  ciTypeNormalOrPws,
		  CiInfoNormalOrPws  ciInfoNormalOrPws  
		// Call information for acknowledgements

		type record CiInformationAck { 
		  CiTypeAck  ciTypeAck,
		  CiInfoAck  ciInfoAck
		}

		type enumerated CiTypeNormalOrPws { // 3 bits
		  e_reserved0       (0),            // used by voice?
		  e_dataT1T2        (1),			// T1 and T2
		  e_reserved2       (2),			//
		  e_dataT3          (3),			// T3
		  e_reserved4       (4),			//
		  e_reserved5       (5),			//
		  e_reserved6       (6),			//
		  e_extendWakeupHdr (7)
		type enumerated CiTypeAck {  // 3 bits
		  e_rsv0           (0),
		  e_ack            (1),
		  e_nackReqResend  (2),
		  e_nackReqDenied  (3),
		  e_rsv4           (4),
		  e_rsv5           (5),
		  e_rsv6           (6),
		  e_rsv7           (7)
		} with {encode "3 bit"}

		type union CiInfoNormalOrPws {
		  CiInformationNormal  ciInformationNormal,
		  CiInformationPws     ciInformationPws
		}
		type Bit8  CiInfoAck;   // Value 0 reserved, value 1..255 ACK/NACK status (reject reason defined by user).

		type union CiInformationNormal {
		  CiInfoNormalDataT1T2  ciInfoNormalDataT1T2,
		  CiInfoNormalDataT3    ciInfoNormalDataT3
		}

		type record CiInfoNormalDataT1T2 {
		  DataFormat        format,
		  Reserved4bit  reserved4bit
		type record CiInformationNormalOrPws { 
		  CiTypeNormalOrPws  ciTypeNormalOrPws,
		  CiInfoNormalOrPws  ciInfoNormalOrPws  
		}

		type record CiInfoNormalDataT3 {
		  PdS   pdS,
		  PdM   pdM
		// 5.10.4  Call information for system transactions

		type record CiInformationSysTrans { 
		  CiTypeSysTrans  ciTypeSysTrans,
		  CiInfoSysTrans  ciInfoSysTrans
		}

		type enumerated PdS {  // 4 bits
		  e_frmTm80ms   (0),
		  e_frmTm160ms  (1),
		  e_frmTm240ms  (2),
		  e_frmTm320ms  (3),
		  e_rsv4        (4)  // represent all other 4 bit values
		} with {encode "4 bit"}
		type enumerated CiTypeSysTrans {  // 3 bits
		  e_rsv0                (0),
		  e_dynGrpReqAnswDev    (1),
		  e_rsv2                (2),
		  e_rsv3                (3),
		  e_esnReqRpl           (4),
		  e_mfidReqRpl          (5),
		  e_contactStationAddr  (6),
		    e_rsv7                (7)
		} with {encode "3 bit"}

		type Bit8  CiInfoSysTrans;   // All 8 bits shall be set to zero.

		type enumerated PdM { // 4 bits
		  e_pdM0    (0),
		  e_pdM1    (1),
		  e_pdM2    (2),
		  e_pdM3    (3),
		  e_pdM4    (4),
		  e_pdM5    (5),
		  e_pdM6    (6),
		  e_pdM7    (7),
		    e_rsv8    (8)   // represent all other 4 bit values
		} with {encode "4 bit"}

		type enumerated CiInformationPws { // 8 bits
		  e_normalHdrFrame  (0),
@@ -235,61 +174,114 @@ module dPMR_Types {
		  e_reserved        (16)  // Represent all other 8 bit values
		}  with {encode "8 bit"}

		// 5.10.4  Call information for system transactions
		type enumerated CiTypeNormalOrPws { // 3 bits
		  e_reserved0       (0),            // used by voice?
		  e_dataT1T2        (1),			// T1 and T2
		  e_reserved2       (2),			//
		  e_dataT3          (3),			// T3
		  e_reserved4       (4),			//
		  e_reserved5       (5),			//
		  e_reserved6       (6),			//
		  e_extendWakeupHdr (7)
		}  with {encode "3 bit"}

		type record CiInformationSysTrans { 
		  CiTypeSysTrans  ciTypeSysTrans,
		  CiInfoSysTrans  ciInfoSysTrans
		type Bit8 Common_ID;

		// 6.1.5  Coulour code

		type bitstring IsfColourCode;

		type bitstring CsfColourCode;

		type union  ColourCode {
			IsfColourCode isfColourCode,
			CsfColourCode csfColourCode
		}

		type enumerated CiTypeSysTrans {  // 3 bits
		  e_rsv0                (0),
		  e_dynGrpReqAnswDev    (1),
		// 5.7  Communication mode

		type enumerated CommunicationsMode {  // 3 bits
		  e_voice          (0),
		  e_voiceSlowData  (1),
		  e_dataT1         (2),
		  e_dataT2         (3),
		  e_dataT3         (4),
		  e_voiceDataT2    (5),
		  e_rsv6           (6),
		  e_rsv7           (7)
		} with {encode "2 bits"}

		// 5.8   Communication format

		type enumerated CommsFormat {   // 4 bits
		  e_callAll   (0),
		  e_p2p       (1),
		  e_rsv2      (2),
		  e_rsv3      (3),
		  e_esnReqRpl           (4),
		  e_mfidReqRpl          (5),
		  e_contactStationAddr  (6),
		    e_rsv7                (7)
		} with {encode "3 bit"}
		  e_other     (4)
		} with {encode "4 bits"}

		type Bit8  CiInfoSysTrans;   // All 8 bits shall be set to zero.
		type enumerated ContFlag {   // 1 bit
		  e_continueAfterFrame   (0),
		  e_finishAfterFrame     (1)

		// Call information for acknowledgements
		}  with {encode "1 bit"}

		type record CiInformationAck { 
		  CiTypeAck  ciTypeAck,
		  CiInfoAck  ciInfoAck
		type enumerated Continue { // 1 bit
		  e_continue  (0),
		  e_terminate (1)
		}

		type enumerated CiTypeAck {  // 3 bits
		  e_rsv0           (0),
		  e_ack            (1),
		  e_nackReqResend  (2),
		  e_nackReqDenied  (3),
		  e_rsv4           (4),
		  e_rsv5           (5),
		  e_rsv6           (6),
		  e_rsv7           (7)
		} with {encode "3 bit"}
		type Bit16 CrcD           // CRC for data field.

		type Bit8  CiInfoAck;   // Value 0 reserved, value 1..255 ACK/NACK status (reject reason defined by user).
		type Bit24 CSFAddress;

		// 5.11  Header type
		type enumerated CsfChannelNr {
			e_csfChannelNr_1 (1),
			e_csfChannelNr_2 (2),
			e_csfChannelNr_3 (3),
			e_csfChannelNr_4 (4),
			e_csfChannelNr_5 (5),
			e_csfChannelNr_6 (6),
			e_csfChannelNr_7 (7),
			e_csfChannelNr_8 (8),
			e_csfChannelNr_9 (9),
			e_csfChannelNr_10 (10),
			e_csfChannelNr_11 (11),
			e_csfChannelNr_12 (12),
			e_csfChannelNr_13 (13),
			e_csfChannelNr_14 (14),
			e_csfChannelNr_15 (15),
			e_csfChannelNr_16 (16)
		}

		type enumerated HeaderType {  // 4 bits
		  e_commStartHeader  (0),
		  e_connReqHeader    (1),
		  e_unconnReqHeader  (2),
		  e_ackHeader        (3),
		  e_sysReqHeader     (4),
		  e_ackHdrReply      (5),
		  e_sysDelivHdr      (6),
		  e_statusRspHdr     (7),
		  e_statusReqHdr     (8),
		  e_rsv9             (9)  // represent all other undefined 4 bit values
		} with {encode "4 bit"}
		type union Data {
		  UserDataPds0  userDataPds0,   // 36 octets maximum
		  UserDataPds1  userDataPds1,   // 84 octets maximum
		  UserDataPds2  userDataPds2,   // 132 octets maximum
		  UserDataPds3  userDataPds3    // 180 octets maximum
		}

		type enumerated DataFormat {  // 4 bits
		  e_statusMessage      (0),
		  e_precodedMessage    (1),
		  e_freeTextMessage    (2),
		  e_shortFileTransfer  (3),
		  e_userDefData1       (4),
		  e_userDefData2       (5),
		  e_userDefData3       (6),
		  e_userDefData4       (7),
		  e_other              (8)   // Represent all other non-defined values.
		}  with {encode "4 bits"}

		type Bit6 DataLength;

		type enumerated DataPosition { // 2 bits
		  e_NoDataInFrame  (0),
		  e_rsv1           (1),
		  e_rsv2           (2),
		  e_DataInFrame    (3)
		} with {encode "2 bits"}

		// 5.12  End type

@@ -300,50 +292,45 @@ module dPMR_Types {
		  e_rsv3                   (3)
		} with {encode "2 bit"}

		type Bit16 FixedPart;

		// 5.13  ARQ

		type enumerated AckRequest {  // 2 bits
		  e_noAckReq    (0),
		  e_AckReq      (1),
		  e_rsv2        (2),
		  e_rsv3        (3)
		} with {encode "2 bit"}


		// 5.14  Tx Wait

		type enumerated TxWait { // 4 bits
		  e_noSpecTime      (0),
		  e_halfFrame40ms   (1),
		  e_oneFrame80ms    (2),
		  e_twoFrames160ms  (3),
		  e_fourFrames320ms (4),
		  e_rsv5            (5)  // All other non-defined 4 bit values 
		} with {encode "4 bit"}


		// 5.15  Status message
		// 5.6 Frame numbering

		type Bit5 StatusMessage;   // Status message 0.. 31
		type enumerated FrameNumber {  // 2 bits
		  e_frame1  (0),
		  e_frame2  (1),
		  e_frame3  (3),
		  e_frame4  (4)
		} with {encode "2 bits"}

		type Bit48 FrameSync1;
		type Bit24 FrameSync2;
		type Bit24 FrameSync3;
		type Bit48 FrameSync4;

		// 6.1 Frame sync

		type Bit24 FrameSync24;
		type Bit48 FrameSync48;

		// 6.1.5  Coulour code

		type bitstring IsfColourCode;

		type bitstring CsfColourCode;
		// 5.11  Header type
		
//		type UInt8 RadioChannelNumber (1 .. 16);
		type enumerated HeaderType {  // 4 bits
		  e_commStartHeader  (0),
		  e_connReqHeader    (1),
		  e_unconnReqHeader  (2),
		  e_ackHeader        (3),
		  e_sysReqHeader     (4),
		  e_ackHdrReply      (5),
		  e_sysDelivHdr      (6),
		  e_statusRspHdr     (7),
		  e_statusReqHdr     (8),
		  e_rsv9             (9)  // represent all other undefined 4 bit values
		} with {encode "4 bit"}

		type union ChannelNumber {
			IsfChannelNr isfChannelNr,
			CsfChannelNr csfChannelNr
		type record ISFAddress {
			Common_ID common_ID,
			FixedPart fixedPart
		}

		type enumerated IsfChannelNr {
@@ -365,32 +352,23 @@ module dPMR_Types {
			e_isfChannelNr_16 (16)
		}

		type enumerated CsfChannelNr {
			e_csfChannelNr_1 (1),
			e_csfChannelNr_2 (2),
			e_csfChannelNr_3 (3),
			e_csfChannelNr_4 (4),
			e_csfChannelNr_5 (5),
			e_csfChannelNr_6 (6),
			e_csfChannelNr_7 (7),
			e_csfChannelNr_8 (8),
			e_csfChannelNr_9 (9),
			e_csfChannelNr_10 (10),
			e_csfChannelNr_11 (11),
			e_csfChannelNr_12 (12),
			e_csfChannelNr_13 (13),
			e_csfChannelNr_14 (14),
			e_csfChannelNr_15 (15),
			e_csfChannelNr_16 (16)
		type union MsAddress {
			ISFAddress isfAddress,
			CSFAddress csfAddress
		}

		type union  ColourCode {
			IsfColourCode isfColourCode,
			CsfColourCode csfColourCode
		}
		type octetstring  Oct36 length(36) with {encode "36 bytes"};
		type octetstring  Oct84 length(84) with {encode "84 bytes"};
		type octetstring  Oct132 length(132) with {encode "132 bytes"};
		type octetstring  Oct180 length(180) with {encode "180 bytes"};

		type Bit12 OwnIdLP;
		type Bit12 OwnIdUP;

		// 8.3.3 Packet frame coding

		type UInt3 PacketDataFrameNumber;   //  Number of packet data frames in packet packet transmission (3 bits)

		type record PacketFrame {
		  ColourCode     colourCode,
		  PacketDataFrameNumber    packetDataFrameNumber,  
@@ -400,77 +378,89 @@ module dPMR_Types {
		  Data           data
		}

		type UInt3 PacketDataFrameNumber;   //  Number of packet data frames in packet packet transmission (3 bits)
		// Payload

		type UInt8 ValidDataLen;  // Actual length of valid data in the packet frame
		type record Payload {
			Oct9 payLoad1,
			Oct9 payLoad2,
			Oct9 payLoad3,
			Oct9 payLoad4
		};   // 72*4 bits (=288)

		type Bit16 CrcD           // CRC for data field.
		type enumerated PdM { // 4 bits
		  e_pdM0    (0),
		  e_pdM1    (1),
		  e_pdM2    (2),
		  e_pdM3    (3),
		  e_pdM4    (4),
		  e_pdM5    (5),
		  e_pdM6    (6),
		  e_pdM7    (7),
		    e_rsv8    (8)   // represent all other 4 bit values
		} with {encode "4 bit"}

		type union Data {
		  UserDataPds0  userDataPds0,   // 36 octets maximum
		  UserDataPds1  userDataPds1,   // 84 octets maximum
		  UserDataPds2  userDataPds2,   // 132 octets maximum
		  UserDataPds3  userDataPds3    // 180 octets maximum
		}
		type enumerated PdS {  // 4 bits
		  e_frmTm80ms   (0),
		  e_frmTm160ms  (1),
		  e_frmTm240ms  (2),
		  e_frmTm320ms  (3),
		  e_rsv4        (4)  // represent all other 4 bit values
		} with {encode "4 bit"}

		type Bit72 Preamble;
		type Bit48 FrameSync1;
		type Bit24 FrameSync2;
		type Bit24 FrameSync3;
		type Bit48 FrameSync4;


		type Oct36   UserDataPds0;
		type Oct84   UserDataPds1;
		type Oct132  UserDataPds2;
		type Oct180  UserDataPds3;

		// Reserved fields

		type octetstring  Oct36 length(36) with {encode "36 bytes"};
		type octetstring  Oct84 length(84) with {encode "84 bytes"};
		type octetstring  Oct132 length(132) with {encode "132 bytes"};
		type octetstring  Oct180 length(180) with {encode "180 bytes"};

		type Bit2  Reserved2bit;
		type Bit4  Reserved4bit;
		type Bit5  Reserved5bit;
		type Bit14 Reserved14Bit  

		// Called and Own Id types
		// 5.9 SLD format

		type Bit12 CalledIdUP;
		type Bit12 CalledIdLP;
		type union SlowData {
		  SlowDataInVoice       slowDataInVoice,
		  SlowDataInDataT1OrT2  slowDataInDataT1OrT2
		}

		type Bit8 Common_ID;
		type UInt8 ApplicableCommonId (1 .. 254);
		type Bit16 FixedPart;
		type record SlowDataInDataT1OrT2 {
		  Reserved5bit  reserved5bit,
		  DataPosition  dataPosition,
		  DataFormat        format,
		  ContFlag      contFlag,
		  DataLength    dataLength
		}

		type record ISFAddress {
			Common_ID common_ID,
			FixedPart fixedPart
		type record SlowDataInVoice {
		  Continue   cont1,
		  UserData   userData1,
		  Continue   cont2,
		  UserData   userData2
		}

		type Bit24 CSFAddress;
		// 5.15  Status message

		type union MsAddress {
			ISFAddress isfAddress,
			CSFAddress csfAddress
		}
		type Bit5 StatusMessage;   // Status message 0.. 31

		type Bit12 OwnIdUP;
		type Bit12 OwnIdLP;
		// 5.14  Tx Wait

		// Payload
		type enumerated TxWait { // 4 bits
		  e_noSpecTime      (0),
		  e_halfFrame40ms   (1),
		  e_oneFrame80ms    (2),
		  e_twoFrames160ms  (3),
		  e_fourFrames320ms (4),
		  e_rsv5            (5)  // All other non-defined 4 bit values 
		} with {encode "4 bit"}

		type record Payload {
			Oct9 payLoad1,
			Oct9 payLoad2,
			Oct9 payLoad3,
			Oct9 payLoad4
		};   // 72*4 bits (=288)
		type Bit8 UserData;

		// Reserved fields
		type Oct36   UserDataPds0;
		type Oct84   UserDataPds1;
		type Oct132  UserDataPds2;
		type Oct180  UserDataPds3;

		type Bit2  Reserved2bit;
		type Bit4  Reserved4bit;
		type Bit5  Reserved5bit;
		type Bit14 Reserved14Bit  
		type UInt8 ValidDataLen;  // Actual length of valid data in the packet frame

	} // End group InformationElements

@@ -478,41 +468,7 @@ module dPMR_Types {

	group AtsRelatedTypes {

		type record UtRequest {
			ChannelNumber	channelNr	optional,  	// ChannelNr used
			PoliteLvl   	politeLvl 	optional,  	// Only needed for transmission
			DialString  	dialString 	optional,  	// Dial string to identify the TE CSF address (CSF only)
			Common_ID   	isfCidAddr 	optional,   // Common part (1-255) of ISF address (ISF only)
			UtActParams		utActParams optional	// Instruction for the test operator
		}

		type record TaRequest {
			ChannelNumber	channelNr	optional,  	// ChannelNr used
			PoliteLvl   	politeLvl 	optional,  	// Only needed for transmission
			Int8 			signalLevel optional,   // in units of dBM
			ColourCode		colourCode	optional,	// set the colourcode
			TaActParams		taActParams optional	// Instruction for the test adapter

			//only for CSF special instruction to test adpter to create and execute voice alls in addition to the voice calls controlled by TTCN
			// testerAddress
			//iutId , msAddress
			//voice
		}

		/**
		  * 
		  * @desc A generic response which is returned for all upper test requests.
		  *    
		  */
		type record UtConfirm {
			UT_Success success,
			Observation observation optional
		}

		type enumerated UT_Success {
			e_ut_success,
			e_ut_noSuccess
		}
		type String1To11  DialString;

		type enumerated Observation {
			e_requestedObservationMade,
@@ -520,6 +476,17 @@ module dPMR_Types {
			e_noChangeObserved
		}

		// ------------ MS configuration parameters ---------------

		//  politeLv1 : IUT shall be "Polite to CC", "Polite to CC or Talkgroup" or "Impolite"
		type enumerated PoliteLvl {
		   e_politeCc  (0),
		   e_politeCcOrTalkgroup (1),   // Only valid for CSF radios
		   e_impolite  (2)
		}

	type charstring String1To11 length(1..11) with {encode "length(1..11)"};

		/**
		  * 
		  * @desc A generic response which is returned for all upper test requests.
@@ -530,17 +497,22 @@ module dPMR_Types {
			Observation observation optional
		}

		type record TaRequest {
			ChannelNumber	channelNr	optional,  	// ChannelNr used
			PoliteLvl   	politeLvl 	optional,  	// Only needed for transmission
			Int8 			signalLevel optional,   // in units of dBM
			ColourCode		colourCode	optional	// set the colourcode

			//only for CSF special instruction to test adpter to create and execute voice alls in addition to the voice calls controlled by TTCN
			// testerAddress
			//iutId , msAddress
			//voice
		}

		type enumerated TA_Success {
			e_ta_success,
			e_ta_noSuccess
		}
		/**
		*  @desc Collection of commands to be executed by test adapter
		*/
		type enumerated TaActParams {
			e_taStandby (0), 							//Please use default values...
			e_continousVoiceOnChannelWithWrongCC (1) 	// send cont voice on channel, with wrong cc
		}

		/**
		*  @desc Collection of commands to be executed by test operator
@@ -617,19 +589,28 @@ module dPMR_Types {
			
			}

		// ------------ MS configuration parameters ---------------


		//  politeLv1 : IUT shall be "Polite to CC", "Polite to CC or Talkgroup" or "Impolite"
		type enumerated PoliteLvl {
		   e_politeCc  (0),
		   e_politeCcOrTalkgroup (1),   // Only valid for CSF radios
		   e_impolite  (2)
		/**
		  * 
		  * @desc A generic response which is returned for all upper test requests.
		  *    
		  */
		type record UtConfirm {
			UT_Success success,
			Observation observation optional
		}

		type record UtRequest {
			ChannelNumber	channelNr	optional,  	// ChannelNr used
			PoliteLvl   	politeLvl 	optional,  	// Only needed for transmission
			DialString  	dialString 	optional,  	// Dial string to identify the TE CSF address (CSF only)
			Common_ID   	isfCidAddr 	optional,   // Common part (1-255) of ISF address (ISF only)
			UtActParams		utActParams optional	// Instruction for the test operator
		}

type charstring String1To11 length(1..11) with {encode "length(1..11)"};
		type String1To11  DialString;
		type enumerated UT_Success {
			e_ut_success,
			e_ut_noSuccess
		}

	} // End group AtsRelatedTypes

@@ -654,9 +635,9 @@ type charstring String1To11 length(1..11) with {encode "length(1..11)"};

	group radioProperties {

		type enumerated VoiceConnectionRequestStatus {
			e_voiceConnectionRequest (0),
			e_voiceNonConnectionRequest (1)
		type enumerated ConnectionRequestConfigurability {
			e_ConnectionRequestConfigurable (0),
			e_ConnectionRequestNotConfigurable (1)
		}

		type enumerated DataConnectionRequestStatus {
@@ -664,16 +645,16 @@ type charstring String1To11 length(1..11) with {encode "length(1..11)"};
			e_dataNonConnectionRequest (1)
		}

		type enumerated ConnectionRequestConfigurability {
			e_ConnectionRequestConfigurable (0),
			e_ConnectionRequestNotConfigurable (1)
		}

		type enumerated Entity {
			e_isf (0),
			e_csf (1)
		}

		type enumerated VoiceConnectionRequestStatus {
			e_voiceConnectionRequest (0),
			e_voiceNonConnectionRequest (1)
		}


	} // end group radioProperties