public Presenter(PresenterSettings presenterSettings) { try { _presenterSettings = presenterSettings; _videoCapture = _presenterSettings.VideoCaptureControl; _audioStreamManager = new AudioStreamManager(_presenterSettings.AudioTimerInterval, _presenterSettings.OnAudioCaptureAvailable); // initialize the image capture size if (_videoCapture != null) { _videoCapture.ImageHeight = presenterSettings.VideoScreenSize.Height; _videoCapture.ImageWidth = presenterSettings.VideoScreenSize.Width; _firstTimeCapturing = true; // bind the image captured event _videoCapture.ImageCaptured += new Delegates.WebCamEventHandler(presenterSettings.OnVideoImageCaptured); } _screenCaptureTool = new ScreenCaptureTool(_presenterSettings.RemotingTimerInterval, _presenterSettings.OnRemotingImageCaptured); } catch (Exception ex) { Tools.Instance.Logger.LogError(ex.ToString()); } }
public static IPresenter Instance(PresenterSettings presenterSettings) { if (_presenter == null) { lock (_syncPresenter) { if (_presenter == null) { _presenter = new Presenter(presenterSettings); } } } return _presenter; }
public Presenter(IMPView view, PresenterSettings settings = null) { _player = new MusicPlayer(); _view = view; _settings = settings ?? new PresenterSettings(); _view.SetNextTrackSetting(_player.NextTrackSelection); _view.SetVolume(_player.Volume); _player.PlayerStatusChanged += (o, status) => { if (status == Status.Playing) { _view.SetPlay(); } else { _view.SetPause(); } }; _player.TrackSelected += (o, track) => { _view.SetMaximumProgress(track.DurationRaw); _view.SetTrackTitle(track.Title); _view.SetTrackProgress(TimeSpan.Zero); _view.SetTrackDuration(track.Duration); _view.SetSelectedTrack(track.Title); }; _player.ProgressChanged += (o, progressRaw) => { _view.SetProgress((int)progressRaw); _view.SetTrackProgress(((MusicPlayer)o).Progress); }; _player.VolumeChanged += (o, volume) => { _view.SetVolume(volume); }; }
private void InitializePresenterSettings() { try { int videoTimerInterval = int.Parse(ConfigurationManager.AppSettings["videoTimerInterval"].ToString()); int height = 354, width = 360; _presenterSettings = new PresenterSettings() { Identity = FriendlyName, VideoTimerInterval = videoTimerInterval, VideoScreenSize = new DescriptorUtils.Structures.ScreenSize() { Height = height, Width = width }, OnVideoImageCaptured = new EventHandler(Program.Controller.OnVideoImageCaptured), RemotingTimerInterval = int.Parse(ConfigurationManager.AppSettings["remotingTimerInterval"].ToString()), OnRemotingImageCaptured = new EventHandler(Program.Controller.OnRemotingImageCaptured), OnAudioCaptureAvailable = new EventHandler(Program.Controller.OnAudioCaptured), AudioTimerInterval = int.Parse(ConfigurationManager.AppSettings["audioTimerInterval"].ToString()), PrivateConference = bool.Parse(ConfigurationManager.AppSettings["PrivateConference"].ToString()) }; } catch (Exception ex) { Tools.Instance.Logger.LogError(ex.ToString()); } }
public ViewSettings() { InitializeComponent(); _presenter = new PresenterSettings(this); }