blob: 48e6e261652712a172452d6906ad802579fd9d55 [file] [log] [blame]
module Isobus_Templates {
import from IsobusMessageTypes all
import from IsobusVTMessageTypes all
import from IsobusCMMessageTypes all
import from IsobusNMMessageTypes all
import from Isobus all
import from General_Types all
template CAN_frame_j1939 t_message(Isobus.Priority prio_param, BIT1 res_param, BIT1 dp_param,
OCT1 pf_param, OCT1 ps_param, SourceAddress sa_param, template AnyIsoBusPdu t_can_pdu)
:= { can_j1939 := {
prio := prio_param,
res := res_param,
dp := dp_param,
pf := pf_param,
ps := ps_param,
sa := sa_param},
can_pdu := t_can_pdu
}
template CAN_frame_j1939 t_network_message(Isobus.Priority prio_param, BIT1 res_param, BIT1 dp_param,
OCT1 pf_param, OCT1 ps_param, SourceAddress sa_param, template IsobusNMMessageTypes.NetworkMessage t_networkMessage)
:= { can_j1939 := {
prio := prio_param,
res := res_param,
dp := dp_param,
pf := pf_param,
ps := ps_param,
sa := sa_param},
can_pdu := {networkMessage := t_networkMessage}
}
template ECU2VT t_GetMemoryReqX( INT3 p_memoryRequired) := {
getMemoryReq := {
vtfunction := 194,
reserved2 := 'FF'O,
memoryRequired := p_memoryRequired,
reserved7 := 'FF'O,
reserved8 := 'FF'O
}
};
template AnyIsoBusPdu t_ecu2vt(template ECU2VT t_Message) := {
ecu2vt := t_Message
};
template AnyIsoBusPdu t_vt2ecu(template VT2ECU t_Message) := {
vt2ecu := t_Message
};
template AnyIsoBusPdu t_GetMemoryReq_pdu(INT3 p_memoryRequired) := {
ecu2vt := {getMemoryReq := t_GetMemoryReq(p_memoryRequired)}
}
template ButtonActivationReq t_ButtonActivationReq(
template e_ButtonActivationReq_KeyAactivationCode p_keyAactivationCode,
template ValidObjectID p_objectID,
template ValidObjectID p_parentObjectID,
template KeyNumberType p_buttonKeyCode) := {
vtfunction := 1,
keyAactivationCode := p_keyAactivationCode,
objectID := p_objectID,
parentObjectID := p_parentObjectID,
buttonKeyCode := p_buttonKeyCode,
reserved8 := 'FF'O
}
template ButtonActivationRes t_ButtonActivationRes (
template e_ButtonActivationRes_KeyAactivationCode p_keyAactivationCode,
template ValidObjectID p_objectID,
template ValidObjectID p_parentObjectID,
template KeyNumberType p_buttonKeyCode
) := {
vtfunction := 1,
keyAactivationCode := p_keyAactivationCode,
objectID := p_objectID,
parentObjectID := p_parentObjectID,
buttonKeyCode := p_buttonKeyCode,
reserved8 := 'FF'O
}
template PointingEventReq t_PointingEventReq (
template PositionType p_x_position,
template PositionType p_y_position,
template e_PointingEvent_touchState p_touchState) := {
vtfunction := 2,
x_position := p_x_position,
y_position := p_y_position,
touchState := p_touchState,
reserved7 := 'FF'O,
reserved8 := 'FF'O
}
template PointingEventRes t_PointingEventRes (
template PositionType p_x_position,
template PositionType p_y_position,
template e_PointingEvent_touchState p_touchState) := {
vtfunction := 2,
x_position := p_x_position,
y_position := p_y_position,
touchState := p_touchState,
reserved7 := 'FF'O,
reserved8 := 'FF'O
}
template VTSelectInputObjectReq t_VTSelectInputObjectReq (
template ValidObjectID p_objectID,
template e_VTSelectInputObject_selection p_selection,
template boolean p_objectIsOpenForDataInput,
template boolean p_reserved
// p_reserved for v3 or earlier: true , for v4 and later: false
) := {
vtfunction := 3,
objectID := p_objectID,
selection := p_selection,
bitmask := {
objectIsOpenForDataInput := p_objectIsOpenForDataInput,
reserved1 := p_reserved,
reserved2 := p_reserved,
reserved3 := p_reserved,
reserved4 := p_reserved,
reserved5 := p_reserved,
reserved6 := p_reserved,
reserved7 := p_reserved},
reserved6 := 'FF'O,
reserved7 := 'FF'O,
reserved8 := 'FF'O
}
template VTSelectInputObjectReq_v3AndPrior t_VTSelectInputObjectReq_v3AndPrior (
template ValidObjectID p_objectID,
template e_VTSelectInputObject_selection p_selection) := {
vtfunction := 3,
objectID := p_objectID,
selection := p_selection,
reserved5 := 'FF'O,
reserved6 := 'FF'O,
reserved7 := 'FF'O,
reserved8 := 'FF'O
}
template VTSelectInputObjectReq_v4AndLater t_VTSelectInputObjectReq_v4AndLater (
template ValidObjectID p_objectID,
template e_VTSelectInputObject_selection p_selection,
template VTSelectInputObject_v4AndLater_Bitmask p_bitmask) := {
vtfunction := 3,
objectID := p_objectID,
selection := p_selection,
bitmask := p_bitmask,
reserved6 := 'FF'O,
reserved7 := 'FF'O,
reserved8 := 'FF'O
}
template VTSelectInputObjectRes t_VTSelectInputObjectRes(
template ValidObjectID p_objectID,
template e_VTSelectInputObject_selection p_selection,
template boolean p_objectIsOpenForDataInput,
template boolean p_reserved
// p_reserved for v3 or earlier: true , for v4 and later: false
) := {
vtfunction := 3,
objectID := p_objectID,
selection := p_selection,
bitmask := {
objectIsOpenForDataInput := p_objectIsOpenForDataInput,
reserved1 := p_reserved,
reserved2 := p_reserved,
reserved3 := p_reserved,
reserved4 := p_reserved,
reserved5 := p_reserved,
reserved6 := p_reserved,
reserved7 := p_reserved},
reserved6 := 'FF'O,
reserved7 := 'FF'O,
reserved8 := 'FF'O
}
template VTSelectInputObjectRes_v4AndPrior t_VTSelectInputObjectRes_v4AndPrior(
template ValidObjectID p_objectID,
template e_VTSelectInputObject_selection p_selection) := {
vtfunction := 3,
objectID := p_objectID,
selection := p_selection,
reserved5 := 'FF'O,
reserved6 := 'FF'O,
reserved7 := 'FF'O,
reserved8 := 'FF'O
}
template VTSelectInputObjectRes_v5AndLater t_VTSelectInputObjectRes_v5AndLater(
template ValidObjectID p_objectID,
template e_VTSelectInputObject_selection p_selection,
template VTSelectInputObject_v4AndLater_Bitmask p_bitmask) := {
vtfunction := 3,
objectID := p_objectID,
selection := p_selection,
bitmask := p_bitmask,
reserved6 := 'FF'O,
reserved7 := 'FF'O,
reserved8 := 'FF'O
}
template VTESCReq t_VTESCReq (
template AnyObjectID p_objectID,
template VTESC_ErrorCodes p_errorCodes) := {
vtfunction := 4,
objectID := p_objectID,
errorCodes := p_errorCodes,
reserved5 := 'FF'O,
reserved6 := 'FF'O,
reserved7 := 'FF'O,
reserved8 := 'FF'O
}
template VTESCRes t_VTESCRes (
template AnyObjectID p_objectID) :={
vtfunction := 4,
objectID := p_objectID,
reserved4 := 'FF'O,
reserved5 := 'FF'O,
reserved6 := 'FF'O,
reserved7 := 'FF'O,
reserved8 := 'FF'O
}
template VTChangeNumericValueReq t_VTChangeNumericValueReq (
template ValidObjectID p_objectID,
template OCT4 p_value) := {
vtfunction := 5,
objectID := p_objectID,
reserved4 := 'FF'O,
value_ := p_value
}
template VTChangeNumericValueRes t_VTChangeNumericValueRes (
template ValidObjectID p_objectID,
template OCT4 p_value) := {
vtfunction := 5,
objectID := p_objectID,
reserved4 := 'FF'O,
value_ := p_value
}
template VTChangeActiveMaskReq t_VTChangeActiveMaskReq (
template ValidObjectID p_activeMaskOrWindowMaskOrKeyGroupObjectID,
template VTChangeActiveMasErrorcodes p_errorCodes,
template ValidObjectID p_objectIDcontainingError,
template ValidObjectID p_parentObjectIDofErrorObjectID) :=
{
vtfunction := 6,
activeMaskOrWindowMaskOrKeyGroupObjectID := p_activeMaskOrWindowMaskOrKeyGroupObjectID,
errorCodes := p_errorCodes,
objectIDcontainingError := p_objectIDcontainingError,
parentObjectIDofErrorObjectID := p_parentObjectIDofErrorObjectID
}
template VTChangeActiveMaskRes t_VTChangeActiveMaskRes (
template ValidObjectID p_activeMaskObjectID) := {
vtfunction := 6,
activeMaskObjectID := p_activeMaskObjectID,
reserved4 := 'FF'O,
reserved5 := 'FF'O,
reserved6 := 'FF'O,
reserved7 := 'FF'O,
reserved8 := 'FF'O
}
template VTChangeSoftKeyMaskReq t_VTChangeSoftKeyMaskReq(
template ValidObjectID p_dataOrAlarmMaskObjectID,
template ValidObjectID p_softKeyMaskObjectID,
template VTChangeSoftKeyMaskErrorCodes p_errorCodes) :=
{
vtfunction := 7,
dataOrAlarmMaskObjectID := p_dataOrAlarmMaskObjectID,
softKeyMaskObjectID := p_softKeyMaskObjectID,
errorCodes := p_errorCodes,
reserved7 := 'FF'O,
reserved8 := 'FF'O
}
template VTChangeSoftKeyMaskRes t_VTChangeSoftKeyMaskRes(
template ValidObjectID p_dataOrAlarmMaskObjectID,
template ValidObjectID p_softKeyMaskObjectID) :=
{
vtfunction := 7,
dataOrAlarmMaskObjectID := p_dataOrAlarmMaskObjectID,
softKeyMaskObjectID := p_softKeyMaskObjectID,
reserved6 := 'FF'O,
reserved7 := 'FF'O,
reserved8 := 'FF'O
}
template VTChangeStringValueReq t_VTChangeStringValueReq (
template ValidObjectID p_inputStringOrStringVariableObjectID,
template octetstring p_enteredStringValue) :=
{
vtfunction := 8,
inputStringOrStringVariableObjectID := p_inputStringOrStringVariableObjectID,
numberOfBytes := lengthof(p_enteredStringValue),
enteredStringValue := p_enteredStringValue
}
template VTChangeStringValueRes t_VTChangeStringValueRes (
template ValidObjectID p_inputStringOrStringVariableObjectID) :=
{
vtfunction := 8,
reserved2 := 'FF'O,
reserved3 := 'FF'O,
inputStringOrStringVariableObjectID := p_inputStringOrStringVariableObjectID,
reserved6 := 'FF'O,
reserved7 := 'FF'O,
reserved8 := 'FF'O
}
template GetSupportedWidecharsReq t_GetSupportedWidecharsReq(e_Codeplane p_codeplane, OCT2 p_firstWideCharInInquiryRange, OCT2 p_lastWideCharInInquiryRange) := {
vtfunction := 193,
codeplane := p_codeplane,
firstWideCharInInquiryRange := p_firstWideCharInInquiryRange,
lastWideCharInInquiryRange := p_lastWideCharInInquiryRange,
reserved7 := 'FF'O,
reserved8 := 'FF'O
}
template GetSupportedWidecharsRes t_GetSupportedWidecharsRes(e_Codeplane p_codeplane, OCT2 p_firstWideCharInInquiryRange,
OCT2 p_lastWideCharInInquiryRange,
INT1 p_numberOfRanges,
WideCharRangeArray p_wideCharRangeArray) :=
{
vtfunction := 193,
codeplane := p_codeplane,
firstWideCharInInquiryRange := p_firstWideCharInInquiryRange,
lastWideCharInInquiryRange := p_lastWideCharInInquiryRange,
numberOfRanges := p_numberOfRanges,
wideCharRangeArray := p_wideCharRangeArray
}
template GetMemoryReq t_GetMemoryReq(INT3 p_memoryRequired) := {
vtfunction := 194,
reserved2 := 'FF'O,
memoryRequired := p_memoryRequired,
reserved7 := 'FF'O,
reserved8 := 'FF'O
}
template GetMemoryRes t_GetMemoryRes(e_GetMemoryResVersionNumber p_versionNumber, e_GetMemoryResStatus p_status) := {
vtfunction := 194,
versionNumber := p_versionNumber,
status := p_status,
reserved4 := 'FF'O,
reserved5 := 'FF'O,
reserved6 := 'FF'O,
reserved7 := 'FF'O,
reserved8 := 'FF'O
}
template AnyIsoBusPdu t_WorkingSetMaintenanceReq_pdu(
WorkingSetMaintenanceBitMask p_bitMask,
e_WorkingSetMaintenanceVersionNumber p_versionNumber) := {
ecu2vt := {workingSetMaintenanceReq := t_WorkingSetMaintenanceReq(p_bitMask, p_versionNumber)}
}
template WorkingSetMaintenanceReq t_WorkingSetMaintenanceReq(
WorkingSetMaintenanceBitMask p_bitMask,
e_WorkingSetMaintenanceVersionNumber p_versionNumber) := {
vtfunction := 255,
bitMask := p_bitMask,
versionNumber := p_versionNumber,
reserved4 := 'FF'O,
reserved5 := 'FF'O,
reserved6 := 'FF'O,
reserved7 := 'FF'O,
reserved8 := 'FF'O
}
template N_SP_Response t_N_SP_Response(template e_PortNumber t_fromPort,
template e_PortNumber t_toPort,
template N_SP_Response.requestedParametrics requestedParametrics_param) := {
msgFunction := 132,
portPair := {fromPort := t_fromPort, toPort := t_toPort},
requestedParametrics := requestedParametrics_param
}
template AnyIsoBusPdu t_N_SP_Response_pdu(template e_PortNumber t_fromPort,
template e_PortNumber t_toPort,
template N_SP_Response.requestedParametrics t_requestedParametrics_param) := {
networkMessage := {n_SP_Response := t_N_SP_Response(t_fromPort, t_toPort, t_requestedParametrics_param)
}}
}