Newer
Older
module LibItsRtcmem_Templates {
// LibCommon
import from LibCommon_BasicTypesAndValues all;
import from LibCommon_DataStrings all;
// LibIts
import from ITS_Container language "ASN.1:1997" all;
import from RTCMEM_PDU_Descriptions language "ASN.1:1997" all;
import from DSRC language "ASN.1:1997" all;
// LibItsCommon
import from LibItsCommon_TypesAndValues all;
import from LibItsCommon_Functions all;
import from LibItsCommon_ASN1_NamedNumbers all;
import from LibItsRtcmem_TestSystem all;
import from LibItsRtcmem_TypesAndValues all;
import from LibItsRtcmem_Pixits all;
group primitivesTemplates {
/**
* @desc Send template for RTCMEM Message (RtcmemPort Primitive)
* @param p_rtcmemMsg The RTCMEM Message to be sent
*/
template (value) RtcmemReq m_rtcmemReq(
in template (value) RTCMEM p_rtcmemMsg
) := {
msgOut := p_rtcmemMsg
}
/**
* @desc Receive template for RTCMEM Message (RtcmemPort Primitive)
* @param p_rtcmemMsg The expected RTCMEM Message
*/
template (present) RtcmemInd mw_rtcmemInd(
template (present) RTCMEM p_rtcmemMsg
) := {
msgIn := p_rtcmemMsg,
gnNextHeader := *,
gnHeaderType := *,
gnHeaderSubtype := *,
gnLifetime := *,
gnTrafficClass := *,
btpDestinationPort := *,
btpInfo := *,
ssp := *,
its_aid := *
}
/**
* @desc Receive template for RTCMEM Message (RtcmemPort Primitive)
* @param p_rtcmemMsg The expected RTCMEM Message
* @param p_gnNextHeader GN next header value
* @param p_gnHeaderType GN header type value
* @param p_gnHeaderSubtype GN header subtype value
* @param p_gnLifetime GN packet lifetime value (ms)
* @param p_gnTrafficClass GN traffic class value
*/
template (present) RtcmemInd mw_rtcmemIndWithGnParameters(
template (present) RTCMEM p_rtcmemMsg,
in template UInt8 p_gnNextHeader := *,
in template UInt8 p_gnHeaderType := *,
in template UInt8 p_gnHeaderSubtype := *,
in template UInt32 p_gnLifetime := *,
in template UInt8 p_gnTrafficClass := *
) modifies mw_rtcmemInd := {
gnNextHeader := p_gnNextHeader,
gnHeaderType := p_gnHeaderType,
gnHeaderSubtype := p_gnHeaderSubtype,
gnLifetime := p_gnLifetime,
gnTrafficClass := p_gnTrafficClass
}
/**
* @desc Receive template for RTCMEM Message (RtcmemPort Primitive)
* @param p_rtcmemMsg Expected RTCMEM Message
* @param p_btpDestinationPort BTP destination port value
* @param p_btpInfo BTP destination port info value (if BTP-B) or BTP source port value (if BTP-A)
*/
template (present) RtcmemInd mw_rtcmemIndWithBtpParameters(
template (present) RTCMEM p_rtcmemMsg,
template UInt16 p_btpDestinationPort := *,
template UInt16 p_btpInfo := *
) modifies mw_rtcmemInd := {
btpDestinationPort := p_btpDestinationPort,
btpInfo := p_btpInfo
};
/**
* @desc Receive template for RTCMEM Message (RtcmemPort Primitive)
* @param p_rtcmemMsg The expected RTCMEM Message
* @param p_ssp SSP value
* @param p_its_aid ITS-AID value
*/
template (present) RtcmemInd mw_rtcmemIndWithSecurityParameters(
template (present) RTCMEM p_rtcmemMsg,
template UInt32 p_its_aid := *
) modifies mw_rtcmemInd := {
ssp := p_ssp,
its_aid := p_its_aid
}
}
group utPrimitives {
/**
* @desc Send template for Upper Tester event initialization
* @member hashedId8 In case of secured mode set, hashedId8 indicate which certificate the IUT shall use
*/
template (value) UtRtcmemInitialize m_rtcmemInitialize := {
hashedId8 := '0000000000000000'O
}
/**
* @desc Send template for Upper Tester Trigger event
*/
template (omit) UtRtcmemTrigger m_utTriggerEvent(
in MsgCount p_msgCnt,
in RTCM_Revision p_rev := rtcmRev3,
in RTCMmessageList p_msgs,
in template (omit) MinuteOfTheYear p_timeStamp := omit,
in template (omit) FullPositionVector p_anchorPoint := omit,
in template (omit) RTCMheader p_rtcmHeader := omit
) := {
msgCnt := p_msgCnt,
rev := p_rev,
msgs := p_msgs,
timeStamp := p_timeStamp,
anchorPoint := p_anchorPoint,
rtcmHeader := p_rtcmHeader
}
/**
* @desc Send template for Upper Tester Trigger event
*/
template (omit) UtRtcmemTermination m_utTriggerTermination(
in MsgCount p_msgCnt
) := {
msgCnt := p_msgCnt
}
}
group rtcmemPduTemplates {
/**
* @desc Send template for RTCMEM PDU
* @param p_map The RTCMEM Message
*/
template (value) RTCMEM m_rtcmemPdu(
in template (value) RTCMcorrections p_rtcmc
) := {
header := m_itsPduHeader( - , - ,LibItsCommon_ASN1_NamedNumbers.ItsPduHeader_messageID_rtcmem_),
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
rtcmc := p_rtcmc
}
/**
* @desc Receive template for RTCMEM PDU
* @param p_rtcmc The RTCMEM Message
*/
template (present) RTCMEM mw_rtcmemPdu(
template (present) RTCMcorrections p_rtcmc := ?
) := {
header := mw_itsPduHeaderRtcmem,
rtcmc := p_rtcmc
}
} // End of group rtcmemPduTemplates
group headerTemplates {
/**
* @desc Default send template for ITS PDU header
* @param p_stationID The source station ID (Default: test system station id)
* @param p_protocolVersion The protocol version (Default: current RTCMEM protocol version)
* @param p_messageID The message Id (Default: RTCMEM id)
*/
template (value) ItsPduHeader m_itsPduHeader(
in template (value) StationID p_stationID := f_getTsStationId(),
in template (value) ItsPduHeader.protocolVersion p_protocolVersion := LibItsCommon_ASN1_NamedNumbers.ItsPduHeader_protocolVersion_currentVersion_,
in template (value) ItsPduHeader.messageID p_messageID
) := {
protocolVersion := p_protocolVersion,
messageID := p_messageID,
stationID := p_stationID
}
/**
* @desc Default receive template for ITS PDU header
* @param p_stationID The expected station id (Default: any)
* @param p_protocolVersion The expected protocol version (Default: current RTCMEM protocol version)
* @param p_messageID The expected message id (Default: RTCMEM message id)
*/
template ItsPduHeader mw_itsPduHeader(
template (present) StationID p_stationID := ?,
template (present) ItsPduHeader.protocolVersion p_protocolVersion := LibItsCommon_ASN1_NamedNumbers.ItsPduHeader_protocolVersion_currentVersion_,
template (present) ItsPduHeader.messageID p_messageID := ?
) := {
protocolVersion := p_protocolVersion,
messageID := p_messageID,
stationID := p_stationID
}
/**
* @desc Default receive template for ITS PDU header
* @param p_stationID The expected station id (Default: any)
* @param p_protocolVersion The expected protocol version (Default: current RTCMEM protocol version)
* @param p_messageID The expected message id (Default: SREM id)
*/
template ItsPduHeader mw_itsPduHeaderRtcmem(
template (present) StationID p_stationID := ?,
template (present) ItsPduHeader.protocolVersion p_protocolVersion := LibItsCommon_ASN1_NamedNumbers.ItsPduHeader_protocolVersion_currentVersion_,
template (present) ItsPduHeader.messageID p_messageID := LibItsCommon_ASN1_NamedNumbers.ItsPduHeader_messageID_srem_
) := {
protocolVersion := p_protocolVersion,
messageID := p_messageID,
stationID := p_stationID
}
/**
* @desc Default receive template for the station id
*/
template (present) StationID mw_anyStationId := ?;
} // End of group headerTemplates
group rtcmemTemplatesSend {
/**
* @desc Receive template for RTCMEM Message
*/
template (value) RTCMcorrections m_defaultRtcmem(
in MsgCount p_msgCnt,
in RTCM_Revision p_rev := rtcmRev3,
in RTCMmessageList p_msgs,
in template (omit) MinuteOfTheYear p_timeStamp := omit,
in template (omit) FullPositionVector p_anchorPoint := omit,
in template (omit) RTCMheader p_rtcmHeader := omit
) := {
msgCnt := p_msgCnt,
rev := p_rev,
timeStamp := p_timeStamp,
anchorPoint := p_anchorPoint,
rtcmHeader := p_rtcmHeader,
msgs := p_msgs,
regional := omit
} // End of template m_defaultRtcmem
} // End of group rtcmemTemplatesSend
group rtcmemTemplatesRecv {
/**
* @desc Receive template for RTCMEM Message
*/
template (present) RTCMcorrections mw_defaultRtcmem := {
msgCnt := ?,
rev := ?,
timeStamp := *,
anchorPoint := *,
rtcmHeader := *,
msgs := ?,
regional := *
}
} // End of group rtcmemTemplatesRecv
} // End of module LibItsRtcmem_Templates