Newer
Older
garciay
committed
/**
* @author ETSI / STF422_EETS
garciay
committed
* @desc Templates definitions for Inter-ITS-SCU communications (ISO 24102-4)
*/
module LibItsIicp_Templates {
// LibCommon
import from LibCommon_BasicTypesAndValues {
type
UInt8, UInt16;
};
// LibIts
import from CALMiitsscu language "ASN.1:1997" {
type
IIC_Request, IICrequestTX, IICrequestRX,
PduRequest, PduResponse, PduCounter,
garciay
committed
ITS_SCUalive, ITS_SCUtype, AliveMessage,
garciay
committed
PduErrStatus
};
import from CALMmanagement language "ASN.1:1997" {
type ITS_scuId
};
// FIXME Why ErrStatus not found?
import from CALMllsap language "ASN.1:1997" all;/*{
type
ErrStatus,
garciay
committed
};*/
import from CALMmsap language "ASN.1:1997" all;
import from CALMfntp language "ASN.1:1997" {
type PortNumber
};
import from LibItsIicp_Pixits {
modulepar PX_PDU_REQUEST_FILL_FIELD_VALUE
};
import from LibItsMgt_Templates {
template
mw_mfCommandRequest_any, mw_mfRequestRequest_any
};
garciay
committed
group iicpPrimitives {
group utPrimitives {
/**
* @desc Initializes the IICP IUT
*/
template (value) UtInitialize m_iicpInitialize := {
utIicpInitialize := {
}
} // End of template m_iicpInitialize
} // End of group utPrimitives
group taPrimitives {
} // End of group taPrimitives
/**
* @desc MF-SAP service primitives templates
* @see ISO 24102-3 Clause 8.2.2 MF-COMMAND.request
*/
group mfCommandRequest {
garciay
committed
group mfCommandRequestSend {
/**
* @desc Send template for PduRequest/MF-COMMAND.request
* @param p_mfCommandReq MF-COMMAND.request description
* @see ISO 24102-4 Clause 8.2.1 IIC-Request PDU
*/
template (value) PduRequest m_pduRequest_mfCommandReq(
in template (value) MF_Command_request p_mfCommandReq
) := {
fill := PX_PDU_REQUEST_FILL_FIELD_VALUE,
requests := {
mf_rcmd := p_mfCommandReq
} // End of field 'requests'
} // End of template m_pduRequest_mfCommandReq
} // End of group mfCommandRequestSend
/**
* @desc Receive template for PduRequest/MF-COMMAND.request
* @param p_mfCommandReq MF-COMMAND.request description
* @see ISO 24102-4 Clause 8.2.1 IIC-Request PDU
*/
template (present) PduRequest mw_pduRequest_mfCommandReq(
in template (present) MF_Command_request p_mfCommandReq
) := {
fill := ?,
requests := {
mf_rcmd := p_mfCommandReq
} // End of field 'requests'
} // End of template mw_pduRequest_mfCommandReq
/**
* @desc Receive template for MF-COMMAND.request in case of forwarding the IIC-Request PDU to the IICA
* @param p_iICrequestTX IICrequestTX description
* @see ISO 24102-4 Clause 8.2.1 IIC-Request PDU
*/
template (present) MF_Command_request mdw_mfCommandRequest_iicRequestTx(
in template (present) IICrequestTX p_iicRequestTx
) modifies mw_mfCommandRequest_any := {
command_param := {
mfCmd := {
} // End of field 'mfCmd'
} // End of field 'command_param'
} // End of template mdw_mfCommandRequest_iicRequestTx
/**
* @desc Receive template for MF-COMMAND.request in case of forwarding the IIC-Response PDU to the IICA
* @param p_iICresponseTX IICresponseTX description
* @see ISO 24102-4 Clause 8.2.2 IIC-Response PDU
*/
template MF_Command_request mdw_mfCommandRequest_iicResponseTx(
in template (present) IICresponseTX p_iicResponseTx
) modifies mw_mfCommandRequest_any := {
command_param := {
mfCmd := {
} // End of field 'mfCmd'
} // End of field 'command_param'
} // End of template mdw_mfCommandRequest_iicResponseTx
} // End of group mfCommandRequestRecv
} // End of group mfCommandRequest
* @desc MF-SAP service primitives templates
* @see ISO 24102-3 Clause 8.3 MF-REQUESTs
group mfRequestRequest {
group mfRequestRequestSend {
* @desc Send template for PduRequest/MF-Request.request
* @param p_mf_rreq MF-REQUEST.request mesage description
* @see ISO 24102-4 Clause 8.2.1 IIC-Request PDU
template (value) PduRequest m_pduRequest_mfRequestRequest(
in template (value) MF_Request_request p_mfReqReq
) := {
fill := PX_PDU_REQUEST_FILL_FIELD_VALUE,
requests := {
} // End of field 'requests'
} // End of template m_pduRequest_mfRequestRequest
/**
* @desc Send template for PduResponse/MF-Request.confirm
* @param p_mf_rreq MF-REQUEST.confirm mesage description
* @see ISO 24102-4 Clause 8.2.2 IIC-Response PDU
*/
template (value) PduResponse m_pduResponse_mfRequestConfirm(
in template (value) MF_Request_confirm p_mfReqReq
) := {
fill := PX_PDU_REQUEST_FILL_FIELD_VALUE,
responses := {
} // End of field 'requests'
} // End of template m_pduResponse_mfRequestConfirm
} // End of group mfRequestRequestSend
group mfRequestRequestRecv {
/**
* @desc Receive template for PduRequest/MF-REQUEST.request message
* @param p_mfRequestReq MF-REQUEST.request message description
*/
template (present) PduRequest mw_pduRequest_mfRequestRequest(
in template (present) MF_Request_request p_mfReqReq
) := {
fill := ?,
requests := {
}
} // End of template mw_pduRequest_mfRequestRequest
* @desc Receive template for MF-REQUEST.request in case of forwarding the IIC-Request PDU to the IICA
* @param p_commandRef Command reference
* @param p_iICrequestRX IICrequestRX message description
* @see ISO 24102-4 Clause 8.3.1 IIC-Request PDU
template (value) MF_Request_request m_mfRequestRequest_iicRequestRx(
in template (value) CommandRef p_commandRef,
in template (value) IICrequestRX p_iicRequestRx
) := {
commandRef := p_commandRef,
request_param := {
fill := PX_PDU_REQUEST_FILL_FIELD_VALUE,
mfReq := {
} // End of 'mfReq' field
} // End of 'request_param' field
} // End of template m_mfRequestRequest_iicRequestRx
} // End of group mfRequestRequestRecv
} // End of group mfRequestRequest
/**
* @desc MN-SAP service primitives templates
* @see ISO 24102-3 Clause 7.2 MN-COMMANDs
*/
group mnCommandRequestSend {
/**
* @desc Receive template for PduRequest/MN-COMMAND.request
* @param p_mnCommandReq MN-COMMAND.request description
* @see ISO 24102-4 Clause 8.2.1 IIC-Request PDU
*/
template (value) PduRequest m_pduRequest_mnCommandReq(
in template (value) MN_Command_request p_mnCommandReq
) := {
fill := PX_PDU_REQUEST_FILL_FIELD_VALUE,
requests := {
mn_rcmd := p_mnCommandReq
}
} // End of template m_pduRequest_mnCommandReq
} // End of group mnCommandRequestSend
group mnCommandRequestRecv {
/**
* @desc Receive template for PduRequest/MN-COMMAND.request
* @param p_mnCommandReq MN-COMMAND.request description
* @see ISO 24102-4 Clause 8.2.1 IIC-Request PDU
*/
template (present) PduRequest mw_pduRequest_mnCommandReq(
in template (present) MN_Command_request p_mnCommandReq
) := {
fill := ?,
requests := {
mn_rcmd := p_mnCommandReq
}
} // End of template mw_pduRequest_mnCommandReq
} // End of group mnCommandRequestRecv
} // End of group mnCommandRequest
/**
* @desc MN-SAP service primitives templates
* @see ISO 24102-3 Clause 7.3 MN-REQUESTs
*/
group mnRequestRequest {
group mnRequestRequestSend {
/**
* @desc Send template for PduRequest/MN-Request.request
* @param p_mn_rreq MMN-Request-request mesage description
* @see ISO 24102-4 Clause 8.2.1 IIC-Request PDU
*/
template (value) PduRequest m_pduRequest_mnRequestRequest(
in template (value) MN_Request_request p_mnReqReq
) := {
fill := PX_PDU_REQUEST_FILL_FIELD_VALUE,
requests := {
}
} // End of template m_pduRequest_mnRequestRequest
} // End of group mnRequestRequestSend
group mnRequestRequestRecv {
} // End of group mnRequestRequestRecv
} // End of group mnRequestRequest
* @see ISO 24102-3 Clause 6.4 MN-COMMANDs
group miCommandRequestSend {
/**
* @desc Send template for PduRequest/MI-COMMAND.request
* @param p_miCommandReq MI-COMMAND.request description
* @see ISO 24102-4 Clause 8.2.1 IIC-Request PDU
*/
template (value) PduRequest m_pduRequest_miCommandReq(
in template (value) MI_Command_request p_miCommandReq
) := {
fill := PX_PDU_REQUEST_FILL_FIELD_VALUE,
requests := {
mi_rcmd := p_miCommandReq
}
} // End of template m_pduRequest_miCommandReq
} // End of group miCommandRequestSend
group miCommandRequestRecv {
/**
* @desc Receive template for PduRequest/MI-COMMAND.request
* @param p_miCommandReq MI-COMMAND.request description
* @see ISO 24102-4 Clause 8.2.1 IIC-Request PDU
*/
template (present) PduRequest mw_pduRequest_miCommandReq(
in template (present) MI_Command_request p_miCommandReq
) := {
fill := ?,
requests := {
mi_rcmd := p_miCommandReq
}
} // End of template mw_pduRequest_miCommandReq
} // End of group miCommandRequestRecv
} // End of group miCommandRequest
/**
* @desc MI-SAP service primitives templates
* @see ISO 24102-3 Clause 6.2 MI-SETs
* @see ISO 24102-3 Clause 6.3 MI-GETs
*/
group miGetSetRequest {
group miGetSetRequestSend {
/**
* @desc Send template for PduRequest/MI-GET.request
* @param p_mi_rget MI-GET.request mesage description
* @see ISO 24102-4 Clause 8.2.1 IIC-Request PDU
*/
template (value) PduRequest m_pduRequest_miGetReq(
) := {
fill := PX_PDU_REQUEST_FILL_FIELD_VALUE,
requests := {
}
} // End of template m_pduRequest_miGetReq
/**
* @desc Send template for PduRequest/MI-SET.request
* @param p_mi_rget MI-SET.request mesage description
* @see ISO 24102-4 Clause 8.2.1 IIC-Request PDU
*/
template (value) PduRequest m_pduRequest_miSetReq(
) := {
fill := PX_PDU_REQUEST_FILL_FIELD_VALUE,
requests := {
}
} // End of template m_pduRequest_miSetReq
} // End of group miGetSetRequestSend
} // End of group miGetSetRequest
* @desc MI-SAP service primitives templates
* @see ISO 24102-3 Clause 6.5 MI-REQUESTs
group miRequestRequest {
group miRequestRequestSend {
* @desc Send template for PduRequest/MF-Request.request
* @param p_mi_rreq MI-REQUEST.request mesage description
* @see ISO 24102-4 Clause 8.2.1 IIC-Request PDU
template (value) PduRequest m_pduRequest_miRequestRequest(
in template (value) MI_Request_request p_miReqReq
) := {
fill := PX_PDU_REQUEST_FILL_FIELD_VALUE,
requests := {
}
} // End of template m_pduRequest_miRequestRequest
} // End of group miRequestRequestSend
group miRequestRequestRecv {
} // End of group miRequestRequestRecv
garciay
committed
} // End of group miRequestRequest
garciay
committed
/**
* @desc ITS-SCUalive templates
garciay
committed
*/
garciay
committed
garciay
committed
/**
* @desc Send template for IIC-Request PDU ITS-SCUalive message
* @param p_alive ITS_SCUalive message description
* @see ISO 24102-4 Clause 9.2 ITS-SCU-ID assignment
*/
template (value) PduRequest m_pduRequest_scuAlive(
garciay
committed
in template (value) ITS_SCUalive p_alive
) := {
fill := PX_PDU_REQUEST_FILL_FIELD_VALUE,
requests := {
alive_ := p_alive
}
garciay
committed
/**
* @desc Send template for IIC-Request PDU ITS-SCUalive message
* @param p_message The Alive message (new, delete...)
* @param p_its_scuType The type of ITS-SCU in the "Data" element
* @see ISO 24102-4 Table 4 — Error handling procedure for IIC-Response PDU
*/
garciay
committed
template (value) ITS_SCUalive m_scuAlive(
in template (value) AliveMessage p_message,
garciay
committed
) := {
message_ := p_message,
garciay
committed
} // End of template m_scuAlive_any
garciay
committed
garciay
committed
/**
* @desc Receive template for ITS-SCUalive message
* @param p_message The Alive message (new, delete...)
* @param p_its_scuType The type of ITS-SCU in the "Data" element
* @see ISO 24102-4 Table 4 — Error handling procedure for IIC-Response PDU
*/
template ITS_SCUalive mw_scuAlive(
in template (present) AliveMessage p_message,
in template (present) ITS_SCUtype p_itsScuType
} // End of template mw_scuAlive
/**
* @desc Receive template for MF-REQUEST.request/IICrequestRX message
* @param p_iICrequestRX IICrequestRX message description
* @see ISO 24102-4 Clause 8.3.1 IIC-Request PDU
*/
template MF_Request mw_mfRequest_scuAlive(
in template (present) IICrequestRX p_iicRequestRx
garciay
committed
) := {
fill := ?,
mfReq := {
garciay
committed
}
garciay
committed
/**
* @desc Receive template for IICrequestTX/SCU-Alive message
* @param p_sourceItsScuId The source ITS-SCU-ID
* @param p_destinationItsScuId The destination ITS-SCU-ID
* @param p_alive The Alive message (new, delete...)
* @see ISO 24102-4 Clause 8.2.1 IIC-Request PDU
*/
template IICrequestTX mdw_iicRequestTx_scuAlive(
in template (present) ITS_scuId p_sourceItsScuId,
in template (present) ITS_scuId p_destinationItsScuId,
garciay
committed
in template (present) ITS_SCUalive p_alive
) modifies mw_iicRequestTx_any := {
sourceITS_scuId := p_sourceItsScuId,
destinationITS_scuId := p_destinationItsScuId,
garciay
committed
pduRequest := {
requests := {
alive_ := p_alive
} // End of 'requests' field
} // End of 'pduRequest' field
} // End of template mdw_iicRequestTx_scuAlive
garciay
committed
/**
* @desc Receive template for IICrequestRX/SCU-Alive message
* @param p_sourceItsScuId The source ITS-SCU-ID
* @param p_destinationItsScuId The destination ITS-SCU-ID
* @param p_alive The Alive message (alive, new, delete)
* @see ISO 24102-4 Clause 8.3.1 IIC-Request PDU
* @see ISO 24102-4 Table B.2 — ITS-SCU-id request PDU
*/
template IICrequestRX mdw_iicRequestRx_scuAlive(
in template (present) ITS_scuId p_sourceItsScuId,
in template (present) ITS_scuId p_destinationItsScuId,
garciay
committed
in template (present) ITS_SCUalive p_alive
) modifies mw_iicRequestTx_any := { // WARNING type IIC_Request == IICrequestTX == IICrequestRX;
sourceITS_scuId := p_sourceItsScuId,
destinationITS_scuId := p_destinationItsScuId,
garciay
committed
pduRequest := {
requests := {
alive_ := p_alive
} // End of 'requests' field
} // End of 'pduRequest' field
} // End of template mdw_iicRequestRx_scuAlive
garciay
committed
/**
* @desc Receive template for IICresponseTX/SCU-Alive message
* @param p_sourceItsScuId The source ITS-SCU-ID
* @param p_destinationItsScuId The destination ITS-SCU-ID
* @param p_alive The Alive message (new, delete...)
* @param p_errorStatus Error status
* @see ISO 24102-4 Clause 8.2.1 IIC-Request PDU
* @see ISO 24102-4 Table 4 — Error handling procedure for IIC-Response PDU
*/
template IICresponseTX mdw_iicResponseTx_scuAlive(
in template (present) ITS_scuId p_sourceItsScuId,
in template (present) ITS_scuId p_destinationItsScuId,
garciay
committed
in template (present) ITS_SCUalive p_alive,
in template (present) PduErrStatus p_errorStatus
) modifies mw_iicResponseTx_any := {
sourceITS_scuId := p_sourceItsScuId,
destinationITS_scuId := p_destinationItsScuId,
garciay
committed
pduResponse := {
responses := {
alive_ := p_alive
} // End of 'responses' field
}, // End of 'pduResponse' field
errorStatus := p_errorStatus
} // End of template mdw_iicResponseTx_scuAlive
garciay
committed
garciay
committed
garciay
committed
/**
* @desc ITS-SCUalive templates
* @see ISO 24102-4 Clause 8.2.1 IIC-Request PDU
* @see ISO 24102-4 Clause B.2.3 VCI-info
*/
garciay
committed
group vciInfoReq {
garciay
committed
/**
* @desc Send template for IIC-Request PDU VCI-info message
* @param p_vCI_info Request to all ITS-SCUs containing a router, to report about existing VCIs. Information to be stored in VCI list
* @see ISO 24102-4 Clause B.2.3 VCI-info
*/
template (value) PduRequest m_pduRequest_vciInfoReq(
in template (value) VCI_info_req p_vciInfo
garciay
committed
) := {
fill := PX_PDU_REQUEST_FILL_FIELD_VALUE,
requests := {
garciay
committed
}
garciay
committed
/**
* @desc Send template for VCI-info-req message
* @param p_medType Indicates requested type of medium as specified in ISO 21218
* @param p_iciaClass Indicates requested CI access class as specified in ISO 21218
* @param p_ciClass Indicates requested CI class as specified in ISO 21218
* @see ISO 24102-4 Table B.4 — VCI-info request PDU
*/
garciay
committed
template (value) VCI_info_req m_vciInfoReq(
in template (value) MedType p_medType,
in template (value) CIaClass p_iciaClass,
in template (value) CIclass p_ciClass
) := {
medType := p_medType,
ciaClass := p_iciaClass,
ciClass := p_ciClass
} // End of template m_vciInfoReq
garciay
committed
garciay
committed
/**
* @desc Receive template for IICrequestTX/VCI-info message
* @param p_sourceItsScuId The source ITS-SCU-ID
* @param p_destinationItsScuId The destination ITS-SCU-ID
* @param p_vCI_info The VCI-info request
* @see ISO 24102-4 Clause 8.2.1 IIC-Request PDU
*/
template IICrequestRX mdw_iicRequestTx_vciInfoReq(
in template (present) ITS_scuId p_sourceItsScuId,
in template (present) ITS_scuId p_destinationItsScuId,
in template (present) VCI_info_req p_vciInfo
garciay
committed
) modifies mw_iicRequestTx_any := {
sourceITS_scuId := p_sourceItsScuId,
destinationITS_scuId := p_destinationItsScuId,
garciay
committed
pduRequest := {
requests := {
garciay
committed
} // End of 'requests' field
} // End of 'pduRequest' field
} // End of template mdw_iicRequestTx_vciInfoReq
garciay
committed
/**
* @desc Receive template for VCI-info-req message
* @param p_medType Indicates requested type of medium as specified in ISO 21218
* @param p_iciaClass Indicates requested CI access class as specified in ISO 21218
* @param p_ciClass Indicates requested CI class as specified in ISO 21218
* @see ISO 24102-4 Table B.4 — VCI-info request PDU
*/
garciay
committed
template VCI_info_req mw_vciInfoReq(
in template (present) MedType p_medType,
in template (present) CIaClass p_iciaClass,
in template (present) CIclass p_ciClass
) := {
medType := p_medType,
ciaClass := p_iciaClass,
ciClass := p_ciClass
} // End of template mw_vciInfoReq
garciay
committed
} // End of group vciInfoReq
group vciInfo {
garciay
committed
/**
* @desc Send template for VCI-Info message
* @param p_linkId Link identifier of the CI
* @param p_medType Indicates requested type of medium as specified in ISO 21218
* @param p_iciaClass Indicates requested CI access class as specified in ISO 21218
* @param p_ciClass Indicates requested CI class as specified in ISO 21218
* @param p_status Status of the CI
* @see ISO 24102-4 Table B.6 — VCI-update request PDU
*/
template (value) VCI_Info m_vciInfo(
in template (value) Link_ID p_linkId,
in template (value) MedType p_medType,
in template (value) CIaClass p_iciaClass,
in template (value) CIclass p_ciClass,
in template (value) CIstatus p_status
) := {
medType := p_medType,
ciaClass := p_iciaClass,
ciClass := p_ciClass,
status := p_status
} // End of template m_vciInfo
} // End of group vciInfoSend
garciay
committed
garciay
committed
template IICresponseRX mdw_iicResponseTx_vciInfoRes(
in template (present) ITS_scuId p_sourceItsScuId,
in template (present) ITS_scuId p_destinationItsScuId,
in template (present) VCI_info_res p_vciInfoRes
sourceITS_scuId := p_sourceItsScuId,
destinationITS_scuId := p_destinationItsScuId,
} // End of 'responses' field
}, // End of 'pduResponse' field
errorStatus := 0
} // End of template mdw_iicRequestTx_VCIInfoReq
/**
* @desc Receive template for VCI-info-res message
* @param p_linkId Link identifier of the CI
* @param p_medType Indicates requested type of medium as specified in ISO 21218
* @param p_iciaClass Indicates requested CI access class as specified in ISO 21218
* @param p_ciClass Indicates requested CI class as specified in ISO 21218
* @param p_status Status of the CI
*/
template (present) VCI_Info mw_vciInfo(
in template (present) Link_ID p_linkId,
in template (present) MedType p_medType,
in template (present) CIaClass p_iciaClass,
in template (present) CIclass p_ciClass,
in template (present) CIstatus p_status
) := {
medType := p_medType,
ciaClass := p_iciaClass,
ciClass := p_ciClass,
status := p_status
} // End of template mw_vciInfo
} // End of group vciInfoRecv
garciay
committed
} // End of group vciInfo
group vciUpdate {
group vciUpdateSend {
/**
* @desc Send template for IIC-Request PDU VCI-update message
* @param p_vCI_update VCI-update message description
* @see ISO 24102-4 Clause B.2.4 VCI-update
*/
template (value) PduRequest m_pduRequest_vciUpdate(
in template (value) VCI_update_req p_vciUpdate
) := {
fill := PX_PDU_REQUEST_FILL_FIELD_VALUE,
requests := {
} // End of group vciUpdateSend
group vciUpdateRecv {
/**
* @desc Receive template for IICrequestTX/SCU-Alive message
* @param p_sourceItsScuId The source ITS-SCU-ID
* @param p_destinationItsScuId The destination ITS-SCU-ID
* @param p_vciUpdate The VCI-update message
* @see ISO 24102-4 Clause 8.2.1 IIC-Request PDU
*/
template (present) IICrequestTX mdw_iicRequestTx_vciUpdate(
in template (present) ITS_scuId p_sourceItsScuId,
in template (present) ITS_scuId p_destinationItsScuId,
in template (present) VCI_update_req p_vciUpdate
sourceITS_scuId := p_sourceItsScuId,
destinationITS_scuId := p_destinationItsScuId,
} // End of 'requests' field
} // End of 'pduRequest' field
} // End of template mdw_iicRequestTx_vciUpdate
template (present) VCI_update_req mw_vciUpdate := {
} // End of template mw_vciUpdate
} // End of group vciUpdateRecv
} // End of group vciUpdate
garciay
committed
group iicpTemplates {
garciay
committed
group iicpTemplatesSend {
garciay
committed
/**
* @desc Send template for Iisc packet (Inter-ITS-SCU communication Primitives)
* @param p_msgInOut Inter-ITS-SCU communication packet to send
garciay
committed
*/
garciay
committed
template (value) IicpReq m_iicpReq(
template (value) IIC_Request p_msgInOut
garciay
committed
) := {
garciay
committed
} // End of template m_iicpReq
garciay
committed
/**
* @desc Send template for Iisc packet (Inter-ITS-SCU communication Primitives)
* @param p_msgInOut Inter-ITS-SCU communication packet to send
*/
template (value) IicpResp m_iicpResp(
template (value) IIC_Response p_msgInOut
) := {
msgInOut := p_msgInOut
} // End of template m_iicpResp
garciay
committed
template (value) IIC_Request m_iicRequest(
in template (value) ITS_scuId p_sourceItsScuId,
in template (value) ITS_scuId p_destinationItsScuId,
garciay
committed
in template (value) PduCounter p_pduCounter,
in template (value) PduRequest p_pduRequest
garciay
committed
) := {
sourceITS_scuId := p_sourceItsScuId,
destinationITS_scuId := p_destinationItsScuId,
pduCounter := p_pduCounter,
pduRequest := p_pduRequest,
seqRq := ''O
garciay
committed
} // End of template m_iicRequest
template (value) IIC_Response m_iicResponse(
in template (value) ITS_scuId p_sourceItsScuId,
in template (value) ITS_scuId p_destinationItsScuId,
in template (value) PduCounter p_pduCounter,
in template (value) PduErrStatus p_errorStatus,
in template (value) PduResponse p_pduResponse
) := {
sourceITS_scuId := p_sourceItsScuId,
destinationITS_scuId := p_destinationItsScuId,
pduCounter := p_pduCounter,
errorStatus := p_errorStatus,
pduResponse := p_pduResponse,
seqRs := ''O
} // End of template m_iicResponse
} // End of group iicpTemplatesSend
garciay
committed
group iicpTemplatesRecv {
garciay
committed
/**
* @desc Receive template for Iisc packet (Inter-ITS-SCU communication Primitives)
garciay
committed
* @param p_iicpMsg Inter-ITS-SCU communication packet to receive
garciay
committed
*/
template (present) IicpReq mw_iicpRequest(
garciay
committed
template (present) IIC_Request p_iicpMsg
garciay
committed
) := {
garciay
committed
msgInOut := p_iicpMsg
garciay
committed
/**
* @desc Receive template for Iisc packet (Inter-ITS-SCU communication Primitives)
garciay
committed
* @param p_iicpMsg Inter-ITS-SCU communication packet to be received
garciay
committed
*/
template (present) IicpResp mw_iicpResponse(
garciay
committed
template (present) IIC_Response p_iicpMsg
garciay
committed
) := {
garciay
committed
msgInOut := p_iicpMsg
garciay
committed
/**
* @desc Unspecified receive template
* Used for:
* <li>modifying restrictif template</li>
* <li>default altstep</li>
*
garciay
committed
*
* Note that all fields are mandatory
*/
garciay
committed
sourceITS_scuId := ?,
destinationITS_scuId := ?,
pduCounter := ?,
pduRequest := {
fill := ?,
requests := ?
}, // End of field 'pduRequest'
garciay
committed
seqRq := ?
garciay
committed
} // End of template mw_iicpRequest_any
garciay
committed
template (present) IIC_Request mdw_iicRequest_notify(
in template (present) ITS_scuId p_sourceItsScuId,
in template (present) ITS_scuId p_destinationItsScuId,
in template (present) PduCounter p_pduCounter,
sourceITS_scuId := p_sourceItsScuId,
destinationITS_scuId := p_destinationItsScuId,
} // End of template mdw_iicRequest_notify
garciay
committed
/**
* @desc Unspecified receive template
* Used for:
* <li>modifying restrictif template</li>
* <li>default altstep</li>
*
garciay
committed
*
* Note that all fields are mandatory
*/
garciay
committed
template IIC_Response mw_iicpResponse_any := {
garciay
committed
sourceITS_scuId := ?,
destinationITS_scuId := ?,
pduCounter := ?,
pduResponse := {
fill := ?,
responses := ?
}, // End of field 'pduResponse'
garciay
committed
errorStatus := ?,
seqRs := ?
garciay
committed
} // End of template mw_iicpResponse_any
garciay
committed
/**
* @desc Receive template for success response
*/
template IIC_Response mdw_iicpResponse_success
modifies mw_iicpResponse_any := {
errorStatus := 0 // FIXME Check why TTWB does not accespt success
} // End of template mdw_iicpResponse_success
} // End of group iicpTemplatesRecv
garciay
committed
group remoteCommands {
* @desc Unspecified receive template for IICRequestTx service primitive
* Used for:
* <li>modifying restrictif template</li>
garciay
committed
template IICrequestTX mw_iicRequestTx_any := {
sourceITS_scuId := ?,
destinationITS_scuId := ?,
pduCounter := ?,
pduRequest := {
fill := ?,
requests := ?
}, // End of field 'pduRequest'
garciay
committed
seqRq := ?
} // End of template mw_iicRequestTx_any
* @desc Unspecified receive template for IICResponseTx service primitive
* Used for:
* <li>modifying restrictif template</li>
garciay
committed
template IICresponseTX mw_iicResponseTx_any := {
sourceITS_scuId := ?,
destinationITS_scuId := ?,
pduCounter := ?,
pduResponse := {
fill := ?,
responses := ?
}, // End of field 'pduResponse'
garciay
committed
errorStatus := ?,
seqRs := ?
} // End of template mw_iicResponseTx_any
group miCommands {
/**
* @desc Receive template for IICrequestTX/remote command message
* @param p_sourceItsScuId The source ITS-SCU-ID
* @param p_destinationItsScuId The other ITS-SCU-ID
* @param p_mi_rcmd The MI-COMMAND.request message
* @see ISO 24102-4 Clause 8.2.1 IIC-Request PDU
*/
template IICrequestTX mdw_iicRequestTx_miCommandRequest(
in template (present) ITS_scuId p_sourceItsScuId,
in template (present) ITS_scuId p_destinationItsScuId,
in template (present) MI_Command_request p_miReqCmd
sourceITS_scuId := p_sourceItsScuId,
destinationITS_scuId := p_destinationItsScuId,
} // End of 'requests' field
} // End of 'pduRequest' field
} // End of template mdw_iicRequestTx_miCommandRequest
/**
* @desc Receive template for IICresponseTX message with success status
* @param p_sourceItsScuId The source ITS-SCU-ID
* @param p_destinationItsScuId The destination ITS-SCU-ID
* @param p_mi_rcmd The MI-COMMAND.confirm message
* @see ISO 24102-4 Clause 8.2.2 IIC-Response PDU
*/
template IICresponseTX mdw_iicResponseTx_miCommandRequest(
in template (present) ITS_scuId p_sourceItsScuId,
in template (present) ITS_scuId p_destinationItsScuId,
in template (present) MI_Command_confirm p_miReqCmd
sourceITS_scuId := p_sourceItsScuId,
destinationITS_scuId := p_destinationItsScuId,
} // End of 'requests' field
}, // End of 'pduRequest' field
errorStatus := 0
} // End of template mdw_iicResponseTx_miCommandRequest
/**
* @desc Receive template for IICrequestTX/remote command message
* @param p_sourceItsScuId The source ITS-SCU-ID
* @param p_destinationItsScuId The other ITS-SCU-ID
* @param p_mi_rreq The MI-Request.request message
template IICrequestTX mdw_iicRequestTx_miRequestRequest(
in template (present) ITS_scuId p_sourceItsScuId,
in template (present) ITS_scuId p_destinationItsScuId,
in template (present) MI_Request_request p_miReqReq
sourceITS_scuId := p_sourceItsScuId,
destinationITS_scuId := p_destinationItsScuId,
} // End of 'requests' field
} // End of 'pduRequest' field
} // End of template mdw_iicRequestTx_miRequestRequest
/**
* @desc Receive template for IICresponseTX message with success status
* @param p_sourceItsScuId The source ITS-SCU-ID
* @param p_destinationItsScuId The destination ITS-SCU-ID
* @param p_mi_rcmd The MI-COMMAND.confirm message