@class MNTrace, NSString, MNTracePreparedStatement, NSDate, NSMapTable; @interface MNTraceRecorder : NSObject <MNLocationRecorder> { NSString *_tracePath; NSDate *_recordingCompassHeadingLastDate; BOOL _corrupted; BOOL _closed; BOOL _created; MNTracePreparedStatement *_recordEnvironmentInfoStatement; MNTracePreparedStatement *_recordDebugSettingStatement; MNTracePreparedStatement *_recordAudioSettingStatement; MNTracePreparedStatement *_recordStylesheetStatement; MNTracePreparedStatement *_recordLocationStatement; MNTracePreparedStatement *_recordLocationErrorStatement; MNTracePreparedStatement *_recordMatchInfoStatement; MNTracePreparedStatement *_recordDirectionsStatement; MNTracePreparedStatement *_recordETAUStatement; MNTracePreparedStatement *_recordRealtimeTransitUpdateRequest; MNTracePreparedStatement *_recordRealtimeTransitUpdateResponse; MNTracePreparedStatement *_recordRealtimeTransitUpdateResponseError; MNTracePreparedStatement *_recordVehicleSpeed; MNTracePreparedStatement *_recordVehicleHeading; MNTracePreparedStatement *_recordMotionData; MNTracePreparedStatement *_recordCompassHeading; MNTracePreparedStatement *_recordVirtualGarageVehicleState; MNTracePreparedStatement *_recordNavigationEvent; MNTracePreparedStatement *_recordNavigationUpdate; MNTracePreparedStatement *_updateNavigationEventLocationID; unsigned long long _routeRequestCount; unsigned long long _etaTrafficUpdateCount; NSMapTable *_eventsPendingLocationReference; id /* block */ _errorHandler; BOOL _lastPauseSpokenAudio; long long _lastVoiceGuidanceSetting; unsigned long long _lastLaneEventHash; } @property (readonly, nonatomic) MNTrace *trace; @property (retain, nonatomic) NSDate *recordingStartTime; @property (readonly) unsigned long long hash; @property (readonly) Class superclass; @property (readonly, copy) NSString *description; @property (readonly, copy) NSString *debugDescription; - (void)beginTransaction; - (id)init; - (void)endTransaction; - (void).cxx_destruct; - (void)_prepareStatements; - (void)setIsSimulation:(BOOL)a0; - (void)recordVehicleHeading:(double)a0 timestamp:(id)a1; - (void)recordCompassHeading:(double)a0 magneticHeading:(double)a1 accuracy:(double)a2 timestamp:(id)a3; - (void)recordError:(id)a0; - (void)recordInitialCourse:(double)a0; - (void)recordLocation:(id)a0 correctedLocation:(id)a1; - (void)recordLocationUpdatePause; - (void)recordLocationUpdateResume; - (void)recordVehicleSpeed:(double)a0 timestamp:(id)a1; - (void)_dispatchWrite:(id /* block */)a0; - (void)saveTraceWithCompletionHandler:(id /* block */)a0; - (void)setRouteGenius:(BOOL)a0; - (void)_closeTraceDB; - (void)_executeStatementForQuery:(id)a0 handler:(id /* block */)a1; - (void)_initializeTraceDB; - (BOOL)_isTracePathValid:(id)a0; - (void)_logError:(id)a0 resultCode:(int)a1; - (void)_logSqliteErrorWithResult:(int)a0 file:(const char *)a1 line:(int)a2; - (void)_recordLocationEvent:(long long)a0 recordingTimestamp:(double)a1 coordinate:(struct CLLocationCoordinate2D { double x0; double x1; })a2 rawCoordinate:(struct CLLocationCoordinate2D { double x0; double x1; })a3 timestamp:(double)a4 horizontalAccuracy:(double)a5 verticalAccuracy:(double)a6 altitude:(double)a7 speed:(double)a8 speedAccuracy:(double)a9 course:(double)a10 rawCourse:(double)a11 type:(int)a12 courseAccuracy:(double)a13 correctedCoordinate:(struct CLLocationCoordinate2D { double x0; double x1; })a14 correctedCourse:(double)a15 matchType:(int)a16 activeTransportType:(int)a17 matchInfo:(id)a18 correctedLocation:(id)a19 speedLimit:(int)a20 shieldText:(id)a21 shieldType:(int)a22; - (void)_recordLocationEvent:(long long)a0 recordingTimestamp:(double)a1 location:(id)a2 correctedLocation:(id)a3; - (void)_recordLocationMatchInfoOnWriteQueue:(id)a0 forLocationID:(int)a1; - (void)_recordNavigationUpdate:(long long)a0 parameters:(id)a1; - (void)_updateForExistingTrace; - (void)_updateNavigationEventsWithLocationReference:(id)a0; - (void)recordAudioSetting:(BOOL)a0 voiceGuidance:(long long)a1; - (void)recordDebugSetting:(id)a0 settingValue:(id)a1; - (void)recordDepartWaypoint:(id)a0 legIndex:(unsigned long long)a1 departureReason:(unsigned long long)a2; - (void)recordDirectionsRequest:(id)a0 response:(id)a1 error:(id)a2 waypoints:(id)a3 selectedRouteIndex:(unsigned long long)a4 requestTimestamp:(double)a5 responseTimestamp:(double)a6; - (void)recordETAURequest:(id)a0 response:(id)a1 error:(id)a2 destinationName:(id)a3 requestTimestamp:(double)a4 responseTimestamp:(double)a5; - (void)recordEnvironmentInfo:(id)a0 value:(id)a1; - (void)recordLocation:(id)a0 rawLocation:(id)a1; - (void)recordLocation:(id)a0 rawLocation:(id)a1 timestamp:(double)a2; - (void)recordLocation:(id)a0 timestamp:(double)a1; - (void)recordMiscInfo:(id)a0 value:(id)a1; - (void)recordMotionUpdate:(unsigned long long)a0 exitType:(unsigned long long)a1 confidence:(unsigned long long)a2; - (void)recordNavigationEvent:(long long)a0 forLocation:(id)a1 description:(id)a2; - (void)recordRouteChangeWithIndex:(unsigned long long)a0 directionsResponseID:(id)a1 etauResponseID:(id)a2 rerouteReason:(unsigned long long)a3; - (void)recordSimulatedCoordinate:(struct CLLocationCoordinate2D { double x0; double x1; })a0 course:(double)a1 altitude:(double)a2 speed:(double)a3 timestamp:(double)a4 activeTransportType:(int)a5; - (void)recordStylesheet:(id)a0 data:(id)a1; - (void)recordTransitUpdateError:(id)a0; - (void)recordTransitUpdateRequest:(id)a0 withTimestamp:(double)a1; - (void)recordTransitUpdateResponse:(id)a0; - (void)recordVirtualGarageVehicleState:(id)a0 isDifferentVehicle:(BOOL)a1; - (void)resetLocationsForSimulation; - (void)saveTraceSynchronously; - (void)startWritingTraceToPath:(id)a0 withErrorHandler:(id /* block */)a1; - (double)timeSinceRecordingBegan; @end