LibItsCommon_TypesAndValues.ttcn 4.56 KB
Newer Older
/**
 *  @author      ETSI / STF405 / STF449
 *  @version     $URL$
 *               $Id$
 *  @desc        Module containing common types and values for ITS Protocols
 *
 */
module LibItsCommon_TypesAndValues {
    
    import from ITS_Container language "ASN.1:1997" all;

    group utPrimitives {
        
        /**
         * @desc Upper Tester message to initialize DENM IUT 
         */
        type record UtInitialize {
            // empty on purpose
        }
        
        /**
         * @desc Upper Tester result message of the initialization request 
         */
        type boolean UtInitializeResult;
        
        /**
         * @desc Upper Tester message to change the position of IUT. Values a relatives 
         */
        type record UtChangePosition {
            integer latitude,
            integer longitude,
            integer elevation
        }
        
        /**
         * @desc Upper Tester result message of change position request of IUT 
         */
        type boolean UtChangePositionResult;
    }
    with {
        encode "UpperTester"
    }
    
    group commonConstants {
        
        const AltitudeValue c_seaLevel := 0; 
        const AltitudeValue c_oneMeter := 1; 
        
        const SemiAxisLength c_semiAxisLengthOneCentimeter := 1; 
        const SemiAxisLength c_semiAxisLengthUnavailable := 4095; 

        // DENM
        const HeadingConfidence c_headingConfidence_withinZeroPointOneDegree := 1;         
        const HeadingValue c_headingValue_wgs84North := 0;
        
        // CAM
        const AltitudeValue c_altitudeValue_seaLevel := 0;
        
        const StationType c_stationType_passengerCar := 5;
        
        const LongitudinalAccelerationValue c_longitudinalAccelerationValue_unavailable := 161;
        
        const AccelerationConfidence c_accelerationConfidence_unavailable := 102;
        
        const CurvatureValue c_curvatureValue_straight := 0;
        
        const YawRateValue c_yawRateValue_straight := 0;
        
        const ExteriorLights c_exteriorLights_daytimeRunningLightsOn := '00000100'B;
        
        
        
        /**
         * @remark check this values
         */
        group causeCodes {
            
            const CauseCodeType c_causeReserved := 0; 
            const CauseCodeType c_causeTrafficCondition := 1; 
            const CauseCodeType c_causeAccident := 2; 
            const CauseCodeType c_causeRoadworks := 3; 
            const CauseCodeType c_causeAdverseWeatherCondition_Adhesion := 6; 
            const CauseCodeType c_causeHazardousLocation_SurfaceCondition := 9; 
            const CauseCodeType c_causeHazardousLocation_ObstacleOnTheRoad := 10; 
            const CauseCodeType c_causeHazardousLocation_AnimalOnTheRoad := 11; 
            const CauseCodeType c_causeHumanPresenceOnTheRoad := 12; 
            const CauseCodeType c_causeWrongWayDriving := 14; 
            const CauseCodeType c_causeRescueAndRecoveryWorkInProgress := 15; 
            const CauseCodeType c_causeAdverseWeatherCondition_ExtremeWeatherCondition := 17; 
            const CauseCodeType c_causeAdverseWeatherCondition_Visibility := 18; 
            const CauseCodeType c_causeAdverseWeatherCondition_Precipitation := 19; 
            const CauseCodeType c_causeSlowVehicle := 26; 
            const CauseCodeType c_causeDangerousEndOfQueue := 27; 
            const CauseCodeType c_causeVehicleBreakdown := 91; 
            const CauseCodeType c_causePostCrash := 92; 
            const CauseCodeType c_causeHumanProblem := 93; 
            const CauseCodeType c_causeStationaryVehicle := 94; 
            const CauseCodeType c_causeEmergencyVehicleApproaching := 95; 
            const CauseCodeType c_causeHazardousLocation_DangerousCurve := 96; 
            const CauseCodeType c_causeCollisionRisk := 97; 
            const CauseCodeType c_causeSignalViolation := 98; 
            const CauseCodeType c_causeDangerousSituation := 99; 
            
        } // end group causeCodes
        
        /**
         * @remark check this values
         */
        group subCauseCodes {
            
            const SubCauseCodeType c_subCauseCode_Unavailable := 0; 
            
            const VehicleBreakdownSubCauseCode c_vehicleBreakDownSubCauseCode_engineProblem := 3;
            const SlowVehicleSubCauseCode c_slowVehicleSubCauseCode_convoy := 5; 
            
        } // end group subCauseCodes
        
        
    } // end commonConstants
    
}
with {
    encode "LibItsCommon"
}