Commit 2be01182 authored by berge's avatar berge
Browse files

Added T3Doc tags in LibItsDenm_Templates

parent d9725aab
Loading
Loading
Loading
Loading
+221 −26
Original line number Diff line number Diff line
@@ -15,12 +15,20 @@ module LibItsDenm_Templates {

    group primitivesTemplates {
        
        template DenmReq m_denmReq(
        /**
         * @desc    Send template for DEN Message (DenmPort Primitive)
         * @param   p_denMsg DEN Message to be sent
         */
        template (value) DenmReq m_denmReq(
            template (value) DenmPdu p_denMsg
            ) := {
            msgOut := p_denMsg
        }
        
        /**
         * @desc    Receive template for DEN Message (DenmPort Primitive)
         * @param   p_denMsg
         */
        template DenmInd mw_denmInd(
            template (present) DenmPdu p_denMsg
            ) := {
@@ -30,11 +38,20 @@ module LibItsDenm_Templates {
        
        group utPrimitives {
            
            /**
             * @desc    Send template for Upper Tester event
             * @param   p_situation Situation
             */
            template (value) UtEvent m_utEvent(in template (value) Situation p_situation) := {
                situation := p_situation,
                eventOption := omit
            }
            
            /**
             * @desc    Send template for Upper Tester event cancellation
             * @param   p_situation     Situation
             * @param   p_dataVersion   Data version
             */
            template (value) UtEvent m_utEventCancellation(
                in template (value) Situation p_situation, 
                in template (value) DataVersion p_dataVersion
@@ -44,6 +61,12 @@ module LibItsDenm_Templates {
                }
            }
            
            /**
             * @desc    Send template for Upper Tester event negation
             * @param   p_situation Situation
             * @param p_isNegation 	Is it a negation
             * @see     m_utEvent
             */
            template (value) UtEvent m_utEventNegation(
                in template (value) Situation p_situation, 
                in template (value) DecentralizedEnvironmentalNotificationMessage.management.isNegation p_isNegation
@@ -53,6 +76,11 @@ module LibItsDenm_Templates {
                }
            }
            
            /**
             * @desc    Send template for Upper Tester event with Traffic flow effect
             * @param   p_situation         Situation
             * @param   p_trafficFlowEffect Traffic flow effect
             */
            template (value) UtEvent m_utEeventTrafficFlowEffect(
                in template (value) Situation p_situation, 
                in template (value) TrafficFlowEffect p_trafficFlowEffect
@@ -62,6 +90,11 @@ module LibItsDenm_Templates {
                }
            }
            
            /**
             * @desc    Send template for Upper Tester event with linked cause
             * @param   p_situation     Situation
             * @param   p_linkedCause   Linked situation
             */
            template (value) UtEvent m_utEventLinkedCause(
                in template (value) Situation p_situation, 
                in template (value) Situation p_linkedCause
@@ -71,6 +104,11 @@ module LibItsDenm_Templates {
                }
            }
            
            /**
             * @desc    Send template for Upper Tester event with expiration time
             * @param   p_situation         Situation
             * @param   p_expirationTime    Expiration time    
             */
            template (value) UtEvent m_utEventExpirationTime(
                in template (value) Situation p_situation, 
                in template (value) TimeStamp p_expirationTime
@@ -80,6 +118,12 @@ module LibItsDenm_Templates {
                }
            }
            
            /**
             * @desc    Send template for Upper Tester event with expiration time and frequency
             * @param   p_situation         Situation
             * @param   p_expirationTime    Expiration time 
             * @param   p_frequency         Frequency
             */
            template (value) UtEvent m_utEventExpirationTimeFrequency(
                in template (value) Situation p_situation, 
                in template (value) TimeStamp p_expirationTime,
@@ -93,6 +137,11 @@ module LibItsDenm_Templates {
                }
            }
            
            /**
             * @desc    Send template for Upper Tester event with characteristics
             * @param   p_situation     Situation
             * @param   p_eventCharact  Event characteristics
             */
            template (value) UtEvent m_utEventCharact(
                in template (value) Situation p_situation, 
                in template (value) DecentralizedSituation.eventCharact p_eventCharact
@@ -108,22 +157,43 @@ module LibItsDenm_Templates {
    
    group denmPduTemplates {
        
        template ItsPduHeader m_itsPduHeader := {
        /**
         * @desc    Default send template for ITS PDU header
         * @remark  generationTime 0 indicates that the lower layer should add the time while sending
         */
        template (value) ItsPduHeader m_itsPduHeader := {
            protocolVersion := c_protocolVersionDenm,
			messageID := c_messageId,
            generationTime := 0 //TODO document: 0 indicates that the lower layer should add the time while sending
            generationTime := 0 
        }
        
        template ItsPduHeader mw_itsPduHeader modifies m_itsPduHeader := {
        /**
         * @desc    Default send template for ITS PDU header
         */
        template ItsPduHeader mw_itsPduHeader := {
            protocolVersion := c_protocolVersionDenm,
            messageID := c_messageId,
            generationTime := ?
        }
                
        template DenmPdu m_denmPdu(in template (value) DecentralizedEnvironmentalNotificationMessage p_denm) := {
        /**
         * @desc    Send template for DENM PDU
         * @param   p_denm  DEN Message
         */
        template (value) DenmPdu m_denmPdu(
            in template (value) DecentralizedEnvironmentalNotificationMessage p_denm
        ) := {
        	header := m_itsPduHeader,
        	denm := p_denm            
        }
             
        template DenmPdu mw_denmPdu(in template (present) DecentralizedEnvironmentalNotificationMessage p_denm) := {
        /**
         * @desc    Receive template for DENM PDU
         * @param   p_denm  DEN Message 
         */
        template DenmPdu mw_denmPdu(
            in template (present) DecentralizedEnvironmentalNotificationMessage p_denm
        ) := {
        	header := mw_itsPduHeader,
        	denm := p_denm            
        }     
@@ -132,7 +202,13 @@ module LibItsDenm_Templates {
        
    group decentralizedEnvironmentalNotificationMessageTemplates {
        
        template DecentralizedEnvironmentalNotificationMessage m_denm(
        /**
         * @desc    Send template for DEN Message
         * @param   p_mgmt  Decentralized Situation Management  
         * @param   p_sit   Decentralized Situation
         * @param   p_loc   Decentralized Situation Location
         */
        template (value) DecentralizedEnvironmentalNotificationMessage m_denm(
            template (value) DecentralizedSituationManagement p_mgmt,
            template (value) DecentralizedSituation p_sit,
            template (value) DecentralizedSituationLocation p_loc
@@ -142,12 +218,21 @@ module LibItsDenm_Templates {
            location := p_loc
        }
    
        /**
         * @desc    Default receive template for DEN Message
         */
        template DecentralizedEnvironmentalNotificationMessage mw_anyDenm := {
            management := ?, 
            situation := ?, 
            location := ?            
        }    
    
        /**
         * @desc    Receive template for DEN Message
         * @param   p_mgmt
         * @param   p_sit
         * @see     mw_anyDenm    
         */
        template DecentralizedEnvironmentalNotificationMessage mw_denm(
            template (present) DecentralizedSituationManagement p_mgmt,
            template (present) DecentralizedSituation p_sit
@@ -156,7 +241,14 @@ module LibItsDenm_Templates {
            situation := p_sit
        }
    
        template DecentralizedEnvironmentalNotificationMessage m_denmWithCause(
        /**
         * @desc    Send template for DENM with cause
         * @param   p_dataVersion   Data version
         * @param   p_sit           Situation
         * @param   p_eventPosition Event Position
         * @param   p_stationId     Source station ID
         */
        template (value) DecentralizedEnvironmentalNotificationMessage m_denmWithCause(
            template (value) DataVersion p_dataVersion,
            template (value) Situation p_sit,
            template (value) DecentralizedSituationLocation.eventPosition p_eventPosition,            
@@ -169,7 +261,17 @@ module LibItsDenm_Templates {
                            m_locationRef
                        )
        }
        template DecentralizedEnvironmentalNotificationMessage m_denmWithCauseIsNeg(
        
        /**
         * @desc    Send template for DENM with cause and negation
         * @param   p_dataVersion   Data version
         * @param   p_sit           Situation
         * @param   p_eventPosition Event Position
         * @param   p_stationId     Source station ID
         * @param   p_isNeg         Is it a negation
         * @see     m_denmWithCause
         */
        template (value) DecentralizedEnvironmentalNotificationMessage m_denmWithCauseIsNeg(
            template (value) DataVersion p_dataVersion,
            template (value) Situation p_sit,
            template (value) DecentralizedSituationLocation.eventPosition p_eventPosition,            
@@ -185,7 +287,12 @@ module LibItsDenm_Templates {
    
    group decentralizedSituationManagementTemplates {
        
        template DecentralizedSituationManagement m_denmMgmtCon(
        /**
         * @desc    Send template for Decentralized Situation Management
         * @param   p_dataVersion   Data version
         * @param   p_stationId     Station ID of the source
         */
        template (value) DecentralizedSituationManagement m_denmMgmtCon(
            template (value) DataVersion p_dataVersion,
            template (value) StationID p_stationId
            ) := {
@@ -200,6 +307,25 @@ module LibItsDenm_Templates {
            isNegation := false
        }

        /**
         * @desc    Send template for Decentralized Situation Management with negation
         * @param   p_dataVersion   Data version
         * @param   p_stationId     Station ID of the source
         * @param   p_isNeg         Is it a negation
         * @see     m_denmMgmtCon
         */
        template (value) DecentralizedSituationManagement m_denmMgmtCon_IsNeg(
            template (value) DataVersion p_dataVersion,            
            template (value) StationID p_stationId,
            template (value) DecentralizedSituationManagement.isNegation p_isNeg
            ) modifies m_denmMgmtCon := {
            isNegation := p_isNeg
        }
                
        /**
         * @desc    Receive template for Decentralized Situation Management
         * @param   p_dataVersion   Data version
         */
        template DecentralizedSituationManagement mw_denmMgmtCon (
            template (present) DataVersion p_dataVersion
            ):= {
@@ -214,14 +340,12 @@ module LibItsDenm_Templates {
            isNegation := ?
        }
      
        template DecentralizedSituationManagement m_denmMgmtCon_IsNeg(
            template (value) DataVersion p_dataVersion,            
            template (value) StationID p_stationId,
            template (value) DecentralizedSituationManagement.isNegation p_isNeg
            ) modifies m_denmMgmtCon := {
            isNegation := p_isNeg
        }
        
        /**
         * @desc    Receive template for Decentralized Situation Management with negation
         * @param   p_dataVersion   Data version
         * @param   p_isNeg         Is it a negation
         * @see     mw_denmMgmtCon
         */
        template DecentralizedSituationManagement mw_denmMgmtCon_IsNeg(
            template (present) DataVersion p_dataVersion,  
            template (present) DecentralizedSituationManagement.isNegation p_isNeg
@@ -229,6 +353,12 @@ module LibItsDenm_Templates {
            isNegation := p_isNeg
        }
        
        /**
         * @desc    Receive template for Decentralized Situation Management with expiry time
         * @param   p_dataVersion   Data version  
         * @param   p_expiryTime    Expiry time
         * @see     mw_denmMgmtCon
         */
        template DecentralizedSituationManagement mw_denmMgmtConWithExpiryTime(
            template (present) DataVersion p_dataVersion,  
            template (present) DecentralizedSituationManagement.expiryTime p_expiryTime        
@@ -236,13 +366,21 @@ module LibItsDenm_Templates {
            expiryTime := p_expiryTime
        }
        
        /**
         * @desc    Default receive template for expiry time
         */
        template DecentralizedSituationManagement.expiryTime mw_anyExpiryTime := ?;
        
    } // end group decentralizedSituationManagementTemplates
    
    group decentralizedSituationTemplates {
        
        template DecentralizedSituation m_denmSitCon(
        /**
         * @desc    Send template for decentralized situation 
         * @param   p_sit   Situation 
         * @param   p_sev   Severity
         */
        template (value) DecentralizedSituation m_denmSitCon(
            template (value) Situation p_sit,
            template (value) Severity p_sev
            ) := {
@@ -255,6 +393,9 @@ module LibItsDenm_Templates {
            profile := omit
        }
        
        /**
         * @desc    Default receive template for decentralized situation 
         */
        template DecentralizedSituation mw_denmSitCon := {
            trafficFlowEffect := *,
            situation := ?,
@@ -265,12 +406,24 @@ module LibItsDenm_Templates {
            profile := *
        }
        
        /**
         * @desc    Receive template for decentralized situation with specific situation
         * @param   p_sit   Situation
         * @see     mw_denmSitCon
         */
        template DecentralizedSituation mw_denmSitCon_Sit(
            template (present) Situation p_sit
            ) modifies mw_denmSitCon := {
            situation := p_sit
        }
        
        /**
         * @desc    Receive template for decentralized situation with specific situation 
         *          and traffic flow effect 
         * @param   p_sit   Situation
         * @param   p_tfe   Traffic flow effect
         * @see     mw_denmSitCon_Sit
         */
        template DecentralizedSituation mw_denmSitCon_SitTfe(
            template (present) Situation p_sit,
            template (present) TrafficFlowEffect p_tfe
@@ -278,6 +431,13 @@ module LibItsDenm_Templates {
                trafficFlowEffect := p_tfe
        }
        
        /**
         * @desc    Receive template for decentrelized situation with specific situation 
         *          and linked cause
         * @param   p_sit   Situation
         * @param   p_lc    Linked Situation
         * @see     mw_denmSitCon_Sit
         */
        template DecentralizedSituation mw_denmSitCon_SitLc(
            template (present) Situation p_sit,
            template (present) Situation p_lc
@@ -285,6 +445,13 @@ module LibItsDenm_Templates {
                linkedCause := p_lc
        }
        
        /**
         * @desc    Receive template for decentrelized situation with specific situation 
         *          and event characteristics
         * @param   p_sit   Situtation
         * @param   p_ec    Event characteristics
         * @see     mw_denmSitCon_Sit
         */
        template DecentralizedSituation mw_denmSitCon_SitEc(
            template (present) Situation p_sit,
            template (present) DecentralizedSituation.eventCharact p_ec
@@ -294,7 +461,12 @@ module LibItsDenm_Templates {
        
        group situationTemplates {
            
            template Situation m_situation(
            /**
             * @desc    Send template for situation
             * @param   p_cause     Cause code
             * @param   p_subCause  Sub-cause code
             */
            template (value) Situation m_situation(
                template (value) DENM_PDU_Descriptions.CauseCode p_cause, 
                template (value) SubCauseCode p_subCause
                ) := {
@@ -302,6 +474,11 @@ module LibItsDenm_Templates {
                subCause := p_subCause
            }
            
            /**
             * @desc    Receive template for situation
             * @param   p_cause     Cause code
             * @param   p_subCause  Sub-cause code
             */
            template Situation mw_situation(
                template (present) DENM_PDU_Descriptions.CauseCode p_cause, 
                template (present) SubCauseCode p_subCause
@@ -310,14 +487,19 @@ module LibItsDenm_Templates {
                subCause := p_subCause
            }
            
            /**
             * @desc 
             */
            template SubCauseCode mw_anySubCause := ?;
            
        } // end group situationTemplates
        
        group eventCharactTemplates {
            
            //TODO check if depending on kind of ITS station
            template DecentralizedSituation.eventCharact m_eventCharact := {
            /**
             * @desc    Default send template for event characteristics
             */
            template (value) DecentralizedSituation.eventCharact m_eventCharact := {
                eventmobility := true,
                causeType := geographicalRegion,
                relevance := difficultDrivingConditions,
@@ -330,7 +512,12 @@ module LibItsDenm_Templates {
    
    group decentralizedSituationLocationTemplates {
        
        template DecentralizedSituationLocation m_denmSitLoc(
        /**
         * @desc    Send template for situation location
         * @param   p_eventPosition Event position
         * @param   p_locationRef   Location reference
         */
        template (value) DecentralizedSituationLocation m_denmSitLoc(
            template (value) DecentralizedSituationLocation.eventPosition p_eventPosition,
            template (value) DecentralizedSituationLocation.locationRef p_locationRef
            ) := {
@@ -338,6 +525,11 @@ module LibItsDenm_Templates {
            locationRef := p_locationRef
        }
        
        /**
         * @desc    Receive template for situation location
         * @param   p_eventPosition Event position
         * @param   p_locationRef   Location reference
         */
        template DecentralizedSituationLocation mw_denmSitLoc (
            template (present) DecentralizedSituationLocation.eventPosition p_eventPosition,
            template (present) DecentralizedSituationLocation.locationRef p_locationRef
@@ -348,7 +540,10 @@ module LibItsDenm_Templates {
        
        group locationRefTemplates {
            
            template DecentralizedSituationLocation.locationRef m_locationRef := {
            /**
             * @desc    Default send template for location reference
             */
            template (value) DecentralizedSituationLocation.locationRef m_locationRef := {
                trace := {
                    traceID := 0,
                    waypoints := {}