/// <summary> /// Journey state - on C4Evo, when Ignition is ON – On C4Dongle, when RPM is not available (No RPM or C4Dongle offline) /// true if Journey on, false if not /// </summary> public static bool? GetJourneyState(ITracking trackingData) { if (trackingData == null) throw new NullReferenceException("ITracking is not initialize"); if (!trackingData.ContainsField(Easyconnect.MDI_JOURNEY_STATE.Key)) return null; return trackingData.GetFieldAsInt(Easyconnect.MDI_JOURNEY_STATE.Key) == 0 ? false : true; }
/// <summary> /// Time since the beginning of the Journey while vehicle is stopped in milliseconds /// (No movement detected by accelerometers during acceleroMvtDetector.no_movement_threshold) /// </summary> public static int? GetIdleJourney(ITracking trackingData) { if (trackingData == null) throw new NullReferenceException("ITracking is not initialize"); if (!trackingData.ContainsField(Easyconnect.MDI_IDLE_JOURNEY.Key)) return null; return trackingData.GetFieldAsInt(Easyconnect.MDI_IDLE_JOURNEY.Key); }
/// <summary> /// X-axis value at the begin of pattern detection /// </summary> /// <returns>mG</returns> public static int? GetAccXPeak(ITracking trackingData) { if (trackingData == null) throw new NullReferenceException("ITracking is not initialize"); if (!trackingData.ContainsField(DriverBehavior.BEHAVE_ACC_X_PEAK.Key)) return null; return trackingData.GetFieldAsInt(DriverBehavior.BEHAVE_ACC_X_PEAK.Key); }
/// <summary> /// Gives speed directly computed from the OBD stack (km/h) /// </summary> public static int? GetObdSpeed(ITracking trackingData) { if (trackingData == null) throw new NullReferenceException("ITracking is not initialize"); if (!trackingData.ContainsField(CarDiagnostic.MDI_OBD_SPEED.Key)) return null; return trackingData.GetFieldAsInt(CarDiagnostic.MDI_OBD_SPEED.Key); }
/// <summary> /// Journey state - on C4Evo, when Ignition is ON – On C4Dongle, when RPM is not available (No RPM or C4Dongle offline) /// true if Journey on, false if not /// </summary> public static bool?GetJourneyState(ITracking trackingData) { if (trackingData == null) { throw new NullReferenceException("ITracking is not initialize"); } if (!trackingData.ContainsField(Easyconnect.MDI_JOURNEY_STATE.Key)) { return(null); } return(trackingData.GetFieldAsInt(Easyconnect.MDI_JOURNEY_STATE.Key) == 0 ? false : true); }
/// <summary> /// Overspeed state – When GPS speed is higher than overspeed.speedThreshold /// (in kilometers) during overspeed.timeThreshold (in milliseconds). /// true if overspeed, false if not /// </summary> public static bool?GetOverspeed(ITracking trackingData) { if (trackingData == null) { throw new NullReferenceException("ITracking is not initialize"); } if (!trackingData.ContainsField(Easyconnect.MDI_OVERSPEED.Key)) { return(null); } return(trackingData.GetFieldAsInt(Easyconnect.MDI_OVERSPEED.Key) == 0 ? false : true); }
/// <summary> /// Number of overspeeds since the beginning of the Journey /// </summary> public static int?GetOverspeedCounter(ITracking trackingData) { if (trackingData == null) { throw new NullReferenceException("ITracking is not initialize"); } if (!trackingData.ContainsField(Easyconnect.MDI_OVERSPEED_COUNTER.Key)) { return(null); } return(trackingData.GetFieldAsInt(Easyconnect.MDI_OVERSPEED_COUNTER.Key)); }
/// <summary> /// Journey driving time in milliseconds /// </summary> public static int?GetDrivingJourney(ITracking trackingData) { if (trackingData == null) { throw new NullReferenceException("ITracking is not initialize"); } if (!trackingData.ContainsField(Easyconnect.MDI_DRIVING_JOURNEY.Key)) { return(null); } return(trackingData.GetFieldAsInt(Easyconnect.MDI_DRIVING_JOURNEY.Key)); }
/// <summary> /// Gives engine round per minute directly retrieved from the OBD stack (rpm) /// </summary> public static int?GetObdRpm(ITracking trackingData) { if (trackingData == null) { throw new NullReferenceException("ITracking is not initialize"); } if (!trackingData.ContainsField(CarDiagnostic.MDI_OBD_RPM.Key)) { return(null); } return(trackingData.GetFieldAsInt(CarDiagnostic.MDI_OBD_RPM.Key)); }
/// <summary> /// Z-axis value at the begin of pattern detection /// </summary> /// <returns>mG</returns> public static int?GetAccZPeak(ITracking trackingData) { if (trackingData == null) { throw new NullReferenceException("ITracking is not initialize"); } if (!trackingData.ContainsField(DriverBehavior.BEHAVE_ACC_Z_PEAK.Key)) { return(null); } return(trackingData.GetFieldAsInt(DriverBehavior.BEHAVE_ACC_Z_PEAK.Key)); }
/// <summary> /// unique event id per session (reset at reboot) /// </summary> public static int?GetUniqueID(ITracking trackingData) { if (trackingData == null) { throw new NullReferenceException("ITracking is not initialize"); } if (!trackingData.ContainsField(DriverBehavior.BEHAVE_UNIQUE_ID.Key)) { return(null); } return(trackingData.GetFieldAsInt(DriverBehavior.BEHAVE_UNIQUE_ID.Key)); }
/// <summary> /// Speed over ground /// </summary> /// <returns>Knots * 10^3</returns> public static int?GetSpeedEnd(ITracking trackingData) { if (trackingData == null) { throw new NullReferenceException("ITracking is not initialize"); } if (!trackingData.ContainsField(DriverBehavior.BEHAVE_GPS_SPEED_END.Key)) { return(null); } return(trackingData.GetFieldAsInt(DriverBehavior.BEHAVE_GPS_SPEED_END.Key)); }
/// <summary> /// Get course of degrees /// </summary> public static double?GetHeadingEnd(ITracking trackingData) { if (trackingData == null) { throw new NullReferenceException("ITracking is not initialize"); } if (!trackingData.ContainsField(DriverBehavior.BEHAVE_GPS_HEADING_END.Key)) { return(null); } return(trackingData.GetFieldAsInt(DriverBehavior.BEHAVE_GPS_HEADING_END.Key) / 1000.0); }
/// <summary> /// Get course of degrees /// </summary> public static double? GetHeadingPeak(ITracking trackingData) { if (trackingData == null) throw new NullReferenceException("ITracking is not initialize"); if (!trackingData.ContainsField(DriverBehavior.BEHAVE_GPS_HEADING_PEAK.Key)) return null; return trackingData.GetFieldAsInt(DriverBehavior.BEHAVE_GPS_HEADING_PEAK.Key) / 1000.0; }
/// <summary> /// Number of overspeeds since the beginning of the Journey /// </summary> public static bool? GetTowAway(ITracking trackingData) { if (trackingData == null) throw new NullReferenceException("ITracking is not initialize"); if (!trackingData.ContainsField(Easyconnect.MDI_TOW_AWAY.Key)) return null; return trackingData.GetFieldAsInt(Easyconnect.MDI_TOW_AWAY.Key) == 0 ? false : true; }
/// <summary> /// unique event id per session (reset at reboot) /// </summary> public static int? GetUniqueID(ITracking trackingData) { if (trackingData == null) throw new NullReferenceException("ITracking is not initialize"); if (!trackingData.ContainsField(DriverBehavior.BEHAVE_UNIQUE_ID.Key)) return null; return trackingData.GetFieldAsInt(DriverBehavior.BEHAVE_UNIQUE_ID.Key); }
/// <summary> /// Speed over ground /// </summary> /// <returns>Knots * 10^3</returns> public static int? GetSpeedEnd(ITracking trackingData) { if (trackingData == null) throw new NullReferenceException("ITracking is not initialize"); if (!trackingData.ContainsField(DriverBehavior.BEHAVE_GPS_SPEED_END.Key)) return null; return trackingData.GetFieldAsInt(DriverBehavior.BEHAVE_GPS_SPEED_END.Key); }
/// <summary> /// Longitude in degrees /// </summary> public static double? GetLongitude(ITracking trackingData) { if (trackingData == null) throw new NullReferenceException("ITracking is not initialize"); if (!trackingData.ContainsField(DriverBehavior.BEHAVE_LONG.Key)) return null; return trackingData.GetFieldAsInt(DriverBehavior.BEHAVE_LONG.Key) / 100000.0; }
/// <summary> /// Number of overspeeds since the beginning of the Journey /// </summary> public static int? GetOverspeedCounter(ITracking trackingData) { if (trackingData == null) throw new NullReferenceException("ITracking is not initialize"); if (!trackingData.ContainsField(Easyconnect.MDI_OVERSPEED_COUNTER.Key)) return null; return trackingData.GetFieldAsInt(Easyconnect.MDI_OVERSPEED_COUNTER.Key); }