Commit e79bcb2a authored by garciay's avatar garciay
Browse files

Bug fixed in ETSI IS ATSs

parent 95f4fa9f
......@@ -11,27 +11,13 @@ module LibItsBtp_TypesAndValues {
import from LibCommon_BasicTypesAndValues all;
// LibIts
import from CAM_PDU_Descriptions language "ASN.1:1997" {
type CAM
};
import from DENM_PDU_Descriptions language "ASN.1:1997" {
type DENM
};
import from MAPEM_PDU_Descriptions language "ASN.1:1997" {
type MAPEM
};
import from SPATEM_PDU_Descriptions language "ASN.1:1997" {
type SPATEM
};
import from IVIM_PDU_Descriptions language "ASN.1:1997" {
type IVIM
};
import from SREM_PDU_Descriptions language "ASN.1:1997" {
type SREM
};
import from SSEM_PDU_Descriptions language "ASN.1:1997" {
type SSEM
};
import from CAM_PDU_Descriptions language "ASN.1:1997" all;
import from DENM_PDU_Descriptions language "ASN.1:1997" all;
import from MAPEM_PDU_Descriptions language "ASN.1:1997" all;
import from SPATEM_PDU_Descriptions language "ASN.1:1997" all;
import from IVIM_PDU_Descriptions language "ASN.1:1997" all;
import from SREM_PDU_Descriptions language "ASN.1:1997" all;
import from SSEM_PDU_Descriptions language "ASN.1:1997" all;
group btpPdus {
......
......@@ -318,17 +318,18 @@ module LibItsIvim_Templates {
* @param p_iviIdentificationNumber The IVIM identification number
* @param p_iviStatus The IVIM status
*/
template (value) IVIManagementContainer m_iviManagementContainer(
template (omit) IVIManagementContainer m_iviManagementContainer(
in template (value) Provider p_serviceProviderId,
in template (value) IviIdentificationNumber p_iviIdentificationNumber,
in template (value) IviStatus p_iviStatus
in template (value) IviStatus p_iviStatus,
in template (omit) IVIManagementContainer.connectedIviStructures p_connectedIviStructures := omit
) := {
serviceProviderId := p_serviceProviderId,
iviIdentificationNumber := p_iviIdentificationNumber,
timeStamp := f_getCurrentTime(),
validFrom := omit,
validTo := omit,
connectedIviStructures := omit,
connectedIviStructures := p_connectedIviStructures,
iviStatus := p_iviStatus
} // End of template m_iviManagementContainer
......@@ -346,8 +347,8 @@ module LibItsIvim_Templates {
serviceProviderId := p_serviceProviderId,
iviIdentificationNumber := p_iviIdentificationNumber,
timeStamp := *,
validFrom := omit,
validTo := omit,
validFrom := *,
validTo := *,
connectedIviStructures := *,
iviStatus := p_iviStatus
} // End of template mw_iviManagementContainer
......
......@@ -541,6 +541,8 @@ module LibItsMapemSpatem_Templates {
group spatemTemplates {
group spatemTemplatesSend {
/**
* @desc Send default template for SPAT Message
*/
......@@ -567,15 +569,16 @@ module LibItsMapemSpatem_Templates {
template (value) IntersectionStateList m_intersections := { m_intersection };
template (value) IntersectionState m_intersection := {
name := omit,
id := m_intersectionReferenceID,
name := omit, // Human readable name for intersection to be used only in debug mode
id := m_intersectionReferenceID, // A globally unique value set, consisting of a regionID and
// intersection ID assignment provides a unique mapping to the intersection MAP in question which provides complete location and approach/move/lane data
revision := PX_INTERSECTIONSTATE_REVISION,
status := PX_STATUS,
moy := omit,
timeStamp := omit,
enabledLanes := omit,
states := m_movements,
maneuverAssistList := omit,
status := IntersectionStatusObject_manualControlIsEnabled_, // General status of the controller(s)
moy := omit, // Minute of current UTC year used only with messages to be archived
timeStamp := omit, // The mSec point in the current UTC minute that this message was constructed
enabledLanes := { 1, 2 }, // A list of lanes where the RevocableLane bit has been set which are now active andtherefore part of the current intersection
states := m_movements, // Each Movement is given in turn and contains its signal phase state, mapping to the lanes it applies to, and point in time it will end, and it may contain both active and future states
maneuverAssistList := omit, // Assist data
regional := omit
}
......@@ -585,19 +588,73 @@ module LibItsMapemSpatem_Templates {
movementName := omit,
signalGroup := PX_SIGNAL_GROUP_ID,
state_time_speed := m_movementEventList,
maneuverAssistList := omit,
maneuverAssistList := { m_connectionManeuverAssist(1) },
regional := omit
}
template (value) MovementEventList m_movementEventList := { m_movementEvent };
template (value) MovementEvent m_movementEvent := {
eventState := stop_Then_Proceed,
timing := omit,
speeds := omit,
template (omit) MovementEvent m_movementEvent(
in template (value) MovementPhaseState p_eventState := stop_Then_Proceed,
in template (omit) TimeChangeDetails p_timing := omit,
in template (omit) MovementEvent.speeds p_speeds := omit
) := {
eventState := stop_Then_Proceed, // Consisting of: Phase state (the basic 11 states) and Directional, protected, or permissive state
timing := p_timing, // Timing Data in UTC time stamps for event includes start and min/max end times of phase confidence and estimated next occurrence
speeds := p_speeds, // Various speed advisories for use by general and specific types of vehicles supporting green-wave and other flow needs
regional := omit
}
template (omit) ConnectionManeuverAssist m_connectionManeuverAssist(
in template (value) LaneConnectionID p_connectionID,
in template (omit) ZoneLength p_queueLength := omit,
in template (omit) ZoneLength p_availableStorageLength := omit,
in template (omit) WaitOnStopline p_waitOnStop := omit,
in template (omit) PedestrianBicycleDetect p_pedBicycleDetect := omit
) := {
connectionID := p_connectionID,
queueLength := p_queueLength,
availableStorageLength := p_availableStorageLength,
waitOnStop := p_waitOnStop,
pedBicycleDetect := p_pedBicycleDetect,
regional := omit
}
template (omit) TimeChangeDetails m_itmeChangeDetails(
in template (value) TimeMark p_minEndTime,
in template (omit) TimeMark p_startTime := omit,
in template (omit) TimeMark p_maxEndTime := omit,
in template (omit) TimeMark p_likelyTime := omit,
in template (omit) TimeIntervalConfidence p_confidence := omit,
in template (omit) TimeMark p_nextTime := omit
) := {
startTime := p_startTime, // When this phase 1st started
minEndTime := p_minEndTime, // Expected shortest end time
maxEndTime := p_maxEndTime, // Expected longest end time
likelyTime := p_likelyTime, // Best predicted value based on other data
confidence := p_confidence, // Applies to above time element only
nextTime := p_nextTime // A rough estimate of time when this phase may next occur again used to support various ECO driving power management needs.
}
template (omit) AdvisorySpeed m_advisorySpeed(
in template (value) AdvisorySpeedType p_type,
in template (omit) SpeedAdvice p_speed := omit,
in template (omit) SpeedConfidence p_confidence := omit,
in template (omit) ZoneLength p_distance := omit,
in template (omit) RestrictionClassID p_class := omit
) := {
type_ := p_type, // The type of advisory which this is.
speed := p_speed,
confidence := p_confidence, // A confidence value for the above speed
distance := p_distance, // The distance indicates the region for which the advised speed is recommended, it is specified upstream from the stop bar along the connected egressing lane
class := p_class, // The vehicle types to which it applies when absent, the AdvisorySpeed applies to all motor vehicle types
regional := omit
}
} // End of group spatemTemplatesSend
group spatemTemplatesRecv {
/**
* @desc Receive template for SPATEM Message
*/
......@@ -619,6 +676,8 @@ module LibItsMapemSpatem_Templates {
}
} // End of group spatemTemplates
} // End of group spatemTemplatesRecv
} // End of group mapemSpatemTemplates
......
......@@ -65,6 +65,7 @@ module LibItsMapemSpatem_TestSystem {
type component ItsMapemSpatemSystem {
port UpperTesterPort utPort;
port AdapterControlPort acPort;
port MapemSpatemPort mapemSpatemPort;
} // End of component ITS System Adapter
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment