Commit da99a0c6 authored by garciay's avatar garciay
Browse files

Separate IICP and FAST protocols (see draft ETSI TS 102 797-2 v0.0.8, clauses 8 (IICP) and 9 (FSAP)

parent 93fc875b
Loading
Loading
Loading
Loading
+26 −23
Original line number Diff line number Diff line
@@ -298,36 +298,39 @@ module LibItsCam_Templates {
            camParameters := {
                vehicleCommonParameters := {
                    vehicleType := 0,
                    stationLength := 0,
                    stationLengthConfidence := 0,
                    stationWidth := 0,
                    stationWidthConfidence := 0,
                    vehicleSpeed := 0,
                    vehicleSpeedConfidence := 0,
                    longAcceleration := 0,
                    longAccelerationConfidence := 0,
                    stationLength := 1,
                    stationLengthConfidence := 3,
                    stationWidth := 12,
                    stationWidthConfidence := 4,
                    vehicleSpeed := 45,
                    vehicleSpeedConfidence := 5,
                    longAcceleration := 33,
                    longAccelerationConfidence := 4,
                    accelerationControl := '000000'B,
                    yawRate := {
                        yawDirection := right,
                    	yawRateValue := 0
                        yawRateValue := 123
                    },
                    yawRateConfidence := 0,
                    exteriorLights := '00000000'B,
                    turnAdvice := omit,
                    distanceToStopLine := omit,
                    occupancy := omit,
                    doorOpen := omit,
                    turnAdvice := {
                        direction := TurnDirection_right_,
                        distance := 10
                    },
                    distanceToStopLine := 10,
                    occupancy := 15,
                    doorOpen := DoorOpen_passenger_,
                    posConfidenceEllipse := {
                    	semiMajorConfidence := 0,
                        semiMinorConfidence := 0,
                        semiMajorOrientation := 0
                        semiMajorConfidence := 7,
                        semiMinorConfidence := 8,
                        semiMajorOrientation := 19
                    },
                    curvature := 0,
                    curvatureChange := omit,
                    curvatureConfidence := 0,
                    crashStatus := omit,
                    headingConfidence := 0,
                    dangerousGoods := omit
                    curvature := -175,
                    curvatureChange := -50,
                    curvatureConfidence := 9,
                    crashStatus := false,
                    headingConfidence := 10,
                    dangerousGoods := 125
                },
                profileDependent := omit
            }
+6 −1
Original line number Diff line number Diff line
@@ -25,6 +25,10 @@ module LibItsCommon_TypesAndValues {
            UtFsapEvent, 
            UtFsapCommandRequest, UtFsapCommandConfirm 
    };
    import from LibItsIicp_TypesAndValues {
        type 
            UtIicpInitialize 
    };
    
    /**
     * @desc Upper Tester message to initialize IUT 
@@ -37,7 +41,8 @@ module LibItsCommon_TypesAndValues {
        UtGNInitialize utGNInitialize,
        // Non IP Protocols
        UtFntpInitialize utFntpInitialize,
        UtFsapInitialize utFsapInitialize
        UtFsapInitialize utFsapInitialize,
        UtIicpInitialize utIicpInitialize
    }
    
    /**
+54 −40
Original line number Diff line number Diff line
@@ -13,9 +13,13 @@ module LibItsFsap_Functions {
    };
    
    // LibIts
    import from CALMllsap language "ASN.1:1997" { 
        type EUI64 
    }; 
    import from CALMmanagement language "ASN.1:1997" {
        type
            ITS_scuId, ApplicationID 
            ITS_scuId, StationID, 
            ApplicationID 
    };
    import from CALMiitsscu language "ASN.1:1997" {
        type 
@@ -28,9 +32,6 @@ module LibItsFsap_Functions {
    import from CALMmsap language "ASN.1:1997" {
        type CommandRef
    };
    import from LibItsFntp_TypesAndValues {
        const c_portNon
    };
    import from LibItsMgt_Templates all;
    import from LibItsMgt_Functions all;
    import from LibItsFsap_TypesAndValues all;
@@ -53,26 +54,22 @@ module LibItsFsap_Functions {
         * @desc This configuration features:
         * <li>Host and Router are combined (see ISO/WD 29281-2 - Figure 1 - Implementation architecture I)</li>
         * <li>MGT1 IISC Port (IISC/LAN) is used if specified</li>
         * @param p_iicpMGM Set to true if IISC port shall be used
         */
        function f_cf01Up(in boolean p_iicpMGM) runs on ItsMgt {
        function f_cf01Up() runs on ItsMgt {
            
            // Map
            map(self:acPort, system:acPort);
            map(self:utPort, system:utPort);
            map(self:mgtMFSapPort, system:mgtMFSapPort);
            if (p_iicpMGM == true) {
                map(self:iiscPort, system:iiscPort);
            }
            
            // Connect
            f_connect4SelfOrClientSync();
            
            // Set processing on shutdown
            activate(a_cf01Down(p_iicpMGM));
            activate(a_cf01Down());
            
            // Initialize the component
            f_initialiseComponent("cf01Up", p_iicpMGM);
            f_initialiseComponent("cf01Up");

            // Initialze the IUT
            f_initialState();
@@ -81,9 +78,8 @@ module LibItsFsap_Functions {
        
        /**
         * @desc    Deletes configuration cf01
         * @param   p_iicpMGM Set to true if IISC port shall be used
         */
        function f_cf01Down(in boolean p_iicpMGM) runs on ItsMgt {
        function f_cf01Down() runs on ItsMgt {
            
            deactivate;
            
@@ -91,9 +87,6 @@ module LibItsFsap_Functions {
            unmap(self:acPort, system:acPort);
            unmap(self:utPort, system:utPort);
            unmap(self:mgtMFSapPort, system:mgtMFSapPort);
            if (p_iicpMGM == true) {
                unmap(self:iiscPort, system:iiscPort); // FIXME To be removed
            }
            
            // Disconnect
            f_disconnect4SelfOrClientSync();
@@ -105,16 +98,13 @@ module LibItsFsap_Functions {
         * @param   p_componentName Name of the component
         * @param   p_iicpMGM Set to true if IISC port shall be used
         */
        function f_initialiseComponent(in charstring p_componentName, in boolean p_iicpMGM) runs on ItsMgt {
        function f_initialiseComponent(in charstring p_componentName) runs on ItsMgt {
            
            // Initialize variables
            
            // Set defaults
            activate(a_mgtMFSapPortDefault()); // Default for MGT module / MF-SAP port
            activate(a_fsapDefault()); 
            if (p_iicpMGM == true) { 
                activate(a_iiscDefault()); // Default for Iisc module
            }
            
        } // end f_initialiseComponent
        
@@ -162,25 +152,23 @@ module LibItsFsap_Functions {
    group iutFunctions {
        
        /**
         * @desc Gets the Local/source ITS scuID 
         * @return  The Local/source ITS scuID 
         * @see PX_LOCAL_ITS_SCU_ID 
         * @desc    Get the local identifier of the VCI for broadcast on ITS-S host
         * @return  The local identifier of the VCI for broadcast on ITS-S host
         * @see     PX_SRC_REMOTE_CIID_BC
         * @verdict Unchanged
         * @see ISO/WD 24102-4 - Table 2 — ITS-SCU-ID value assignment
         */
        function f_getIutLocalITSscuId() return ITS_scuId {
            return PX_LOCAL_ITS_SCU_ID;
        function f_getIutSrcRemoteCIID() return EUI64 {
            return PX_SRC_REMOTE_CIID;
        }
        
        /**
         * @desc Gets the type ITS scuID
         * @return  The type ITS scuID
         * @see PX_LOCAL_ITS_TYPE 
         * @desc    Get the identifier of a VCI on ITS-S host/router only 
         * @return  The identifier of a different VCI on ITS-S host/router only 
         * @see     PX_SRC_LOCAL_CIID
         * @verdict Unchanged
         * @see ISO/WD 24102-4 - Table 2 — ITS-SCU-ID value assignment
         */
        function f_getIutLocalITSType() return ITS_SCUtype {
            return PX_LOCAL_ITS_TYPE;
        function f_getIutSrcLocalCIID() return EUI64 {
            return PX_SRC_LOCAL_CIID;
        }
        
        /**
@@ -210,6 +198,15 @@ module LibItsFsap_Functions {
            return PX_APPLICATION_ID;
        }
        
        /**
         * @desc    TODO
         * @return  TODO
         * @verdict TODO
         */
        function f_getIutClientID() return StationID {
            return PX_CLIENT_ID;
        }
        
        /**
         * @desc    TODO
         * @return  TODO
@@ -224,8 +221,26 @@ module LibItsFsap_Functions {
         * @return  TODO
         * @verdict TODO
         */
        function f_getIutServiceDataReg() return ServiceDataReg {
            return PX_SERVICE_DATA_REG;
        function f_getIutGCscheduleWithNonIP() return GCschedule {
            return { PX_GSCHED_NONIP };
        }
        
        /**
         * @desc    TODO
         * @return  TODO
         * @verdict TODO
         */
        function f_getIutServiceDataRegWithNoSession() return ServiceDataReg {
            return PX_SERVICE_DATA_REG_WITH_NO_SESSION_PHASE;
        }
        
        /**
         * @desc    TODO
         * @return  TODO
         * @verdict TODO
         */
        function f_getIutServiceDataRegWithSession() return ServiceDataReg {
            return PX_SERVICE_DATA_REG_WITH_SESSION_PHASE;
        }
        
    } // End of group iutFunctions
@@ -252,7 +267,7 @@ module LibItsFsap_Functions {
                f_poDefault();
                log("*** a_fsapDefault: INFO: TEST COMPONENT NOW STOPPING ITSELF! ***");
                if(self == mtc) {
                    f_cf01Down(PICS_IICP_MGM);
                    f_cf01Down();
                }
                stop;
            }
@@ -260,12 +275,11 @@ module LibItsFsap_Functions {
        
        /**
         * @desc Default handling cf01 de-initialisation.
         * @param   TODO
         */
        altstep a_cf01Down(in boolean p_iicpMGM) runs on ItsMgt {
        altstep a_cf01Down() runs on ItsMgt {
            [] a_shutdown() {
                f_poDefault();
                f_cf01Down(p_iicpMGM);
                f_cf01Down();
                log("*** a_cf01Down: INFO: TEST COMPONENT NOW STOPPING ITSELF! ***");
                stop;
            }
+59 −23
Original line number Diff line number Diff line
/**
 *  @author     ETSI / STF422_EETS
 *  @version    $URL:$
 *              $Id:$
 *  @desc       Fast service advertisement protocol (ISO 24102-5) Pixits
@@ -15,14 +14,12 @@ module LibItsFsap_Pixits {
    };
    import from CALMmanagement language "ASN.1:1997" {
        type 
            ITS_scuId, Talive 
    };
    import from CALMiitsscu language "ASN.1:1997" {
        type 
            ITS_SCUtype 
            ITS_scuId, StationID, 
            Talive 
    };
    import from CALMfsap language "ASN.1:1997" {
        type 
            FmtID, VersionFSAP, 
            ApplicationID, 
            GCsched, ServiceDataReg 
    };
@@ -30,6 +27,10 @@ module LibItsFsap_Pixits {
        type 
            PortNumber 
    };
    import from LibItsFntp_TypesAndValues {
        const 
            c_portNon 
    };
    
    /**
     * @desc Local settings
@@ -37,42 +38,44 @@ module LibItsFsap_Pixits {
    group local {
        
        /**
         * @desc The own ITS scuID
         * @see ISO/WD 24102-4 - Table 2 — ITS-SCU-ID value assignment
         * @desc Identifies the CI on ITS-S host 
         * @see ISO 21218 - Clause 6.2 Link Identifier 
         */
        modulepar ITS_scuId PX_LOCAL_ITS_SCU_ID := 8; 
        modulepar EUI64 PX_SRC_LOCAL_CIID := '0000000000000000'O; 
        
        /**
         * @desc The type ITS scuID
         * @see ISO/WD 24102-4 - Table 2 — ITS-SCU-ID value assignment
         * @desc Identifies the VCI on ITS-S host 
         */
        modulepar ITS_SCUtype PX_LOCAL_ITS_TYPE := 1; // ITS_SCUtype_host_ 
        modulepar EUI64 PX_SRC_REMOTE_CIID := '0000000000000000'O;
        
        /**
         * @desc TODO
         */
        modulepar UserPriority PX_USER_PRIORITY := 0; // TODO Check if it is used somewhere
        
        /**
         * @desc TODO
         */
        modulepar Talive PX_TALIVE := 100; // TODO Check whta is the role of Talive
        
    } // End of group local
    
    group CRegServer {
        
        modulepar StationID PX_CLIENT_ID := '00000000'O;

        modulepar ITSaid PX_ITS_AID := { content := 0 }
        
        modulepar PortNumber PX_PORT_NUMBER := { portLong := 1234 }
        modulepar PortNumber PX_SESSION_PORT := { portLong := 1234 }
        
        modulepar PortNumber PX_NO_SESSION_PORT := { portLong := c_portNon }
        
        modulepar ApplicationID PX_APPLICATION_ID := {
            hostITS_scuId := 1,
            seqNumber := 1
        }
        
        /**
         * @desc 
         * 'medium' field indicates the required access technology
         */
        modulepar GCsched PX_GSCHED_ACCESS_TECH_NONIP := {
            medium := 128, // FIXME TTwb does not generate MedType.iso15628
            medium := 128, // FIXME TTwb does not generate MedType_iso15628_
            directivity := {
                mode := 0, // FIXME TTwb does not generate DirMode.fixed label
                dirPredef := 0,
@@ -82,17 +85,44 @@ module LibItsFsap_Pixits {
            gcInterval := 1
        } // End of modulepar PX_GSCHED_ACCESS_TECH_NONIP
        
        modulepar ServiceDataReg PX_SERVICE_DATA_REG := {
        /**
         * @desc 
         * 'medium' field indicates no required access technology selected
         */
        modulepar GCsched PX_GSCHED_NONIP := {
            medium := 1, // FIXME TTwb does not generate MedType_any_
            directivity := {
                mode := 0, // FIXME TTwb does not generate DirMode.fixed label
                dirPredef := 0,
                fill := '0000000'B, 
                dirVar := { }
            }, // End of field 'directivity'
            gcInterval := 1
        } // End of modulepar PX_GSCHED_NONIP
        
        modulepar ServiceDataReg PX_SERVICE_DATA_REG_WITH_NO_SESSION_PHASE := {
            fill := '0000000'B, 
            datareg := {
                nonipData := {
                    serviceID := PX_ITS_AID, 
                    timeout_ := 100,
                    serviceData := ''O,
                    providerPort := PX_NO_SESSION_PORT
                } // End of field 'nonipData'
            } // End of field 'datareg'
        } // End of modulepar PX_SERVICE_DATA_REG_WITH_NO_SESSION_PHASE
        
        modulepar ServiceDataReg PX_SERVICE_DATA_REG_WITH_SESSION_PHASE := {
            fill := '0000000'B, 
            datareg := {
                nonipData := {
                    serviceID := PX_ITS_AID, 
                    timeout_ := 100,
                    serviceData := ''O,
                    providerPort := PX_PORT_NUMBER
                    providerPort := PX_SESSION_PORT
                } // End of field 'nonipData'
            } // End of field 'datareg'
        } // End of modulepar PX_SERVICE_DATA_REG
        } // End of modulepar PX_SERVICE_DATA_REG_WITH_SESSION_PHASE
        
    } // End of group CRegServer
    
@@ -101,4 +131,10 @@ module LibItsFsap_Pixits {
     */
    modulepar float PX_WAIT_FOR_IUT_READY := 1.0;
    
    modulepar FmtID PX_FMTID_SAM := 0;
    
    modulepar FmtID PX_FMTID_CTX := 0;
    
    modulepar VersionFSAP PX_VERSION_FSAP := 0;
    
} // End of module LibItsFsap_Pixits
 No newline at end of file
+194 −149

File changed.

Preview size limit exceeded, changes collapsed.

Loading