public ConfirmCameraSyncWindow(UserContainer admin, CameraDetails camera) { InitializeComponent(); var driver = Simulator.Instance.Drivers.FirstOrDefault(d => d.Driver.CarNumberRaw == camera.CarNumber); var sync = new CameraSync(admin, driver, camera); this.DataContext = sync; }
public static SyncCommand ProposeSyncCameras(List<User> admins, CameraDetails camera) { var command = new SyncCommand(SyncCommand.CommandTypes.ProposeSyncCameras); command.Data = new { Users = admins, CameraDetails = camera, Force = false, ProposingAdmin = SyncManager.Instance.User.CustId }; return command; }
public static SyncCommand ProposeSyncCameras(List <User> admins, CameraDetails camera) { var command = new SyncCommand(SyncCommand.CommandTypes.ProposeSyncCameras); command.Data = new { Users = admins, CameraDetails = camera, Force = false, ProposingAdmin = SyncManager.Instance.User.CustId }; return(command); }
public CameraSync(UserContainer admin, DriverContainer driver, CameraDetails camera) { this.Admin = admin; this.Driver = driver; this.Camera = camera; if (camera.ReplayChangeType == CameraDetails.ReplayChangeTypes.SetReplayFrame) { var seconds = Simulator.Instance.Telemetry.SessionTime.Value - (camera.Frame/60f); var time = TimeSpan.FromSeconds(seconds); this.SessionTime = string.Format("{0:0}:{1:00}:{2:00}", time.Hours, time.Minutes, time.Seconds); } else if (camera.ReplayChangeType == CameraDetails.ReplayChangeTypes.SetSessionTime) { var time = TimeSpan.FromSeconds(camera.SessionTime); this.SessionTime = string.Format("{0:0}:{1:00}:{2:00}", time.Hours, time.Minutes, time.Seconds); } }
public static void ChangeCamera(CameraDetails camera) { if (!Simulator.Instance.Sdk.IsConnected) return; if (Connection.Instance.IsSimulated) return; var driver = GetFollowedDriver(); if (driver == null) return; if (camera.CarNumber < 0) camera.CarNumber = driver.Driver.CarNumberRaw; // Change camera Simulator.Instance.Sdk.Sdk.BroadcastMessage(BroadcastMessageTypes.CamSwitchNum, camera.CarNumber, -1); if (camera.ReplayChangeType == CameraDetails.ReplayChangeTypes.SetReplayFrame) { ChangeReplayFrame(camera.Frame); } else if (camera.ReplayChangeType == CameraDetails.ReplayChangeTypes.SetSessionTime) { ChangeReplayTime(camera.SessionTime); } }