Commit 55ffa7df authored by fischer's avatar fischer
Browse files

upper tester function defined

Due to asn.1 errors commit with errors
parent 724a4865
Loading
Loading
Loading
Loading
+382 −1
Original line number Diff line number Diff line
@@ -11,6 +11,8 @@ module LibItsCam_Functions {
    import from LibIts_TestSystem all;
    import from LibIts_Interface all; 
	import from LibItsCam_Templates all;
	import from LibItsCam_Pixits all;
    import from LibItsCam_TypesAndValues all;
	import from CAM_PDU_Descriptions language "ASN.1:1997" all;
	import from DENM_PDU_Descriptions language "ASN.1:1997" all;	
 
@@ -172,6 +174,300 @@ group otherFunctions {

} // end of otherFunctions

group upperTester {
    
	/** @desc	upper tester function to change current heading (absolute)
	*
	* @param 	p_heading<br>
	* @return 	FncRetCode<br>
	*/
	function f_changeHeading( Direction p_heading ) runs on ItsFa return FncRetCode {

		//Variables
        var FncRetCode v_ret := e_success;
            
        //TODO define external function
		log("**** f_changeHeading: INFO: OK  ****");
            
        return v_ret;
        
    } // end function f_changeHeading
    
	/** @desc	upper tester function to change current position (meter)
	*
	* @param 	p_position<br>
	* @return 	FncRetCode<br>
	*/
	function f_changePosition( integer p_position ) runs on ItsFa return FncRetCode {

		//Variables
        var FncRetCode v_ret := e_success;
            
        //TODO define external function
		log("**** f_changePosition: INFO: OK  ****");
            
        return v_ret;
        
    } // end function f_changePosition
    
	/** @desc	upper tester function to change speed (m/S)
	*
	* @param 	p_speed<br>
	* @return 	FncRetCode<br>
	*/
	function f_changeSpeed( Speed p_speed ) runs on ItsFa return FncRetCode {

		//Variables
        var FncRetCode v_ret := e_success;
            
        //TODO define external function
		log("**** f_changeSpeed: INFO: OK  ****");
            
        return v_ret;
        
    } // end function f_changeSpeed
    
	/** @desc	upper tester function to set the crash signal (activated/deactivated)
	*
	* @param 	p_crashStatus<br>
	* @return 	FncRetCode<br>
	*/
	function f_setCrashSignal( CrashStatus p_crashStatus ) runs on ItsFa return FncRetCode {

		//Variables
        var FncRetCode v_ret := e_success;
            
        //TODO define external function
		log("**** f_setCrashSignal: INFO: OK  ****");
            
        return v_ret;
        
    } // end function f_setCrashSignal
    
	/** @desc	upper tester function to set the dangerous goods status (Good type)
	*			p_goodType = 0 if no dangerous goods are transported
	* @param 	p_goodType<br>
	* @return 	FncRetCode<br>
	*/
	function f_setDangerousGoodsStatus( DangerousGoods p_goodType ) runs on ItsFa return FncRetCode {

		//Variables
        var FncRetCode v_ret := e_success;
            
        //TODO define external function
		log("**** f_setDangerousGoodsStatus: INFO: OK  ****");
            
        return v_ret;
        
    } // end function f_setDangerousGoodsStatus
    
	/** 
	*	@desc	upper tester function to set the doors status			
	* 	@param 	p_doorStatus<br>
	* 	@return 	FncRetCode<br>
	*/
	function f_setDoorStatus( DoorOpen p_doorStatus ) runs on ItsFa return FncRetCode {

		//Variables
        var FncRetCode v_ret := e_success;
            
        //TODO define external function
		log("**** f_setDoorStatus: INFO: OK  ****");
            
        return v_ret;
        
    } // end function f_setDoorStatus
    
	/** @desc	upper tester function to set the distance to stop line
	*			
	* @param 	p_distance<br>
	* @return 	FncRetCode<br>
	*/
	function f_setDistanceToStopLine( Distance p_distance ) runs on ItsFa return FncRetCode {

		//Variables
        var FncRetCode v_ret := e_success;
            
        //TODO define external function
		log("**** f_setDistanceToStopLine: INFO: OK  ****");
            
        return v_ret;
        
    } // end function f_setDistanceToStopLine
    
	/** @desc	upper tester function to set the turn advice
	*			
	* @param 	p_turnAdvice<br>
	* @return 	FncRetCode<br>
	*/
	function f_setTurnAdvice( TurnAdvice p_turnAdvice ) runs on ItsFa return FncRetCode {

		//Variables
        var FncRetCode v_ret := e_success;
            
        //TODO define external function
		log("**** f_setTurnAdvice: INFO: OK  ****");
            
        return v_ret;
        
    } // end function f_setTurnAdvice
    
	/** @desc	upper tester function to set the curvature change
	*			
	* @param 	p_curvature<br>
	* @return 	FncRetCode<br>
	*/
	function f_setCurvatureChange( Curvature p_curvature ) runs on ItsFa return FncRetCode {

		//Variables
        var FncRetCode v_ret := e_success;
            
        //TODO define external function
		log("**** f_setCurvatureChange: INFO: OK  ****");
            
        return v_ret;
        
    } // end function f_setCurvatureChange
    
	/** @desc	upper tester function to set the Occupancy
	*			
	* @param 	p_occupancy<br>
	* @return 	FncRetCode<br>
	*/
	function f_setOccupancy( Occupancy p_occupancy ) runs on ItsFa return FncRetCode {

		//Variables
        var FncRetCode v_ret := e_success;
            
        //TODO define external function
		log("**** f_setOccupancy: INFO: OK  ****");
            
        return v_ret;
        
    } // end function f_setOccupancy
    
	/** @desc	upper tester function to set the light bar status
	*			
	* @param 	p_status<br>
	* @return 	FncRetCode<br>
	*/
	function f_setLightBarStatus( SimpleSystemState p_status ) runs on ItsFa return FncRetCode {

		//Variables
        var FncRetCode v_ret := e_success;
            
        //TODO define external function
		log("**** f_setLightBarStatus: INFO: OK  ****");
            
        return v_ret;
        
    } // end function f_setLightBarStatus
    
	/** @desc	upper tester function to set the sirene status
	*			
	* @param 	p_status<br>
	* @return 	FncRetCode<br>
	*/
	function f_setSireneStatus( SimpleSystemState p_status ) runs on ItsFa return FncRetCode {

		//Variables
        var FncRetCode v_ret := e_success;
            
        //TODO define external function
		log("**** f_setSireneStatus: INFO: OK  ****");
            
        return v_ret;
        
    } // end function f_setSireneStatus
    
	/** @desc	upper tester function to set the traffic light priority
	*			
	* @param 	p_priority<br>
	* @return 	FncRetCode<br>
	*/
	function f_setTrafficLightPriority( Priority p_priority ) runs on ItsFa return FncRetCode {

		//Variables
        var FncRetCode v_ret := e_success;
            
        //TODO define external function
		log("**** f_setTrafficLightPriority: INFO: OK  ****");
            
        return v_ret;
        
    } // end function f_setTrafficLightPriority
    
    
	/** 
	*	@desc	upper tester function to set the Schedule Deviation			
	* 	@param 	p_scheduleDeviation<br>
	* 	@return 	FncRetCode<br>
	*/
	function f_setScheduleDeviation( ScheduleDeviation p_scheduleDeviation ) runs on ItsFa return FncRetCode {

		//Variables
        var FncRetCode v_ret := e_success;
            
        //TODO define external function
		log("**** f_setScheduleDeviation: INFO: OK  ****");
            
        return v_ret;
        
    } // end function f_setScheduleDeviation
    
	/** 
	*	@desc	upper tester function to set the PT Line Description			
	* 	@param 	p_pTLineDescription<br>
	* 	@return 	FncRetCode<br>
	*/
	function f_setPTLineDescription( PTLineDescription p_pTLineDescription ) runs on ItsFa return FncRetCode {

		//Variables
        var FncRetCode v_ret := e_success;
            
        //TODO define external function
		log("**** f_setPTLineDescription: INFO: OK  ****");
            
        return v_ret;
        
    } // end function f_setPTLineDescription
    
	/** 
	*	@desc	upper tester function to set the exterior lights status			
	* 	@param 	p_exteriorLightsStatus<br>
	* 	@return 	FncRetCode<br>
	*/
	function f_setExteriorLightsStatus( ExteriorLights p_exteriorLightsStatus ) runs on ItsFa return FncRetCode {

		//Variables
        var FncRetCode v_ret := e_success;
            
        //TODO define external function
		log("**** f_setExteriorLightsStatus: INFO: OK  ****");
            
        return v_ret;
        
    } // end function f_setExteriorLightsStatus
    
	/** 
	*	@desc	upper tester function to chnage the reference position (moving)			
	* 	@param 	none<br>
	* 	@return 	FncRetCode<br>
	*/
	function f_changeReferencePosition() runs on ItsFa return FncRetCode {

		//Variables
        var FncRetCode v_ret := e_success;
            
        //TODO define external function
		log("**** f_changeReferencePosition: INFO: OK  ****");
            
        return v_ret;
        
    } // end function f_changeReferencePosition
    
} // end of group upperTester
    
group externalFunctions {
    
	/**
@@ -184,7 +480,6 @@ group externalFunctions {
	/** @desc	Wrapper function for fx_generateTime
	 *			
	 * @see		xf_generateTime
	 * @see		FncRetCode
	 *
	*/
	function f_generateTime()
@@ -206,6 +501,92 @@ group externalFunctions {
		} 
	} // end function f_generateTime
	

	/**
	/** @desc	function to get the PT Line Description
	 *			currently return the PIXIT value
	 * @see		PX_PTLINE_COURSE, PX_PTLINE_REF, PX_PTLINE_ROUTE
	 *
	*/
	function f_getPTLineDescription()
	return PTLineDescription {
		//Variables
		var PTLineDescription v_pTLineDescription := { "a", "b", "c" };
		
        v_pTLineDescription :=  { PX_PTLINE_COURSE, PX_PTLINE_REF, PX_PTLINE_ROUTE };   // PIXIT used!
		log("**** f_getPTLineDescription: INFO: OK  ****");
        return v_pTLineDescription ;

	} // end function f_getPTLineDescription
	
	/**
	/** @desc	function to get the stationID
	 *			currently return the PIXIT value
	 * @see		PX_TESTER_STATION_ID
	 *
	*/
	function f_getStationID()
	return StationID {
		//Variables
		var StationID v_stationID := 0;
		
        v_stationID :=  PX_TESTER_STATION_ID;   // PIXIT used!
		log("**** f_getStationID: INFO: OK - stationID = " & int2str(v_stationID) & " ****");
        return v_stationID ;

	} // end function fx_getStationID
	
	/**
	*	@desc 	get the stationCharacteristics of the tester
	* @return 	CoopAwareness.stationCharacteristics<br>
	*/
	external function fx_getStationCharacteristics()
    return CoopAwareness.stationCharacteristics;

	/**
	/** @desc	Wrapper function for fx_getStationCharacteristics
	 *			
	 * @see		fx_getStationCharacteristics
	 *
	*/
	function f_getStationCharacteristics()
	return CoopAwareness.stationCharacteristics {
		//Variables
		var CoopAwareness.stationCharacteristics v_stationCharacteristics := { true, true, true };
		
        v_stationCharacteristics := fx_getStationCharacteristics();
		log("**** f_getStationCharacteristics: INFO: OK - stationCharacteristics received ****");
        return v_stationCharacteristics ;

	} // end function f_getStationCharacteristics
	

	/**
	*	@desc 	get the ReferencePosition of the tester
	* @return 	ReferencePosition<br>
	*/
	external function fx_getReferencePosition()
    return ReferencePosition;

	/**
	/** @desc	Wrapper function for fx_getReferencePosition
	 *			
	 * @see		fx_getReferencePosition
	 *
	*/
	function f_getReferencePosition()
	return ReferencePosition {
		//Variables
		var ReferencePosition v_referencePosition;
		
        v_referencePosition := fx_getReferencePosition();
		log("**** f_getReferencePosition: INFO: OK - referencePosition received ****");
        return v_referencePosition ;

	} // end function f_getReferencePosition
	
	

} // end of externalFunctions

} // end LibItsCam_Functions
 No newline at end of file
+16 −0
Original line number Diff line number Diff line
@@ -35,6 +35,22 @@ module LibItsCam_Pixits {
         */
        modulepar Elevation PX_ELEVATION;
           	        
        /**
         * @desc IUT Course of Journey (PT Line Description)
         */
        modulepar CourseOfJourney PX_PTLINE_COURSE;
           	        
        /**
         * @desc IUT Line Reference (PT Line Description)
         */
        modulepar LineRef PX_PTLINE_REF;
           	        
        /**
         * @desc IUT Route Reference (PT Line Description)
         */
        modulepar RouteRef PX_PTLINE_ROUTE;
           	        

    } // end of group cam_Pixits
    
} // end of module ItsCam_Pixits
+0 −11
Original line number Diff line number Diff line
@@ -103,17 +103,6 @@ module LibItsCam_Templates {
		}
	};
		
    template InvalidCamPdu m_camMsg_IRS_invalid(TimeStamp p_generationTime) := {
        header := {
			protocolVersion := 0,
			messageID := 0,
			generationTime := p_generationTime },
        cam := {
			stationID := PX_TESTER_STATION_ID,
			stationCharacteristics := {false, false, false}
		}
	};

	template CamPdu mw_camMsg_basicVehicle modifies mw_camMsg_anyVehicle := {
		cam := {
			stationCharacteristics := {true, false, true},
+3 −0
Original line number Diff line number Diff line
@@ -15,6 +15,9 @@ module LibItsCam_TypesAndValues {

group camValues {
    
  const CrashStatus c_activated := true;
  const CrashStatus c_deactivated := false;
	    
  const AccelerationControl c_acIdle := '000000'B; 
  const AccelerationControl c_cruiseControl := '001000'B; 
  const AccelerationControl c_acc := '000100'B;