Newer
Older
/**
* @version $Url: https://oldforge.etsi.org/svn/LibIts/tags/20170222_STF527_Final/ttcn/IVIM/LibItsIvim_Templates.ttcn $
* $Id: LibItsIvim_Templates.ttcn 1316 2017-01-03 09:03:43Z garciay $
* @desc Module containing base template definitions for IVIM
* @copyright ETSI Copyright Notification
* No part may be reproduced except as authorized by written permission.
* The copyright and the foregoing restriction extend to reproduction in all media.
* All rights reserved.
*
*/
module LibItsIvim_Templates {
// LibCommon
import from LibCommon_BasicTypesAndValues all;
import from LibCommon_DataStrings all;
// LibIts
import from ITS_Container language "ASN.1:1997" all;
import from IVIM_PDU_Descriptions language "ASN.1:1997" all;
import from IVI language "ASN.1:1997" all;
import from EfcDsrcApplication language "ASN.1:1997" all;
import from AVIAEINumberingAndDataStructures language "ASN.1:1997" all;
import from CITSapplMgmtIDs language "ASN.1:1997" all;
import from IEEE1609dot2BaseTypes language "ASN.1:1997" all;
// LibItsCommon
import from LibItsCommon_TypesAndValues all;
import from LibItsCommon_Functions all;
import from LibItsCommon_Pixits all;
import from LibItsCommon_ASN1_NamedNumbers all;
// LibItsIvim
import from LibItsIvim_TestSystem all;
import from LibItsIvim_TypesAndValues all;
import from LibItsIvim_ASN1_IVInamedNumbers all;
group asn1Constants {
} // End of group asn1Constants
group primitivesTemplates {
/**
* @desc Send template for IVI Message (IvimPort Primitive)
* @param p_iviMsg The IVI Message to be sent
*/
template (value) IvimReq m_ivimReq(
in template (value) IVIM p_iviMsg
) := {
msgOut := p_iviMsg
} // End of template m_ivimReq
/**
* @desc Receive template for IVI Message (IvimPort Primitive)
* @param p_iviMsg The expected IVI Message
*/
template (present) IvimInd mw_ivimInd(
) := {
msgIn := p_iviMsg,
gnNextHeader := *,
gnHeaderType := *,
gnHeaderSubtype := *,
gnLifetime := *,
gnTrafficClass := *,
btpDestinationPort := *,
btpInfo := *,
ssp := *,
its_aid := *
} // End of template mw_ivimInd
/**
* @desc Send template for IVI Message (IvimPort Primitive)
* @param p_iviMsg The expected IVI Message
*/
template (value) IvimInd m_ivimInd(
recvTime := omit,
gnNextHeader := omit,
gnHeaderType := omit,
gnHeaderSubtype := omit,
gnLifetime := omit,
gnTrafficClass := omit,
btpDestinationPort := omit,
btpInfo := omit,
ssp := omit,
its_aid := omit
} // End of template m_ivimInd
/**
* @desc Receive template for IVI Message (IvimPort Primitive)
* @param p_iviMsg The expected IVI 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 IvimInd mw_ivimIndWithGnParameters(
template (present) IVIM p_iviMsg := ?,
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_ivimInd := {
gnNextHeader := p_gnNextHeader,
gnHeaderType := p_gnHeaderType,
gnHeaderSubtype := p_gnHeaderSubtype,
gnLifetime := p_gnLifetime,
gnTrafficClass := p_gnTrafficClass
} // End of template mw_ivimIndWithGnParameters
/**
* @desc Receive template for IVI Message (IvimPort Primitive)
* @param p_iviMsg The expected IVI 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 IvimInd mw_ivimIndWithBtpParameters(
template (present) IVIM p_iviMsg := ?,
template UInt16 p_btpDestinationPort := *,
template UInt16 p_btpInfo := *
) modifies mw_ivimInd := {
btpDestinationPort := p_btpDestinationPort,
btpInfo := p_btpInfo
} // End of template mw_ivimIndWithBtpParameters
/**
* @desc Receive template for IVI Message (IvimPort Primitive)
* @param p_iviMsg The expected IVI Message
* @param p_ssp SSP security parameter
* @param p_its_aid ITS-AID value
*/
template IvimInd mw_ivimIndWithSecurityParameters(
template (present) IVIM p_iviMsg := ?,
template UInt32 p_its_aid := *
) modifies mw_ivimInd := {
ssp := p_ssp,
its_aid := p_its_aid
} // End of template mw_ivimIndWithSecurityParameters
/**
* @desc Send template for IVI Message (IvimPort Primitive)
* @param p_iviMsg The expected IVI Message
* @param p_ssp SSP security parameter
* @param p_its_aid ITS-AID value
*/
template IvimInd m_ivimIndWithSecurityParameters(
template (value) IVIM p_iviMsg,
template Bit256 p_ssp := omit,
template UInt32 p_its_aid := omit
) modifies m_ivimInd := {
ssp := p_ssp,
its_aid := p_its_aid
} // End of template mw_ivimIndWithSecurityParameters
group utPrimitives {
/**
* @desc Send template for Upper Tester event initialization
*/
template (value) UtIvimInitialize m_ivimStructureInitialize(
in HashedId8 p_hashedId8 := '0000000000000000'O
} // End of template m_ivimStructureInitialize
/**
* @desc Send template for Upper Tester Trigger event
* @param p_repetitionInterval Repetition interval (Default: 4 seconds)
* @param p_validFrom Valid From value (Default: omit)
* @param p_validTo Valid To value (Default: omit)
* @param p_connectedIviStructures List of ConnectedIviStructure (Default: omit)
* @param p_optional_ Optional field (Default: omit)
*/
template (value) UtIvimTrigger m_utTriggerEvent(
template (omit) TimestampIts p_repetitionInterval := c_duration_4sec,
template (omit) TimestampIts p_validFrom := omit,
Bostjan Pintar
committed
template (omit) TimestampIts p_validTo := omit,
template (omit) ZidList p_zoneIds := omit,
template (omit) LanePosition p_laneNumber := omit,
template (omit) RelavanceZidList p_relavanceZoneIds := omit,
template (omit) DetectionZidList p_detectionZoneIds := omit,
template (omit) DriverAwarenesZidList p_driverAwarenesZoneIds := omit,
template (omit) VarLengthNumber p_itsRrid := omit,
template (omit) Direction p_directionGic := omit,
template (omit) integer p_layoutId := omit
) := {
validFrom := p_validFrom,
Bostjan Pintar
committed
repetitionInterval := p_repetitionInterval,
zoneIds := p_zoneIds,
laneNumber := p_laneNumber,
relavanceZoneIds := p_relavanceZoneIds,
detectionZoneIds := p_detectionZoneIds,
driverAwarenesZoneIds := p_driverAwarenesZoneIds,
itsRrid := p_itsRrid,
directionGic := p_directionGic,
layoutId := p_layoutId
} // End of template m_utTriggerEvent
/**
* @desc Send template for Upper Tester event update
* @param p_iviIdentificationNumber The p_iviIVI identification number
* @param p_timeStamp Time stamp value (Default: 2 seconds)
* @param p_validFrom Valid From value (Default: omit)
* @param p_validTo Valid To value (Default: omit)
* @param p_connectedIviStructures List of ConnectedIviStructure (Default: omit)
* @param p_optional_ Optional field (Default: omit)
*/
template (value) IviIdentificationNumber p_iviIdentificationNumber,
template (omit) TimestampIts p_timeStamp := c_duration_2sec,
template (omit) TimestampIts p_validFrom := omit,
template (omit) TimestampIts p_validTo := omit,
template (omit) IVIManagementContainer.connectedIviStructures p_connectedIviStructures := omit,
template (omit) IviStructure.optional_ p_optional_ := omit
) := {
iviIdentificationNumber := p_iviIdentificationNumber,
validFrom := p_validFrom,
validTo := p_validTo,
connectedIviStructures := p_connectedIviStructures,
optional_ := p_optional_
} // End of template m_utIvimUpdateEvent
/**
* @desc Send template for Upper Tester event cancellation
* @param p_actionId The action id
*/
template (value) UtIvimTermination m_utEventCancellation(
template (value) IviIdentificationNumber p_iviIdentificationNumber
) := {
iviIdentificationNumber := p_iviIdentificationNumber
} // End of template m_utEventCancellation
} // End of group utPrimitives
} // End of group primitivesTemplates
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 IVI protocol version)
* @param p_messageID The message Id (Default: IVI message id)
*/
template (value) ItsPduHeader m_itsPduHeader(
template (value) StationID p_stationID := f_getTsStationId(),
template (value) ItsPduHeader.protocolVersion p_protocolVersion := LibItsCommon_ASN1_NamedNumbers.ItsPduHeader_protocolVersion_currentVersion_,
template (value) ItsPduHeader.messageID p_messageID := LibItsCommon_ASN1_NamedNumbers.ItsPduHeader_messageID_ivim_
) := {
protocolVersion := p_protocolVersion,
messageID := p_messageID,
stationID := p_stationID
} // End of template m_itsPduHeader
/**
* @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 IVI protocol version)
* @param p_messageID The expected message id (Default: IVI message id)
*/
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_ivim_
) := {
protocolVersion := p_protocolVersion,
messageID := p_messageID,
stationID := p_stationID
} // End of template mw_itsPduHeader
template (present) StationID mw_anyStationId := ?;
} // End of group headerTemplates
group ivimPduTemplates {
/**
* @desc Send template for IVIM PDU
* @param p_ivim The IVI Message
*/
template (value) IVIM m_ivimStructurePdu(
template (value) IviStructure p_ivim
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
) := {
header := m_itsPduHeader,
ivi := p_ivim
} // End of template m_ivimStructurePdu
/**
* @desc Default receive template for IVIM PDU
* @param p_itsPduHeader The expected ITS PDU header (Default: any)
* @param p_ivim The expected IVI Message (Default: any)
*/
template (present) IVIM mw_anyIvimPdu(
template (present) ItsPduHeader p_itsPduHeader := ?,
template (present) IviStructure p_ivim := ?
) := {
header := p_itsPduHeader,
ivi := p_ivim
} // End of template mw_anyIvimPdu
/**
* @desc Receive template for IVIM PDU
* @param p_ivim The expected IVI Message
* @param p_stationID The expected station id (Default: any)
* @param p_protocolVersion The expected protocol version (Default: current IVI protocol version)
* @param p_messageID The expected message id (Default: IVI message id)
*/
template (present) IVIM mw_ivimPdu(
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_ivim_
) := {
header := mw_itsPduHeader(p_stationID, p_protocolVersion, p_messageID),
ivi := p_ivim
} // End of template mw_ivimPdu
} // End of group ivimPduTemplates
group iviStructureTemplates {
/**
* @desc Send template for IVI Message
* @param p_mandatory The Management Container
* @param p_optional_ A list of IVI Container (Default: omit)
*/
template (omit) IviStructure m_ivimStructure(
in template (value) IVIManagementContainer p_mandatory,
in template (omit) IviStructure.optional_ p_optional_ := omit
) := {
mandatory := p_mandatory,
} // End of template m_ivimStructure
/**
* @desc Receive template for IVI Message
* @param p_mandatory The Management Container
* @param p_optional_ A list of IVI Container (Default: omit)
*/
template (present) IviStructure mw_ivimStructure(
template (present) IVIManagementContainer p_mandatory := ?,
template IviStructure.optional_ p_optional_ := *
) := {
mandatory := p_mandatory,
optional_ := p_optional_
} // End of template mw_ivimStructure
/**
* @desc Send template for DEN Message for event termination.
* @param p_iviIdentificationNumber The IVIM identification number
*/
template (value) IviStructure m_ivimStructureCancellation(
in template (value) IviIdentificationNumber p_iviIdentificationNumber
) := {
mandatory := valueof(m_iviManagementContainer(f_getProvider(), valueof(p_iviIdentificationNumber), IviStatus_cancellation_)),
optional_ := omit
} // End of template m_ivimStructureCancellation
} // End of group iviStructureTemplates
group iviManagementContainerGroup {
/**
* @desc Send template for IVIManagement container
* @param p_serviceProviderId The IUT provider description
* @param p_iviIdentificationNumber The IVIM identification number
* @param p_iviStatus The IVIM status
*/
template (omit) IVIManagementContainer m_iviManagementContainer(
in template (value) Provider p_serviceProviderId,
in template (value) IviIdentificationNumber p_iviIdentificationNumber,
in template (omit) IVIManagementContainer.connectedIviStructures p_connectedIviStructures := omit,
in template (omit) IVIManagementContainer.timeStamp p_timeStamp := f_getCurrentTime()
) := {
serviceProviderId := p_serviceProviderId,
iviIdentificationNumber := p_iviIdentificationNumber,
validFrom := omit,
validTo := omit,
iviStatus := p_iviStatus
} // End of template m_iviManagementContainer
/**
* @desc Receive template for IVIManagement container
* @param p_serviceProviderId The IUT provider description
* @param p_iviIdentificationNumber The IVIM identification number
* @param p_iviStatus The IVIM status
*/
template (present) IVIManagementContainer mw_iviManagementContainer(
template (present) Provider p_serviceProviderId := ?,
template (present) IviIdentificationNumber p_iviIdentificationNumber := ?,
template (present) IviStatus p_iviStatus := ?
) := {
serviceProviderId := p_serviceProviderId,
iviIdentificationNumber := p_iviIdentificationNumber,
timeStamp := *,
connectedIviStructures := *,
iviStatus := p_iviStatus
} // End of template mw_iviManagementContainer
/**
* @desc Receive template for IVIManagement container
* @param p_serviceProviderId The IUT provider description
* @param p_iviIdentificationNumber The IVIM identification number
* @param p_iviStatus The IVIM status
*/
template (present) IVIManagementContainer mw_iviManagementContainer_timestamp(
template (present) Provider p_serviceProviderId := ?,
template (present) IviIdentificationNumber p_iviIdentificationNumber := ?,
template (present) IviStatus p_iviStatus := ?,
template (present) TimestampIts p_timeStamp := ?
) modifies mw_iviManagementContainer := {
timeStamp := p_timeStamp
} // End of template mw_iviManagementContainer_timestamp
/**
* @desc Receive template for IVIManagement container
* @param p_serviceProviderId The IUT provider description
* @param p_iviIdentificationNumber The IVIM identification number
* @param p_iviStatus The IVIM status
*/
template (present) IVIManagementContainer mw_iviManagementContainer_validTo(
template (present) Provider p_serviceProviderId := ?,
template (present) IviIdentificationNumber p_iviIdentificationNumber := ?,
template (present) IviStatus p_iviStatus := ?,
) modifies mw_iviManagementContainer := {
validTo := p_validTo
} // End of template mw_iviManagementContainer_validTo
/**
* @desc Receive template for IVIManagement container
* @param p_serviceProviderId The IUT provider description
* @param p_iviIdentificationNumber The IVIM identification number
* @param p_iviStatus The IVIM status
*/
template (present) IVIManagementContainer mw_iviManagementContainer_validFrom(
template (present) Provider p_serviceProviderId := ?,
template (present) IviIdentificationNumber p_iviIdentificationNumber := ?,
template (present) IviStatus p_iviStatus := ?,
template (present) TimestampIts p_validFrom := ?
) modifies mw_iviManagementContainer := {
validFrom := p_validFrom
} // End of template mw_iviManagementContainer_validFrom
/**
* @desc Receive template for IVIManagement container
* @param p_serviceProviderId The IUT provider description
* @param p_iviIdentificationNumber The IVIM identification number
* @param p_iviStatus The IVIM status
* @param p_connectedIviStructures The IVIM connectedIviStructures
*/
template (present) IVIManagementContainer mw_iviManagementContainer_connectedIviStructures(
template (present) Provider p_serviceProviderId := ?,
template (present) IviIdentificationNumber p_iviIdentificationNumber := ?,
template (present) IviStatus p_iviStatus := ?,
template (present) IVIManagementContainer.connectedIviStructures p_connectedIviStructures := ?
) modifies mw_iviManagementContainer := {
connectedIviStructures := p_connectedIviStructures
} // End of template mw_iviManagementContainer
/**
* @desc Receive template for Porvide identifier
* @param p_countryCode Country code value
* @param p_providerIdentifier Provider Identifier value
*/
template (present) Provider mw_provider(
template (present) CountryCode p_countryCode := ?,
template (present) AVIAEIIssuerIdentifier p_providerIdentifier := ?
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
) := {
countryCode := p_countryCode,
providerIdentifier := p_providerIdentifier
} // End of template mw_provider
} // End of group iviManagementContainerGroup
group connectedIviStructuresGroup {
} // End of group connectedIviStructuresGroup
group iviContainerGroup {
template (value) IviContainer m_iviContainer_geographicLocationContainer(
in template (value) GeographicLocationContainer p_glc
) := {
glc := p_glc
} // End of template m_iviContainer_geographicLocationContainer
template (present) IviContainer mw_iviContainer_geographicLocationContainer(
template (present) GeographicLocationContainer p_glc := ?
) := {
glc := p_glc
} // End of template mw_iviContainer_geographicLocationContainer
template (value) IviContainer m_iviContainer_generalIviContainer(
in template (value) GeneralIviContainer p_giv
) := {
giv := p_giv
} // End of template m_iviContainer_generalIviContainer
template (present) IviContainer mw_iviContainer_generalIviContainer(
template (present) GeneralIviContainer p_giv := ?
) := {
giv := p_giv
} // End of template mw_iviContainer_generalIviContainer
template (value) IviContainer m_iviContainer_roadConfigurationContainer(
in template (value) RoadConfigurationContainer p_rcc
) := {
rcc := p_rcc
} // End of template m_iviContainer_roadConfigurationContainer
template (present) IviContainer mw_iviContainer_roadConfigurationContainer(
template (present) RoadConfigurationContainer p_rcc := ?
) := {
rcc := p_rcc
} // End of template mw_iviContainer_roadConfigurationContainer
template (value) IviContainer m_iviContainer_textContainer(
in template (value) TextContainer p_tc
) := {
tc := p_tc
} // End of template m_iviContainer_textContainer
template (present) IviContainer mw_iviContainer_textContainer(
template (present) TextContainer p_tc := ?
) := {
tc := p_tc
} // End of template mw_iviContainer_textContainer
template (value) IviContainer m_iviContainer_layoutContainer(
in template (value) LayoutContainer p_lac
) := {
lac := p_lac
} // End of template m_iviContainer_layoutContainer
template (present) IviContainer mw_iviContainer_layoutContainer(
template (present) LayoutContainer p_lac := ?
) := {
lac := p_lac
} // End of template mw_iviContainer_layoutContainer
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
} // End of group iviContainerGroup
group geographicLocationContainerGroup {
template (value) GeographicLocationContainer m_geographicLocationContainer(
in template (value) ReferencePosition p_referencePosition,
in template (value) GeographicLocationContainer.parts p_parts
) := {
referencePosition := p_referencePosition,
referencePositionTime := omit,
referencePositionHeading := omit,
referencePositionSpeed := omit,
parts := p_parts
} // End of template m_geographicLocationContainer
template (present) GeographicLocationContainer mw_geographicLocationContainer(
template (present) ReferencePosition p_referencePosition := ?,
template (present) GeographicLocationContainer.parts p_parts := ?
) := {
referencePosition := p_referencePosition,
referencePositionTime := *,
referencePositionHeading := *,
referencePositionSpeed := *,
parts := p_parts
} // End of template mw_geographicLocationContainer
template (omit) GlcPart m_glcPart(
in template (value) Zid p_zoneId,
in template (omit) LanePosition p_laneNumber := omit,
in template (omit) GlcPart.zoneExtension p_zoneExtension := omit,
in template (omit) HeadingValue p_zoneHeading := omit,
in template (omit) Zone p_zone := omit
) := {
zoneId := p_zoneId,
laneNumber := p_laneNumber,
zoneExtension := p_zoneExtension,
zoneHeading := p_zoneHeading,
zone := p_zone
} // End of template m_glcPart
template (present) Zid p_zoneId := ?,
template LanePosition p_laneNumber := *,
template GlcPart.zoneExtension p_zoneExtension := *,
template HeadingValue p_zoneHeading := *,
template Zone p_zone := *
) := {
zoneId := p_zoneId,
laneNumber := p_laneNumber,
zoneExtension := p_zoneExtension,
zoneHeading := p_zoneHeading,
zone := p_zone
} // End of template mw_glcPart
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
template (value) ReferencePosition m_referencePosition(
in template (value) Latitude p_latitude := 10000,
in template (value) Longitude p_longitude := 10000,
in template (value) PosConfidenceEllipse p_position,
in template (value) Altitude p_altitude
) := {
latitude := p_latitude,
longitude := p_longitude,
positionConfidenceEllipse := p_position,
altitude := p_altitude
} // End of template m_referencePosition
template (value) ReferencePosition m_referencePosition_sample(
in template (value) Latitude p_latitude := 10000,
in template (value) Longitude p_longitude := 10000
) := {
latitude := p_latitude,
longitude := p_longitude,
positionConfidenceEllipse :=
{
semiMajorConfidence := 1000,
semiMinorConfidence := 1000,
semiMajorOrientation := 1000
},
altitude :=
{
altitudeValue := 10000,
altitudeConfidence := alt_000_01//unavailable
}
} // End of template m_referencePosition
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
template Zone m_zone_segment(
template (value) Segment p_segment := m_segment
) := {
segment := p_segment
} // End of template m_zone_segment
template Zone m_zone_polygonalLine(
template (value) PolygonalLine p_area := m_polygonalLine_deltaPositions
) := {
area := p_area
} // End of template m_zone_polygonalLine
template Segment m_segment(
template (value) PolygonalLine p_line := m_polygonalLine_deltaPositions,
template (omit) IVILaneWidth p_laneWidth := omit
) := {
line := p_line,
laneWidth := p_laneWidth
} // End of template m_segment
template PolygonalLine m_polygonalLine_deltaPositions(
template (value) PolygonalLine.deltaPositions p_deltaPositions := {m_deltaPosition}
) := {
deltaPositions := p_deltaPositions
} // End of template m_segment
template DeltaPosition m_deltaPosition(
template (value) DeltaLatitude p_deltaLatitude := 9997,
template (value) DeltaLongitude p_deltaLongitude := 9998
) := {
deltaLatitude := p_deltaLatitude,
deltaLongitude := p_deltaLongitude
} // End of template m_segment
} // End of group geographicLocationContainerGroup
group generalIviContainerGroup {
template (value) GicPart m_gicPart_basic(
in template (value) IviType p_iviType,
in template (value) GicPart.roadSignCodes p_roadSignCodes
) := {
detectionZoneIds := omit,
its_Rrid := omit,
relevanceZoneIds := omit,
direction := omit,
driverAwarenessZoneIds := omit,
minimumAwarenessTime := omit,
applicableLanes := omit,
iviType := p_iviType,
iviPurpose := omit,
laneStatus := omit,
vehicleCharacteristics := omit,
driverCharacteristics := omit,
layoutId := omit,
preStoredlayoutId := omit,
roadSignCodes := p_roadSignCodes,
extraText := omit
} // End of template m_gicPart_basic
template (value) GicPart m_gicPart_relavanceZoneId(
in template (value) IviType p_iviType := IviType_regulatoryMessages_,
in template (value) GicPart.roadSignCodes p_roadSignCodes := {m_rSCode_itisCodes},
in template (value) GicPart.relevanceZoneIds p_relevanceZoneIds := {PX_RELAVANCE_ZONEID}
) modifies m_gicPart_basic:= {
relevanceZoneIds := p_relevanceZoneIds,
iviType := p_iviType,
roadSignCodes := p_roadSignCodes
} // End of template m_gicPart_relavanceZoneId
template (value) GicPart m_gicPart_relavanceZoneId_detectionZoneId_direction(
in template (value) IviType p_iviType := IviType_regulatoryMessages_,
in template (value) GicPart.roadSignCodes p_roadSignCodes := {m_rSCode_itisCodes},
in template (value) GicPart.relevanceZoneIds p_relevanceZoneIds := {PX_RELAVANCE_ZONEID},
in template (value) GicPart.detectionZoneIds p_detectionZoneIds := {PX_DETECTION_ZONEID},
in template (value) GicPart.direction p_direction := Direction_sameDirection_
) modifies m_gicPart_basic:= {
detectionZoneIds := p_detectionZoneIds,
relevanceZoneIds := p_relevanceZoneIds,
direction := p_direction,
iviType := p_iviType,
roadSignCodes := p_roadSignCodes
} // End of template m_gicPart_relavanceZoneId_detectionZoneId_direction
template (value) GicPart m_gicPart_laneStatus(
in template (value) IviType p_iviType := IviType_regulatoryMessages_,
in template (value) GicPart.roadSignCodes p_roadSignCodes := {m_rSCode_itisCodes},
in template (value) GicPart.laneStatus p_laneStatus := LaneStatus_open_
) modifies m_gicPart_basic:= {
iviType := p_iviType,
laneStatus := p_laneStatus,
roadSignCodes := p_roadSignCodes
} // End of template m_gicPart_relavanceZoneId
template (present) GicPart mw_gicPart_basic(
template (present) IviType p_iviType := ?,
template (present) GicPart.roadSignCodes p_roadSignCodes := ?
) := {
detectionZoneIds := *,
its_Rrid := *,
relevanceZoneIds := *,
direction := *,
driverAwarenessZoneIds := *,
minimumAwarenessTime := *,
applicableLanes := *,
iviType := p_iviType,
iviPurpose := *,
laneStatus := *,
vehicleCharacteristics := *,
driverCharacteristics := *,
layoutId := *,
preStoredlayoutId := *,
roadSignCodes := p_roadSignCodes,
extraText := *
} // End of template mw_gicPart
template (present) GicPart mw_gicPart_layoutId(
template (present) IviType p_iviType := ?,
template (present) GicPart.roadSignCodes p_roadSignCodes := ?,
template (present) integer p_layoutId := ?
) modifies mw_gicPart_basic := {
layoutId := p_layoutId
} // End of template mw_gicPart_layoutId
template (present) GicPart mw_gicPart_allZoneIdsAndItsRridAndDirection(
template (present) IviType p_iviType := ?,
template (present) GicPart.roadSignCodes p_roadSignCodes := ?,
template GicPart.detectionZoneIds p_detectionZoneIds := *,
template VarLengthNumber p_varLengthNumber := *,
template GicPart.relevanceZoneIds p_relevanceZoneIds := *,
template Direction p_direction := *,
template GicPart.driverAwarenessZoneIds p_driverAwarenessZoneIds := *
) modifies mw_gicPart_basic := {
detectionZoneIds := p_detectionZoneIds,
its_Rrid := p_varLengthNumber,
relevanceZoneIds := p_relevanceZoneIds,
direction := p_direction,
driverAwarenessZoneIds := p_driverAwarenessZoneIds
} // End of template mw_gicPart
template (present) RSCode mw_rSCode(
template RSCode.layoutComponentId p_layoutComponentId := *,
template (present) RSCode.code p_code := ?
) := {
layoutComponentId := p_layoutComponentId,
code := p_code
} // End of template mw_rSCode
template (present) RSCode mw_rSCode_viennaConvention(
template RSCode.layoutComponentId p_layoutComponentId := *
) := {
layoutComponentId := p_layoutComponentId,
code := {
viennaConvention := ?
}
} // End of template mw_rSCode_viennaConvention
template (present) RSCode mw_rSCode_iso14823(
template RSCode.layoutComponentId p_layoutComponentId := *
) := {
layoutComponentId := p_layoutComponentId,
code := {
iso14823 := ?
}
} // End of template mw_rSCode_iso14823
template (present) RSCode mw_rSCode_itisCodes(
template RSCode.layoutComponentId p_layoutComponentId := *
) := {
layoutComponentId := p_layoutComponentId,
code := {
itisCodes := ?
}
} // End of template mw_rSCode_itisCodes
template (present) RSCode mw_rSCode_anyCatalogue(
template RSCode.layoutComponentId p_layoutComponentId := *
) := {
layoutComponentId := p_layoutComponentId,
code := {
anyCatalogue := ?
}
} // End of template mw_rSCode_anyCatalogue
template (value) RSCode m_rSCode_itisCodes := {
layoutComponentId := omit,
code := {
itisCodes := 100
}
} // End of template m_rSCode_itisCodes
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
template (value) RSCode m_rSCode_viennaConvention := {
layoutComponentId := omit,
code := {
viennaConvention :=
{
roadSignClass := 1, // classB (1),
roadSignCode := 2, //INTEGER (1..64),
vcOption := 1, //a(1),
validity := omit,
value_ := omit,
unit := omit
}
}
} // End of template m_rSCode_viennaConvention
template (value) RSCode m_rSCode_iso14823_trafficSignPictogram (
template (value) RSCode.code.iso14823.pictogramCode.serviceCategoryCode.trafficSignPictogram p_trafficSignPictogram := dangerWarning
):= {
layoutComponentId := omit,
code := {
iso14823 := {
pictogramCode := {
countryCode := omit,
serviceCategoryCode := {
trafficSignPictogram := p_trafficSignPictogram
},
pictogramCategoryCode := {
nature := 2,
serialNumber := 3
}
},
attributes := omit
}
}
} // End of template m_rSCode_iso14823_trafficSignPictogram
template (value) RSCode m_rSCode_iso14823_publicFacilitiesPictogram := {
layoutComponentId := omit,
code := {
iso14823 := {
pictogramCode := {
countryCode := omit,
serviceCategoryCode := {
publicFacilitiesPictogram := publicFacilities
},
pictogramCategoryCode := {
nature := 2,
serialNumber := 3
}
},
attributes := omit
}
}
} // End of template m_rSCode_iso14823_publicFacilitiesPictogram
template (value) RSCode m_rSCode_iso14823_ambientOrRoadConditionPictogram (
template (value) RSCode.code.iso14823.pictogramCode.serviceCategoryCode.ambientOrRoadConditionPictogram p_ambientOrRoadConditionPictogram := ambientCondition
):= {
layoutComponentId := omit,
code := {
iso14823 := {
pictogramCode := {
countryCode := omit,
serviceCategoryCode := {
ambientOrRoadConditionPictogram := p_ambientOrRoadConditionPictogram
},
pictogramCategoryCode := {
nature := 2,
serialNumber := 3
}
},
attributes := omit
}
}
} // End of template m_rSCode_iso14823_ambientOrRoadConditionPictogram
} // End of group generalIviContainerGroup
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
group layoutContainerGroup {
template (value) LayoutContainer m_layoutContainer(
in template (value) LayoutContainer.layoutComponents p_layoutComponents := {m_layoutComponent}
) := {
layoutId := 1,
height := omit,
width := omit,
layoutComponents := p_layoutComponents
} // End of template m_tcPart_basic
template (present) LayoutContainer mw_layoutContainer(
template (present) LayoutContainer.layoutComponents p_layoutComponents := ?
) := {
layoutId := ?,
height := *,
width := *,
layoutComponents := p_layoutComponents
} // End of template mw_tcPart_basic
template (value) LayoutComponent m_layoutComponent := {
layoutComponentId := 1,
height := 10,
width := 11,
x := 12,
y := 13,
textScripting := 1
} // End of template m_layoutComponent
} //end group layoutContainerGroup
group roadConfigurationContainerGroup {
template (value) RccPart m_rccPart(
in template (value) RccPart.zoneIds p_zoneIds,
in template (value) RoadType p_roadType,
in template (value) RccPart.laneConfiguration p_laneConfiguration
) := {
zoneIds := p_zoneIds,
roadType := p_roadType,
laneConfiguration := p_laneConfiguration
} // End of template m_rccPart
template (present) RccPart mw_rccPart(
template (present) RccPart.zoneIds p_zoneIds := ?,
template (present) RoadType p_roadType := ?,
template (present) RccPart.laneConfiguration p_laneConfiguration := ?
) := {
zoneIds := p_zoneIds,
roadType := p_roadType,
laneConfiguration := p_laneConfiguration
} // End of template mw_rccPart
template (present) LaneInformation mw_laneInformation(
template (present) LanePosition p_lanePosition := ?,
template (present) Direction p_direction := ?,
template (present) LaneType p_laneType := ?,
template (present) LaneStatus p_laneStatus := ?
) := {
laneNumber := p_lanePosition,
validity := *, //DTM
laneType := p_laneType,
laneTypeQualifier := *, //CompleteVehicleCharacteristics
laneStatus := p_laneStatus,
laneWidth := * //IVILaneWidth
}
template (value) LaneInformation m_laneInformation(
template (value) LanePosition p_lanePosition := LanePosition_innerHardShoulder_,
template (value) Direction p_direction := Direction_sameDirection_,
template (value) LaneType p_laneType := LaneType_traffic_,
template (value) LaneStatus p_laneStatus := LaneStatus_open_
) := {
laneNumber := p_lanePosition,
direction := p_direction,
validity := omit, //DTM
laneType := p_laneType,
laneTypeQualifier := omit, //CompleteVehicleCharacteristics
laneStatus := p_laneStatus,
laneWidth := omit //IVILaneWidth
}
} // End of group roadConfigurationContainerGroup
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
group textContainerGroup {
template (value) TcPart m_tcPart_basic(
in template (value) TcPart.relevanceZoneIds p_relevanceZoneIds,
in template (value) TcPart.data p_data
) := {
detectionZoneIds := omit,
relevanceZoneIds := p_relevanceZoneIds,
direction := omit,
driverAwarenessZoneIds := omit,
minimumAwarenessTime := omit,
applicableLanes := omit,
layoutId := omit,
preStoredlayoutId := omit,
text := omit,
data := p_data
} // End of template m_tcPart_basic
template (present) TcPart mw_tcPart_basic(
template (present) TcPart.relevanceZoneIds p_relevanceZoneIds := ?,
template (present) TcPart.data p_data := ?
) := {
detectionZoneIds := *,
relevanceZoneIds := p_relevanceZoneIds,
direction := *,
driverAwarenessZoneIds := *,
minimumAwarenessTime := *,
applicableLanes := *,
layoutId := *,
preStoredlayoutId := *,
text := *,
data := p_data
} // End of template mw_tcPart_basic
template (present) TcPart mw_tcPart_allZoneIds(
template (present) TcPart.relevanceZoneIds p_relevanceZoneIds := ?,
template (present) TcPart.data p_data := ?,
template (present) TcPart.detectionZoneIds p_detectionZoneIds := ?,
template (present) TcPart.driverAwarenessZoneIds p_driverAwarenessZoneIds := ?
) modifies mw_tcPart_basic := {
detectionZoneIds := p_detectionZoneIds,
driverAwarenessZoneIds := p_driverAwarenessZoneIds
} // End of template mw_tcPart_allZoneIds
template (present) TcPart mw_tcPart_direction(
template (present) TcPart.relevanceZoneIds p_relevanceZoneIds := ?,
template (present) TcPart.data p_data := ?,
template (present) TcPart.direction p_direction := ?
) modifies mw_tcPart_basic := {
relevanceZoneIds := p_relevanceZoneIds
} // End of template mw_tcPart_direction
template (present) TcPart mw_tcPart_text(
template (present) TcPart.relevanceZoneIds p_relevanceZoneIds := ?,
template (present) TcPart.data p_data := ?,
template (present) TcPart.text p_text := ?
) modifies mw_tcPart_basic := {
text := p_text
} // End of template mw_tcPart_text
template (present) TcPart mw_tcPart_layoutId(
template (present) TcPart.relevanceZoneIds p_relevanceZoneIds := ?,
template (present) TcPart.data p_data := ?,
template (present) TcPart.layoutId p_layoutId := ?
) modifies mw_tcPart_basic := {
layoutId := p_layoutId
} // End of template mw_tcPart_layoutId
template (present) Text mw_text := {
layoutComponentId := *,
language_ := ?,
textContent := ?
}
} // End of group textContainerGroup
group itsFunction {
/**
* @desc Gets the Provifr of test system
* @return Test system's Provider value
* @see PX_PROVIDER
*/
function f_getProvider()
return Provider {
return PX_PROVIDER;
} // End of function f_getProvider
} // End of group itsFunction
} // End of module LibItsIvimTemplates