LibItsCam_TestSystem.ttcn 4.86 KB
Newer Older
reinaortega's avatar
reinaortega committed
/**
garciay's avatar
garciay committed
 *    @author   ETSI / STF405 / STF449 / STF484 / STF517
garciay's avatar
garciay committed
 *    @version  $Url: https://oldforge.etsi.org/svn/LibIts/tags/20170222_STF527_Final/ttcn/CAM/LibItsCam_TestSystem.ttcn $
 *              $Id: LibItsCam_TestSystem.ttcn 1318 2017-01-26 10:20:53Z filatov $
 *    @desc     Test System module for ITS CAM
garciay's avatar
garciay committed
 *    @copyright   ETSI Copyright Notification
 *                 No part may be reproduced except as authorized by written permission.
 *                 The copyright and the foregoing restriction extend to reproduction in all media.
 *                 All rights reserved.
reinaortega's avatar
reinaortega committed
 *
 */
garciay's avatar
garciay committed
module LibItsCam_TestSystem language "TTCN-3:2010 Real Time and Performance Testing" {
reinaortega's avatar
reinaortega committed
    
    // LibCommon
filatov's avatar
filatov committed
//    import from LibCommon_Time {modulepar all};
//    import from LibCommon_Sync all;
    import from LibCommon_BasicTypesAndValues all;
    import from LibCommon_DataStrings all;
reinaortega's avatar
reinaortega committed
    
garciay's avatar
garciay committed
    // LibIts
reinaortega's avatar
reinaortega committed
    import from CAM_PDU_Descriptions language "ASN.1:1997" all;
filatov's avatar
filatov committed
//    import from DENM_PDU_Descriptions language "ASN.1:1997" all;
reinaortega's avatar
reinaortega committed
    
garciay's avatar
garciay committed
    // LibItsCommon
    import from LibItsCommon_TestSystem all;
    import from LibItsCommon_TypesAndValues all;    
garciay's avatar
garciay committed
    
    // LibItsCam
    import from LibItsCam_TypesAndValues all;
    
reinaortega's avatar
reinaortega committed
    group portDefinitions {
    
        /**
         * @desc Adapter control port
         */
        type port AdapterControlPort message {
            out
                AcGnssPrimitive, AcSecPrimitive;
                AdapterControlResults;
        } // end AdapterControlPort
        
reinaortega's avatar
reinaortega committed
        /**
         * @desc Upper Tester port
         */
        type port UpperTesterPort message {
            out 
garciay's avatar
garciay committed
                UtCamInitialize, UtCamTrigger, UtCamChangePosition, UtActivatePositionTime, UtDeactivatePositionTime;
reinaortega's avatar
reinaortega committed
            in 
garciay's avatar
garciay committed
                UtCamResults, UtCamEventInd;
reinaortega's avatar
reinaortega committed
        } // end UpperTesterPort
        
    } // end portDefinitions

    group interfacePorts {

        group facilityPorts {
            
            group fa1Ports {
    
                /**
                 * @desc FA1 CAM Port (CAM/BTP/GeoNet/RadioNetwork) 
reinaortega's avatar
reinaortega committed
                 */
                type port CamPort message {
                    in CamInd;
                    out CamReq;
                } // End of port CamPort
                
            } // end fa1Ports
                
        } // End of group facilityPorts
    
    } // End of group interfacePorts
        
    group componentDefinitions {

        /**
         * @desc ITS System Adapter
         */
        type component ItsCamSystem {
            
            port UpperTesterPort utPort;
            port AdapterControlPort acPort;
reinaortega's avatar
reinaortega committed
            
            // FA1 ports
            port CamPort camPort;

        } // end component ItsAdapter
        
    } // End of group componentDefinitions
    
    /**
     * @desc Test component for ITS Facility layer 
     */
    type component ItsCam extends ItsBaseComponent {

        port UpperTesterPort utPort;
        port AdapterControlPort acPort;
reinaortega's avatar
reinaortega committed
        
        // FA1 ports
        port CamPort camPort;
        //timers
        
        //component variables
garciay's avatar
garciay committed
        var CamInd vc_camMsg;
        
reinaortega's avatar
reinaortega committed
        //default
        var default vc_default := null;
        
        //global variables
        var boolean vc_camReceived := false;

        var UtCamEventIndList vc_utEvents := {};
reinaortega's avatar
reinaortega committed
        
garciay's avatar
garciay committed
        var boolean vc_utDefaultActive := true;
        var boolean vc_camDefaultActive := true;
        
reinaortega's avatar
reinaortega committed
    } // End of component ItsCam
    
    group facilityPrimitives {
            
        group fa1Primitives {
            
            /**
             * @desc FA1 CAM Indication Primitive 
             */
            type record CamInd {
Yann Garcia's avatar
Yann Garcia committed
                UInt64      recvTime,
                UInt8       gnNextHeader optional,
                UInt8       gnHeaderType optional,
                UInt8       gnHeaderSubtype optional,
                UInt32      gnLifetime optional,
                UInt8       gnTrafficClass optional,
                UInt16      btpDestinationPort optional,
                UInt16      btpInfo optional,
                Bit256      ssp optional,
reinaortega's avatar
reinaortega committed
            }
            with {
                 encode (msgIn) "PER"
reinaortega's avatar
reinaortega committed
            }
                
            /**
             * @desc FA1 CAM Request Primitive 
             */
            type record CamReq {
reinaortega's avatar
reinaortega committed
            }
            with {
                 encode (msgOut) "PER"
reinaortega's avatar
reinaortega committed
            }
            
        } // end fa1Primitives
            
    } // End of group facilityPrimitives
    with {
garciay's avatar
garciay committed
        variant ""
reinaortega's avatar
reinaortega committed
        encode "LibIts_Interface"
    } // end interfacePrimitives    
     
} // End of module LibItsCam_TestSystem