Commit 84d53394 authored by berge's avatar berge
Browse files

Added TC_GEONW_PON_GBC_BV_03

parent 2797bbf9
Loading
Loading
Loading
Loading
+5 −1
Original line number Diff line number Diff line
@@ -446,12 +446,14 @@ module LibItsGeoNetworking_Functions {
             */
            altstep a_receiveGeoBroadcast(
                in template (present) LongPosVector p_srcLongPosVec,                
                in template (present) LongPosVector p_senderLongPosVec,
                in template (present) StationTypeIdentifier p_stationType,
                in template (present) UInt16 p_seqNumber
            ) runs on ItsNt {
                
                [] geoNetworkingPort.receive(mw_geoNwInd(mw_geoNwPdu(mw_geoBroadcastHeader(
                        p_srcLongPosVec,
                        p_senderLongPosVec,
                        p_stationType,
                        p_seqNumber
                    )))) {
@@ -463,6 +465,7 @@ module LibItsGeoNetworking_Functions {
             */
            altstep a_receiveGeoBroadcastWithArea(                
                in template (present) LongPosVector p_srcLongPosVec,
                in template (present) LongPosVector p_senderLongPosVec,
                in template (present) StationTypeIdentifier p_stationType,
                in template (present) UInt16 p_seqNumber,
                in template (present) BroadcastArea p_broadcastArea
@@ -470,6 +473,7 @@ module LibItsGeoNetworking_Functions {
                
                [] geoNetworkingPort.receive(mw_geoNwInd(mw_geoNwPdu(mw_geoBroadcastHeaderWithArea(
                        p_srcLongPosVec,
                        p_senderLongPosVec,
                        p_stationType,
                        p_seqNumber,
                        p_broadcastArea
+24 −16
Original line number Diff line number Diff line
@@ -85,6 +85,15 @@ module LibItsGeoNetworking_Templates {
                longPosVec := ?    
            }
            
            template CommonHeader mw_commonHeaderWithSender (
                in template (present) NextHeader p_nextHeader,
                in template (present) HeaderTST p_headerTST,
                in template (present) StationTypeIdentifier p_stationType,
                in template (present) LongPosVector p_senderLongPosVec
            ) modifies mw_commonHeader := {
                longPosVec := p_senderLongPosVec
            }
            
            template CommonHeader mw_commonHeaderWithHopLimit (
            	in template (present) NextHeader p_nextHeader,
            	in template (present) HeaderTST p_headerTST,
@@ -217,17 +226,12 @@ module LibItsGeoNetworking_Templates {
            	in template (value) LongPosVector p_senderLongPosVec,
    			in template (value) StationTypeIdentifier p_stationType,
            	in template (value) UInt16 p_seqNumber,
            	in template (value) HeaderSubTypeGeoBroadcast p_headerSubType,
            	in template (value) UInt32 p_geoAreaPosLatitude,
            	in template (value) UInt32 p_geoAreaPosLongitude,
            	in template (value) UInt16 p_distanceA,
            	in template (value) UInt16 p_distanceB,
            	in template (value) UInt8 p_angle
            	in template (value) BroadcastArea p_broadcastArea
            ) := {
                geoBroadcastHeader := {
                    commonHeader := m_commonHeader(
                    	e_btp,
                    	m_geoBroadcastHeaderType(p_headerSubType),
                    	m_geoBroadcastHeaderType(p_broadcastArea.geoBrodcastSubType),
                    	m_trafficClass,
                    	c_defaultHopLimit,
                    	p_senderLongPosVec,
@@ -237,25 +241,27 @@ module LibItsGeoNetworking_Templates {
                    lifetime := m_lifetime,
                    reserved := c_uInt8Zero,
                    srcPosVector := p_sourceLongPosVec,
                    geoAreaPosLatitude := p_geoAreaPosLatitude,
                    geoAreaPosLongitude := p_geoAreaPosLongitude,
                    distanceA := p_distanceA,
                    distanceB := p_distanceB,
                    angle := p_angle,
                    geoAreaPosLatitude := p_broadcastArea.geoAreaPosLatitude,
                    geoAreaPosLongitude := p_broadcastArea.geoAreaPosLongitude,
                    distanceA := p_broadcastArea.distanceA,
                    distanceB := p_broadcastArea.distanceB,
                    angle := p_broadcastArea.angle,
                    reserved2 := c_uInt24Zero
                }
            }  
            
            template Header mw_geoBroadcastHeader(
                in template (present) LongPosVector p_sourceLongPosVec,
                in template (present) LongPosVector p_senderLongPosVec,
    			in template (present) StationTypeIdentifier p_stationType,
            	in template (present) UInt16 p_seqNumber
            ) := {
                geoBroadcastHeader := {
                    commonHeader := mw_commonHeader(
                    commonHeader := mw_commonHeaderWithSender(
                    	?,
                    	mw_geoBroadcastHeaderType,
                    	p_stationType
                    	p_stationType, 
                    	p_senderLongPosVec
                    ),
                    seqNumber := p_seqNumber,
                    lifetime := ?,
@@ -272,15 +278,17 @@ module LibItsGeoNetworking_Templates {
            
            template Header mw_geoBroadcastHeaderWithArea (
                in template (present) LongPosVector p_sourceLongPosVec,
                in template (present) LongPosVector p_senderLongPosVec,
                in template (present) StationTypeIdentifier p_stationType,
                in template (present) UInt16 p_seqNumber,
                in template (present) BroadcastArea p_broadcastArea
            ) modifies mw_geoBroadcastHeader := {
                geoBroadcastHeader := {
                    commonHeader := mw_commonHeader(
                    commonHeader := mw_commonHeaderWithSender(
                        ?,
                        mw_geoBroadcastHeaderTypeWithSubType(p_broadcastArea.geoBrodcastSubType),
                        p_stationType
                        p_stationType,
                        p_senderLongPosVec
                    ),
                    geoAreaPosLatitude := p_broadcastArea.geoAreaPosLatitude,
                    geoAreaPosLongitude := p_broadcastArea.geoAreaPosLongitude,