ItsRSUsSimulator_PicsInitConsts.ttcn 295 KB
Newer Older
garciay's avatar
garciay committed
module ItsRSUsSimulator_PicsInitConsts {
garciay's avatar
garciay committed
    
    // LibCommon
    import from LibCommon_BasicTypesAndValues all;
    
    // LibIts
    import from ITS_Container language "ASN.1:1997" all;
    import from IVI language "ASN.1:1997" all;
    import from DSRC language "ASN.1:1997" all;
    //import from EVCSN_PDU_Descriptions language "ASN.1:1997" all;
    import from IEEE1609dot2BaseTypes language "ASN.1:1997" all;
    import from IEEE1609dot2 language "ASN.1:1997" all;
    import from EtsiTs103097Module language "ASN.1:1997" all;
    
garciay's avatar
garciay committed
    
    // LibItsCommon
    import from LibItsCommon_ASN1_NamedNumbers all;

    // LibItsBtp
    import from LibItsBtp_TypesAndValues all;
    
    // LibItsGeoNetworking
    import from LibItsGeoNetworking_TypesAndValues all;
    
    // LibItsSecurity
    import from LibItsSecurity_TypesAndValues all;
    
    // ItsRSUsSimulator
    import from ItsRSUsSimulator_TypesAndValues all;
    
    /**
     * @desc This group describes the RSUs installed on the track
     */
    group rsuParameters {
        
        /**
         * @desc RSU #1
         */
        group rsu1 {
            
            /**
             * @desc RSU GN address
             */
            const GN_Address c_PICS_RSU_GN_ADDRESS_RSU1 := {
                typeOfAddress         := e_manual,
                stationType           := e_roadSideUnit,
                reserved    := 33,
garciay's avatar
garciay committed
                mid                   := '001C6B0D0201'O
            } // End of c_PICS_RSU_GN_ADDRESS_RSU1
            
            const RsuParm c_PICS_RSU1 := {
                longPosVector := {
                    gnAddr        := c_PICS_RSU_GN_ADDRESS_RSU1,
                    timestamp_    := 0,
                    latitude      := 367485365,
                    longitude     := -45560691,
garciay's avatar
garciay committed
                    pai           := '0'B,
                    speed         := 0,
                    heading       := 0
                },
                stationID := 1111101,
                stationType := LibItsCommon_ASN1_NamedNumbers.StationType_roadSideUnit_,
garciay's avatar
garciay committed
                vehicleRole := roadOperator,
                geoShape := e_geoCircle,
                geoParms := {
                    radius := 5000
                },
                pathHistory := c_PICS_RSU_PATH_HISTORY_RSU1
            } // End of c_PICS_RSU1
            
            /**
             * @desc Path history to approch the RSU
             */
            const PathHistory c_PICS_RSU_PATH_HISTORY_RSU1 := {};
            
        } // End of group rsu1
        
        /**
         * @desc RSU #2
         */
        group rsu2 {
            
            /**
             * @desc RSU GN address
             */
            const GN_Address c_PICS_RSU_GN_ADDRESS_RSU2 := {
                typeOfAddress         := e_manual,
                stationType           := e_roadSideUnit,
                reserved    := 33,
garciay's avatar
garciay committed
                mid                   := '001C6B0D0202'O
            } // End of c_PICS_RSU_GN_ADDRESS_RSU2
            
            const RsuParm c_PICS_RSU2 := {
                longPosVector := {
                    gnAddr        := c_PICS_RSU_GN_ADDRESS_RSU2,
                    timestamp_    := 0,
                    latitude      := 435512090,
                    longitude     := 103002510,
                    pai           := '0'B,
                    speed         := 0,
                    heading       := 0
                },
                stationID := 1111102,
                stationType := LibItsCommon_ASN1_NamedNumbers.StationType_roadSideUnit_,
garciay's avatar
garciay committed
                vehicleRole := roadOperator,
                geoShape := e_geoCircle,
                geoParms := {
                    radius := 5000
                },
                pathHistory := c_PICS_RSU_PATH_HISTORY_RSU2
            } // End of c_PICS_RSU2
            
            /**
             * @desc Path history to approch the RSU
             */
            const PathHistory c_PICS_RSU_PATH_HISTORY_RSU2 := {};
            
        } // End of group rsu2
        
        /**
         * @desc RSU #3
         */
        group rsu3 {
            
            /**
             * @desc RSU GN address
             */
            const GN_Address c_PICS_RSU_GN_ADDRESS_RSU3 := {
                typeOfAddress         := e_manual,
                stationType           := e_roadSideUnit,
                reserved    := 33,
garciay's avatar
garciay committed
                mid                   := '001C6B0D0203'O
            } // End of c_PICS_RSU_GN_ADDRESS_RSU3
            
            const RsuParm c_PICS_RSU3 := {
                longPosVector := {
                    gnAddr        := c_PICS_RSU_GN_ADDRESS_RSU3,
                    timestamp_    := 0,
                    latitude      := 435546630,
                    longitude     := 103041900,
                    pai           := '0'B,
                    speed         := 0,
                    heading       := 0
                },
                stationID := 1111103,
                stationType := LibItsCommon_ASN1_NamedNumbers.StationType_roadSideUnit_,
garciay's avatar
garciay committed
                vehicleRole := roadOperator,
                geoShape := e_geoCircle,
                geoParms := {
                    radius := 5000
                },
                pathHistory := c_PICS_RSU_PATH_HISTORY_RSU3
            } // End of c_PICS_RSU3
            
            /**
             * @desc Path history to approch the RSU
             */
            const PathHistory c_PICS_RSU_PATH_HISTORY_RSU3 := {};
            
        } // End of group rsu3
        
        /**
         * @desc RSU #4
         */
        group rsu4 {
            
            /**
             * @desc RSU GN address
             */
            const GN_Address c_PICS_RSU_GN_ADDRESS_RSU4 := {
                typeOfAddress         := e_manual,
                stationType           := e_roadSideUnit,
                reserved    := 33,
garciay's avatar
garciay committed
                mid                   := '001C6B0D0204'O
            } // End of c_PICS_RSU_GN_ADDRESS_RSU4
            
            const RsuParm c_PICS_RSU4 := {
                longPosVector := {
                    gnAddr        := c_PICS_RSU_GN_ADDRESS_RSU4,
                    timestamp_    := 0,
                    latitude      := 435582150,
                    longitude     := 103065170,
                    pai           := '0'B,
                    speed         := 0,
                    heading       := 0
                },
                stationID := 1111104,
                stationType := LibItsCommon_ASN1_NamedNumbers.StationType_roadSideUnit_,
garciay's avatar
garciay committed
                vehicleRole := roadOperator,
                geoShape := e_geoCircle,
                geoParms := {
                    radius := 5000
                },
                pathHistory := c_PICS_RSU_PATH_HISTORY_RSU4
            } // End of c_PICS_RSU4
            
            /**
             * @desc Path history to approch the RSU
             */
            const PathHistory c_PICS_RSU_PATH_HISTORY_RSU4 := {};
            
        } // End of group rsu4
        
        /**
         * @desc RSU #5
         */
        group rsu5 {
            
            /**
             * @desc RSU GN address
             */
            const GN_Address c_PICS_RSU_GN_ADDRESS_RSU5 := {
                typeOfAddress         := e_manual,
                stationType           := e_roadSideUnit,
                reserved    := 33,
garciay's avatar
garciay committed
                mid                   := '001C6B0D0205'O
            } // End of c_PICS_RSU_GN_ADDRESS_RSU5
            
            const RsuParm c_PICS_RSU5 := {
                longPosVector := {
                    gnAddr        := c_PICS_RSU_GN_ADDRESS_RSU5,
                    timestamp_    := 0,
                    latitude      := 435838400,
                    longitude     := 103249780,
                    pai           := '0'B,
                    speed         := 0,
                    heading       := 0
                },
                stationID := 1111105,
                stationType := LibItsCommon_ASN1_NamedNumbers.StationType_roadSideUnit_,
garciay's avatar
garciay committed
                vehicleRole := roadOperator,
                geoShape := e_geoCircle,
                geoParms := {
                    radius := 5000
                },
                pathHistory := c_PICS_RSU_PATH_HISTORY_RSU5
            } // End of c_PICS_RSU5
            
            /**
             * @desc Path history to approch the RSU
             */
            const PathHistory c_PICS_RSU_PATH_HISTORY_RSU5 := {};
            
        } // End of group rsu5
        
        /**
         * @desc RSU #6
         */
        group rsu6 {
            
            /**
             * @desc RSU GN address
             */
            const GN_Address c_PICS_RSU_GN_ADDRESS_RSU6 := {
                typeOfAddress         := e_manual,
                stationType           := e_roadSideUnit,
                reserved    := 33,
garciay's avatar
garciay committed
                mid                   := '001C6B0D0206'O
            } // End of c_PICS_RSU_GN_ADDRESS_RSU6
            
            const RsuParm c_PICS_RSU6 := {
                longPosVector := {
                    gnAddr        := c_PICS_RSU_GN_ADDRESS_RSU6,
                    timestamp_    := 0,
                    latitude      := 435923480,
                    longitude     := 103375540,
                    pai           := '0'B,
                    speed         := 0,
                    heading       := 0
                },
                stationID := 1111106,
                stationType := LibItsCommon_ASN1_NamedNumbers.StationType_roadSideUnit_,
garciay's avatar
garciay committed
                vehicleRole := roadOperator,
                geoShape := e_geoCircle,
                geoParms := {
                    radius := 5000
                },
                pathHistory := c_PICS_RSU_PATH_HISTORY_RSU6
            } // End of c_PICS_RSU6
            
            /**
             * @desc Path history to approch the RSU
             */
            const PathHistory c_PICS_RSU_PATH_HISTORY_RSU6 := {};
            
        } // End of group rsu6
        
        /**
         * @desc RSU #7
         */
        group rsu7 {
            
            /**
             * @desc RSU GN address
             */
            const GN_Address c_PICS_RSU_GN_ADDRESS_RSU7 := {
                typeOfAddress         := e_manual,
                stationType           := e_roadSideUnit,
                reserved    := 33,
garciay's avatar
garciay committed
                mid                   := '001C6B0D0207'O
            } // End of c_PICS_RSU_GN_ADDRESS_RSU7
            
            const RsuParm c_PICS_RSU7 := {
                longPosVector := {
                    gnAddr        := c_PICS_RSU_GN_ADDRESS_RSU7,
                    timestamp_    := 0,
                    latitude      := 435550580,
                    longitude     := 103032980,
                    pai           := '0'B,
                    speed         := 0,
                    heading       := 0
                },
                stationID := 1111107,
                stationType := LibItsCommon_ASN1_NamedNumbers.StationType_roadSideUnit_,
garciay's avatar
garciay committed
                vehicleRole := roadOperator,
                geoShape := e_geoCircle,
                geoParms := {
                    radius := 5000
                },
                pathHistory := c_PICS_RSU_PATH_HISTORY_RSU7
            } // End of c_PICS_RSU7
            
            /**
             * @desc Path history to approch the RSU
             */
            const PathHistory c_PICS_RSU_PATH_HISTORY_RSU7 := {};
            
        } // End of group rsu7
        
        /**
         * @desc RSU #8
         */
        group rsu8 {
            
            /**
             * @desc RSU GN address
             */
            const GN_Address c_PICS_RSU_GN_ADDRESS_RSU8 := {
                typeOfAddress         := e_initial,
                stationType           := e_unknown,
                reserved    := 0,
                mid                   := '4C5E0C14D2EA'O
garciay's avatar
garciay committed
            } // End of c_PICS_RSU_GN_ADDRESS_RSU8
            
            const RsuParm c_PICS_RSU8 := {
                longPosVector := {
                    gnAddr        := c_PICS_RSU_GN_ADDRESS_RSU8,
                    timestamp_    := 0,
                    latitude      := 367461950,
                    longitude     := -45541090,
garciay's avatar
garciay committed
                    pai           := '0'B,
                    speed         := 0,
                    heading       := 0
                },
                stationID := 10143,
                stationType := LibItsCommon_ASN1_NamedNumbers.StationType_passengerCar_,
garciay's avatar
garciay committed
                vehicleRole := roadOperator,
                geoShape := e_geoCircle,
                geoParms := {
                    radius := 250
garciay's avatar
garciay committed
                },
                pathHistory := c_PICS_RSU_PATH_HISTORY_RSU8
            } // End of c_PICS_RSU8
            
            /**
             * @desc Path history to approch the RSU
             */
            const PathHistory c_PICS_RSU_PATH_HISTORY_RSU8 := {};
            
        } // End of group rsu8
        
    } // End of group rsuParameters
    
    /*
     * @desc This group describes the BEACON common settings for the RSUs CAM message broadcast
     */
    group beaconParams {
        
        /**
         * @desc Common settings
         */
        group beaconCommonSettings {
            
            const UInt32 c_PICS_BEACON_ITS_AID                 := 141;
            
        } // End of group beaconCommonSettings
        
    } // End of group beaconParams
    
    /**
     * @desc This group describes the CAM common settings for the RSUs CAM message broadcast
     */
    group camParams {
        
        /**
         * @desc Common settings
         */
        group camCommonSettings {
            
            const BtpPortId c_PICS_CAM_BTP_DESTINATION_PORT := 2001;
            
            const BtpPortId c_PICS_CAM_BTP_SOURCE_PORT      := 0;
            
            const UInt32 c_PICS_CAM_ITS_AID                 := 36;
            
        } // End of group camCommonSettings
        
        group camUseCase6 {
            
            group camUseCase6VehicleTemplateDescription {
                
                const LongPosVector c_PICS_UC6_VEHICLE_TEMPLATE_POSITION := {
                    gnAddr := {
                        typeOfAddress         := e_manual,
                        stationType           := e_passengerCar,
                        reserved    := 33,
garciay's avatar
garciay committed
                        mid                   := '001C6B0D02FF'O
                    },
                    timestamp_                                    := 0,
                    latitude                                      := 0,
                    longitude                                     := 0,
                    pai                                           := '0'B,
                    speed                                         := 30,
                    heading                                       := 0
                } // End of c_PICS_UC6_VEHICLE_POSITION
                
                const GeoArea c_PICS_UC6_VEHICLE_TEMPLATE_GEOAREA := {
                    shape := e_geoElip,
                    area := {
                        geoAreaPosLatitude                        := 0,
                        geoAreaPosLongitude                       := 0,
                        distanceA                                 := 5,
                        distanceB                                 := 3,
                        angle                                     := 0
                    }
                } // End of c_PICS_UC6_VEHICLE_GEOAREA
                
            } // End of group camUseCase6VehicleDescription 
            
            group camUseCase6SyncLocation {
                
                /**
                 * @desc Coordinates of the collision point
                 */
                const ThreeDLocation PICS_UC6_COLLISION_POINT := {
                    latitude                                      := 435522970,
                    longitude                                     := 103000170,
                    elevation                                     := 0
garciay's avatar
garciay committed
                } // End of c_PICS_UC6_COLLISION_POINT
                
                /**
                 * @desc Vehicle detection area
                 */
                const RectangularRegion c_PICS_UC6_CAM_DETECTION_AREA := {
                    northWest := {
garciay's avatar
garciay committed
                        latitude                                      := 435529170,
                        longitude                                     := 102998330
                    },
                    southEast := {
garciay's avatar
garciay committed
                        latitude                                      := 435522420,
                        longitude                                     := 103011400
                    }
                } // End of c_PICS_UC6_CAM_DETECTION_AREA
                
            } // End of group camUseCase6SyncLocation 
            
        } // End of group camUseCase6
        
        group camUseCase7 {
            
            /**
             * @desc RSU GN address
             */
            const GN_Address c_PICS_UC7_GN_ADDRESS := {
                typeOfAddress                               := e_manual,
                stationType                                 := e_passengerCar,
                reserved                                    := 33,
garciay's avatar
garciay committed
                mid                                         := '001C6B0DEEEE'O
            } // End of c_PICS_UC7_GN_ADDRESS
            
            const RsuParm c_PICS_UC7_LPV := {
                longPosVector := {
                    gnAddr                                  := c_PICS_UC7_GN_ADDRESS,
                    timestamp_                              := 0,
                    latitude                                := 367461950,
                    longitude                               := -45541090,
garciay's avatar
garciay committed
                    pai                                     := '0'B,
                    speed                                   := 0,
                    heading                                 := 10
                },
                stationID                                   := 7895,
                stationType                                 := LibItsCommon_ASN1_NamedNumbers.StationType_passengerCar_,
                vehicleRole                                 := taxi,
garciay's avatar
garciay committed
                geoShape                                    := e_geoCircle,
                geoParms := {
                    radius                                  := 250
garciay's avatar
garciay committed
                },
                pathHistory                                 := {}
            } // End of c_PICS_UC7_LPV
            
            const ReferencePosition c_PICS_UC7_COLLISION_POINT := {
                latitude                                    := 367461950,
                longitude                                   := -45541090,
garciay's avatar
garciay committed
                positionConfidenceEllipse                   := {
                    semiMajorConfidence   := 100,
                    semiMinorConfidence   := 100,
                    semiMajorOrientation  := LibItsCommon_ASN1_NamedNumbers.HeadingValue_wgs84North_
garciay's avatar
garciay committed
                },
                altitude                                    := {
                    altitudeValue := LibItsCommon_ASN1_NamedNumbers.AltitudeValue_referenceEllipsoidSurface_,
garciay's avatar
garciay committed
                    altitudeConfidence := unavailable
                }
            } // End of c_PICS_UC7_COLLISION_POINT
            
        } // End of group camUseCase7
        
        group camUseCase9 {
            
            const ProtectedCommunicationZone c_PICS_USECASE9_PCZ_1 := {
                protectedZoneType        := permanentCenDsrcTolling,
garciay's avatar
garciay committed
                expiryTime               := omit,
                protectedZoneLatitude    := 435838400,
                protectedZoneLongitude   := 103249780,
                protectedZoneRadius      := 100,
                protectedZoneID          := 1
            } // End of c_PICS_USECASE9_PCZ_1
            
        } // End of group camUseCase7
        
    } // End of group camParams 
    
    /**
     * @desc This group describes the DENM common settings for the each use cases and for each RSU.
     */
    group denmEvents {
        
        /**
         * @desc Common settings
         */
        group denmCommonSettings {
            
            const BtpPortId c_PICS_DENM_BTP_DESTINATION_PORT := 2002;
            
            const BtpPortId c_PICS_DENM_BTP_SOURCE_PORT      := 0;
            
            const UInt32 c_PICS_DENM_ITS_AID                 := 37;
            
            const PosConfidenceEllipse c_PICS_DENM_POSITION_CONFIDENCE_ELLIPSE := {
                semiMajorConfidence   := 100,
                semiMinorConfidence   := 100,
                semiMajorOrientation  := 0
            } // End of c_PICS_DENM_POSITION_CONFIDENCE_ELLIPSE
            
            const Altitude c_PICS_DENM_ALTITUDE := {
                altitudeValue := LibItsCommon_ASN1_NamedNumbers.AltitudeValue_referenceEllipsoidSurface_,
garciay's avatar
garciay committed
                altitudeConfidence := alt_000_01
            } // End of c_PICS_DENM_ALTITUDE
            
            /**
             * @desc DENM repetition interval, in ms
             */
            const TransmissionInterval c_PICS_DENM_REPETITION_INTERVAL := 1000;
            
            /**
             * @desc DENM RelevanceDistance
             */
            const RelevanceDistance c_PICS_DENM_RELEVANCE_DISTANCE := lessThan200m;
            
            /**
             * @desc DENM ValidityDuration
             */
            const ValidityDuration c_PICS_DENM_VALIDITY_DURATION := 90 * 60; // 90 minutes
            
            /**
             * @desc DENM RelevanceTrafficDirection
             */
            const RelevanceTrafficDirection c_PICS_DENM_RELEVANCE_TRAFFIC_DIRECTION := upstreamTraffic;
            
            
        } // End of group denmCommonSettings
        
        /**
         * @desc Use case #1: Z1-D1-SL/Speed limit
         */
        group denmUseCase1 {
            
            /**
             * @desc Use case #1: Z1-D1-EP/Event position
             */
            group denmZone1 {
garciay's avatar
garciay committed
                const SpeedLimit c_PICS_SPEED_LIMIT := 30;
garciay's avatar
garciay committed
                group denmZone1_D1 {
garciay's avatar
garciay committed
                    /**
                     * @desc Z1-D1-EP/POS0
                     */
                    const DeltaReferencePosition c_PICS_Z1_D1_POS0 := {
                        deltaLatitude                       := -652,
                        deltaLongitude                      := 1475,
garciay's avatar
garciay committed
                        deltaAltitude                       := 0
                    }; // End of c_PICS_Z1_D1_POS0
garciay's avatar
garciay committed
                    /**
                     * @desc Z1-D1-EP/POS1
                     */
                    const ReferencePosition c_PICS_Z1_D1_EP := {
                        latitude                                    := 367467556,                               // Z1-D1-EP/latitude
                        longitude                                   := -45552381,                               // Z1-D1-EP/longitude
garciay's avatar
garciay committed
                        positionConfidenceEllipse                   := c_PICS_DENM_POSITION_CONFIDENCE_ELLIPSE,
                        altitude                                    := c_PICS_DENM_ALTITUDE
                    }; // End of c_PICS_Z1_D1_EP
garciay's avatar
garciay committed
                    /**
                     * @desc Z1-D1-EP/EventHistory1
                     */
                    const EventHistory c_PICS_Z1_D1_Hx := { 
                        { // Z1_D1_H1
                            eventPosition := {
                                deltaLatitude                       := 135,
                                deltaLongitude                      := -147,
garciay's avatar
garciay committed
                                deltaAltitude                       := 0
                            },
                            eventDeltaTime                          := omit,
                            informationQuality                      := 0
                        },
                        { // Z1_D1_H2
                            eventPosition := {
                                deltaLatitude                       := -68,
                                deltaLongitude                      := 74,
garciay's avatar
garciay committed
                                deltaAltitude                       := 0
                            },
                            eventDeltaTime                          := omit,
                            informationQuality                      := 0
                        }
                    }; // End of c_PICS_Z1_D1_Hx
garciay's avatar
garciay committed
                    /**
                     * @desc Z1-D1-Traces/Trace1
                     */
                    const Traces c_PICS_Z1_D1_Tx := {
                        {
                            { // Z1-D1-T1
                                pathPosition := {
                                    deltaLatitude                       := -1086,
                                    deltaLongitude                      := 2551,
                                    deltaAltitude                       := 0
                                },
                                pathDeltaTime                           := omit
garciay's avatar
garciay committed
                            },
                            { // Z1-D1-T2
                                pathPosition := {
                                    deltaLatitude                       := -450,
                                    deltaLongitude                      := 1010,
                                    deltaAltitude                       := 0
                                },
                                pathDeltaTime                           := omit
garciay's avatar
garciay committed
                            },
                            { // Z1-D1-T3
                                pathPosition := {
                              deltaLatitude                             := -460,
                                    deltaLongitude                      := 1000,
                                    deltaAltitude                       := 0
                                },
                                pathDeltaTime                           := omit
garciay's avatar
garciay committed
                            },
                            { // Z1-D1-T4
                                pathPosition := {
                                    deltaLatitude                       := -440,
                                    deltaLongitude                      := 1000,
                                    deltaAltitude                       := 0
                                },
                                pathDeltaTime                           := omit
garciay's avatar
garciay committed
                            },
                            { // Z1-D1-T5
                                pathPosition := {
                                    deltaLatitude                       := -440,
                                    deltaLongitude                      := 990,
                                    deltaAltitude                       := 0
                                },
                                pathDeltaTime                           := omit
                            }
garciay's avatar
garciay committed
                        }
                    }; // End of c_PICS_Z1_D1_Tx
garciay's avatar
garciay committed
                    const DenmParm c_PICS_Z1_D1 := {
                        eventPosition                               := c_PICS_Z1_D1_EP,
                        causeCodeType                               := LibItsCommon_ASN1_NamedNumbers.CauseCodeType_roadworks_,
garciay's avatar
garciay committed
                        eventHistory                                := c_PICS_Z1_D1_Hx,
                        traces                                      := c_PICS_Z1_D1_Tx,
                        roadWorksContainerExtended := {
                            lightBarSirenInUse                      := omit,
                            closedLanes := {
                                innerhardShoulderStatus             := closed,
                                outerhardShoulderStatus             := availableForDriving,
                                drivingLaneStatus                   := '00'B
garciay's avatar
garciay committed
                            },
                            restriction                             := omit,
                            speedLimit                              := c_PICS_SPEED_LIMIT,
                            incidentIndication                      := omit,
                            recommendedPath                         := omit,
                            startingPointSpeedLimit                 := c_PICS_Z1_D1_POS0,
                            trafficFlowRule                         := passToRight,
                            referenceDenms                          := omit
                        }
                    } // End of c_PICS_Z1_D1
                
                } // End of group denmZone1_D1
            
garciay's avatar
garciay committed
                group denmZone1_D2 {
garciay's avatar
garciay committed
                    /**
                     * @desc Z1-D2-EP/POS2
                     */
                    const ReferencePosition c_PICS_Z1_D2_EP := {
                        latitude                                    := 367470416,                               // Z1-D2-EP/latitude
                        longitude                                   := -45558019,                               // Z1-D2-EP/longitude
garciay's avatar
garciay committed
                        positionConfidenceEllipse                   := c_PICS_DENM_POSITION_CONFIDENCE_ELLIPSE,
                        altitude                                    := c_PICS_DENM_ALTITUDE
                    }; // End of c_PICS_Z1_D2_EP
garciay's avatar
garciay committed
                    /**
                     * @desc Z1-D2-EP/EventHistory2
                     */
                    const EventHistory c_PICS_Z1_D2_Hx := { 
                        { // Z1_D2_H1
                            eventPosition := {
                                deltaLatitude                       := -3406,
                                deltaLongitude                      := 6829,
garciay's avatar
garciay committed
                                deltaAltitude                       := 0
                            },
                            eventDeltaTime                          := omit,
                            informationQuality                      := 0
                        },
                        { // Z1_D2_H2
                            eventPosition := {
                                deltaLatitude                       := 3360,
                                deltaLongitude                      := -6810,
garciay's avatar
garciay committed
                                deltaAltitude                       := 0
                            },
                            eventDeltaTime                          := omit,
                            informationQuality                      := 0
                        }
                    }; // End of c_PICS_Z1_D2_Hx
garciay's avatar
garciay committed
                    /**
                     * @desc Z1-D2-Traces/Trace2
                     */
                    const Traces c_PICS_Z1_D2_Tx := {
                        {
                            { // Z1-D2-T1
                                pathPosition := {
                                    deltaLatitude                       := -346,
                                    deltaLongitude                      := 787,
garciay's avatar
garciay committed
                                    deltaAltitude                       := 0
                                },
                                pathDeltaTime                           := omit
                            },
                            { // Z1-D2-T2
                                pathPosition := {
                                    deltaLatitude                       := -390,
                                    deltaLongitude                      := 885,
garciay's avatar
garciay committed
                                    deltaAltitude                       := 0
                                },
                                pathDeltaTime                           := omit
                            },
                            { // Z1-D2-T3
                                pathPosition := {
                                    deltaLatitude                       := -390,
                                    deltaLongitude                      := 885,
garciay's avatar
garciay committed
                                    deltaAltitude                       := 0
                                },
                                pathDeltaTime                           := omit
                            },
                            { // Z1-D2-T4
                                pathPosition := {
                                    deltaLatitude                       := -390,
                                    deltaLongitude                      := 885,
garciay's avatar
garciay committed
                                    deltaAltitude                       := 0
                                },
                                pathDeltaTime                           := omit
                            },
                            { // Z1-D2-T5
                                pathPosition := {
                                    deltaLatitude                       := -390,
                                    deltaLongitude                      := 885,
garciay's avatar
garciay committed
                                    deltaAltitude                       := 0
                                },
                                pathDeltaTime                           := omit
                            }
                        }
                    }; // End of c_PICS_Z1_D2_Tx
garciay's avatar
garciay committed
                    const DenmParm c_PICS_Z1_D2 := {
                        eventPosition                               := c_PICS_Z1_D2_EP,
                        causeCodeType                               := LibItsCommon_ASN1_NamedNumbers.CauseCodeType_roadworks_,
garciay's avatar
garciay committed
                        eventHistory                                := c_PICS_Z1_D2_Hx,
                        traces                                      := c_PICS_Z1_D2_Tx,
                        roadWorksContainerExtended := {
                            lightBarSirenInUse                      := omit,
                            closedLanes := {
                                innerhardShoulderStatus             := closed,
                                outerhardShoulderStatus             := availableForDriving,
                                drivingLaneStatus                   := '01'B
garciay's avatar
garciay committed
                            },
                            restriction                             := omit,
                            speedLimit                              := c_PICS_SPEED_LIMIT,
                            incidentIndication                      := omit,
                            recommendedPath                         := omit,
                            startingPointSpeedLimit                 := omit,
                            trafficFlowRule                         := passToRight,
                            referenceDenms                          := omit
                        }
                    
                    } // End of c_PICS_Z1_D2
garciay's avatar
garciay committed
                
                } // End of group denmZone1_D2
            
garciay's avatar
garciay committed
                group denmZone1_D3 {
garciay's avatar
garciay committed
                    /**
                     * @desc Z1-D3-EP/POS3
                     */
                    const ReferencePosition c_PICS_Z1_D3_EP := {
                        latitude                                    := 367472264,                               // Z1-D3-EP/latitude
                        longitude                                   := -45563074,                               // Z1-D3-EP/longitude
garciay's avatar
garciay committed
                        positionConfidenceEllipse                   := c_PICS_DENM_POSITION_CONFIDENCE_ELLIPSE,
                        altitude                                    := c_PICS_DENM_ALTITUDE
                    }; // End of c_PICS_Z1_D3_EP
garciay's avatar
garciay committed
                    /**
                     * @desc Z1-D3-EP/EventHistory1
                     */
                    const EventHistory c_PICS_Z1_D3_Hx := { 
                        { // Z1_D3_H1
                            eventPosition := {
                                deltaLatitude                       := 44,
                                deltaLongitude                      := -98,
garciay's avatar
garciay committed
                                deltaAltitude                       := 0
                            },
                            eventDeltaTime                          := omit,
                            informationQuality                      := 0
                        },
                        { // Z1_D3_H2
                            eventPosition := {
                                deltaLatitude                       := 431,
                                deltaLongitude                      := -985,
garciay's avatar
garciay committed
                                deltaAltitude                       := 0
                            },
                            eventDeltaTime                          := omit,
                            informationQuality                      := 0
                        }
                    }; // End of c_PICS_Z1_D3_Hx
garciay's avatar
garciay committed
                    /**
                     * @desc Z1-D3-Traces/Trace1
                     */
                    const Traces c_PICS_Z1_D3_Tx := {
                        {
                            { // Z1-D3-T1
                                pathPosition := {
                                    deltaLatitude                       := -388,
                                    deltaLongitude                      := 887,
garciay's avatar
garciay committed
                                    deltaAltitude                       := 0
                                },
                                pathDeltaTime                           := omit
                            },
                            { // Z1-D3-T2
                                pathPosition := {
                                    deltaLatitude                       := -302,
                                    deltaLongitude                      := 689,
garciay's avatar
garciay committed
                                    deltaAltitude                       := 0
                                },
                                pathDeltaTime                           := omit
                            },
                            { // Z1-D3-T3
                                pathPosition := {
                                    deltaLatitude                       := -389,
                                    deltaLongitude                      := 886,
garciay's avatar
garciay committed
                                    deltaAltitude                       := 0
                                },
                                pathDeltaTime                           := omit
                            },
                            { // Z1-D3-T4
                                pathPosition := {
                                    deltaLatitude                       := -389,
                                    deltaLongitude                      := 886,
garciay's avatar
garciay committed
                                    deltaAltitude                       := 0
                                },
                                pathDeltaTime                           := omit
                            }
                        }
                    }; // End of c_PICS_Z1_D3_Tx
garciay's avatar
garciay committed
                    const DenmParm c_PICS_Z1_D3 := {
                        eventPosition                               := c_PICS_Z1_D3_EP,
                        causeCodeType                               := LibItsCommon_ASN1_NamedNumbers.CauseCodeType_roadworks_,
garciay's avatar
garciay committed
                        eventHistory                                := c_PICS_Z1_D3_Hx,
                        traces                                      := c_PICS_Z1_D3_Tx,
                        roadWorksContainerExtended := {
                            lightBarSirenInUse                      := omit,
                            closedLanes := {
                                innerhardShoulderStatus             := closed,
                                outerhardShoulderStatus             := closed,
                                drivingLaneStatus                   := '10'B
garciay's avatar
garciay committed
                            },
                            restriction                             := omit,
                            speedLimit                              := c_PICS_SPEED_LIMIT,
                            incidentIndication                      := omit,
                            recommendedPath                         := omit,
                            startingPointSpeedLimit := {
                                deltaLatitude                       := 0,
                                deltaLongitude                      := 0,
                                deltaAltitude                       := 0
                            },
                            trafficFlowRule                         := passToLeft,
                            referenceDenms                          := omit
                        }
                    
                    } // End of c_PICS_Z1_D3
garciay's avatar
garciay committed
                
                } // End of denmZone1_D3
            
garciay's avatar
garciay committed
            } // End of group denmZone1 
            
            group denmZone2 {
                
                group denmZone2_D1 {
                    
                    /**
                     * @desc Z2-D1-EP/POS0
                     */
                    const DeltaReferencePosition c_PICS_Z2_D1_POS0 := {
                        deltaLatitude                       := -676,
                        deltaLongitude                      := -6542,
                        deltaAltitude                       := 0
                    }; // End of c_PICS_Z2_D1_POS0
                    
                    /**
                     * @desc Z2-D1-EP/POS1
                     */
                    const ReferencePosition c_PICS_Z2_D1_EP := {
                        latitude                                    := 435512286,                               // Z2-D1-EP/latitude
                        longitude                                   := 102999675,                               // Z2-D1-EP/longitude
                        positionConfidenceEllipse                   := c_PICS_DENM_POSITION_CONFIDENCE_ELLIPSE,
                        altitude                                    := c_PICS_DENM_ALTITUDE
                    }; // End of c_PICS_Z2_D1_EP
                    
                    /**
                     * @desc Z2-D1-EP/EventHistory1
                     */
                    const EventHistory c_PICS_Z2_D1_Hx := { 
                        { // Z2_D1_H1
                            eventPosition := {
                                deltaLatitude                       := 718,
                                deltaLongitude                      := 7406,
                                deltaAltitude                       := 0
                            },
                            eventDeltaTime                          := omit,
                            informationQuality                      := 0
                        },
                        { // Z2_D1_H2
                            eventPosition := {
                                deltaLatitude                       := 577,
                                deltaLongitude                      := 5717,
                                deltaAltitude                       := 0
                            },
                            eventDeltaTime                          := omit,
                            informationQuality                      := 0
                        }
                    }; // End of c_PICS_Z2_D1_Hx
                    
                    /**
                     * @desc Z2-D1-Traces/Trace1
                     */
                    const Traces c_PICS_Z2_D1_Tx := {
                        {
                            { // Z2-D1-T1
                                pathPosition := {
                                    deltaLatitude                       := -1377,
                                    deltaLongitude                      := -12164,
                                    deltaAltitude                       := 0
                                },
                                pathDeltaTime                           := omit
                            },
                            { // Z2-D1-T2
                                pathPosition := {
                                    deltaLatitude                       := 55,
                                    deltaLongitude                      := -609,
                                    deltaAltitude                       := 0
                                },
                                pathDeltaTime                           := omit
                            },
                            { // Z2-D1-T3
                                pathPosition := {
                                    deltaLatitude                       := 312,
                                    deltaLongitude                      := -587,
                                    deltaAltitude                       := 0
                                },