public SoundViewModel( Sound s, IMixMediaPlayerService playerService, ISoundDataProvider soundDataProvider, ISoundMixService soundMixService, ITelemetry telemetry, IRenamer renamer, IDialogService dialogService, IIapService iapService, IDownloadManager downloadManager) { Guard.IsNotNull(s, nameof(s)); Guard.IsNotNull(playerService, nameof(playerService)); Guard.IsNotNull(soundDataProvider, nameof(soundDataProvider)); Guard.IsNotNull(telemetry, nameof(telemetry)); Guard.IsNotNull(soundMixService, nameof(soundMixService)); Guard.IsNotNull(renamer, nameof(renamer)); Guard.IsNotNull(dialogService, nameof(dialogService)); Guard.IsNotNull(iapService, nameof(iapService)); Guard.IsNotNull(downloadManager, nameof(downloadManager)); _sound = s; _soundMixService = soundMixService; _playerService = playerService; _soundDataProvider = soundDataProvider; _telemetry = telemetry; _renamer = renamer; _dialogService = dialogService; _iapService = iapService; _downloadManager = downloadManager; DeleteCommand = new RelayCommand(DeleteSound); RenameCommand = new AsyncRelayCommand(RenameAsync); PlayCommand = new AsyncRelayCommand(PlayAsync); }
public SoundVmFactory( IDownloadManager downloadManager, IMixMediaPlayerService player, ITelemetry telemetry, IPreviewService previewService, ISoundDataProvider soundDataProvider, ISoundMixService soundMixService, IUserSettings userSettings, IIapService iapService, IRenamer renamer, IServiceProvider serviceProvider) { Guard.IsNotNull(downloadManager, nameof(downloadManager)); Guard.IsNotNull(soundDataProvider, nameof(soundDataProvider)); Guard.IsNotNull(player, nameof(player)); Guard.IsNotNull(telemetry, nameof(telemetry)); Guard.IsNotNull(iapService, nameof(iapService)); Guard.IsNotNull(previewService, nameof(previewService)); Guard.IsNotNull(userSettings, nameof(userSettings)); Guard.IsNotNull(soundMixService, nameof(soundMixService)); Guard.IsNotNull(renamer, nameof(renamer)); Guard.IsNotNull(serviceProvider, nameof(serviceProvider)); _userSettings = userSettings; _downloadManager = downloadManager; _previewService = previewService; _soundMixService = soundMixService; _iapService = iapService; _soundDataProvider = soundDataProvider; _player = player; _renamer = renamer; _telemetry = telemetry; _serviceProvider = serviceProvider; }
public OnlineSoundViewModel( Sound s, IDownloadManager downloadManager, ISoundDataProvider soundDataProvider, ITelemetry telemetry, IPreviewService previewService, IIapService iapService, IDialogService dialogService) { Guard.IsNotNull(s, nameof(s)); Guard.IsNotNull(downloadManager, nameof(downloadManager)); Guard.IsNotNull(soundDataProvider, nameof(soundDataProvider)); Guard.IsNotNull(telemetry, nameof(telemetry)); Guard.IsNotNull(iapService, nameof(iapService)); Guard.IsNotNull(previewService, nameof(previewService)); Guard.IsNotNull(dialogService, nameof(dialogService)); _sound = s; _downloadManager = downloadManager; _previewService = previewService; _iapService = iapService; _soundDataProvider = soundDataProvider; _telemetry = telemetry; _dialogService = dialogService; _downloadProgress = new Progress <double>(); _downloadProgress.ProgressChanged += OnProgressChanged; _soundDataProvider.LocalSoundDeleted += OnSoundDeleted; _iapService.ProductPurchased += OnProductPurchased; DownloadCommand = new AsyncRelayCommand(DownloadAsync); LoadCommand = new AsyncRelayCommand(LoadAsync); DeleteCommand = new AsyncRelayCommand(DeleteSound); BuyCommand = new AsyncRelayCommand(BuySoundAsync); PreviewCommand = new RelayCommand(Preview); }
public SyncEngine( ICloudFileWriter cloudFileWriter, IDownloadManager downloadManager, IAccountManager accountManager, ISoundDataProvider soundDataProvider, IOnlineSoundDataProvider onlineSoundDataProvider, IAppSettings appSettings, ISoundMixService soundMixService, ITelemetry telemetry) { Guard.IsNotNull(cloudFileWriter, nameof(cloudFileWriter)); Guard.IsNotNull(downloadManager, nameof(downloadManager)); Guard.IsNotNull(accountManager, nameof(accountManager)); Guard.IsNotNull(soundDataProvider, nameof(soundDataProvider)); Guard.IsNotNull(onlineSoundDataProvider, nameof(onlineSoundDataProvider)); Guard.IsNotNull(soundMixService, nameof(soundMixService)); Guard.IsNotNull(appSettings, nameof(appSettings)); Guard.IsNotNull(telemetry, nameof(telemetry)); Guard.IsNotNullOrEmpty(appSettings.CloudSyncFileUrl, nameof(appSettings.CloudSyncFileUrl)); _accountManager = accountManager; _cloudFileWriter = cloudFileWriter; _downloadManager = downloadManager; _soundDataProvider = soundDataProvider; _onlineSoundDataProvider = onlineSoundDataProvider; _soundMixService = soundMixService; _telemetry = telemetry; _cloudSyncFileUrl = appSettings.CloudSyncFileUrl; _dataChangeQueue = new Queue <string>(); _downloadManager.DownloadsCompleted += OnDownloadsCompleted; _soundDataProvider.LocalSoundDeleted += OnLocalSoundDeleted; _soundDataProvider.LocalSoundAdded += OnLocalSoundAdded; _accountManager.SignInUpdated += OnSignInUpdated; }
public ActiveTrackListViewModel( IMixMediaPlayerService player, ISoundVmFactory soundVmFactory, IUserSettings userSettings, ITelemetry telemetry, ISoundMixService soundMixService, ISoundDataProvider soundDataProvider, IAppSettings appSettings) { Guard.IsNotNull(player, nameof(player)); Guard.IsNotNull(soundVmFactory, nameof(soundVmFactory)); Guard.IsNotNull(userSettings, nameof(userSettings)); Guard.IsNotNull(soundDataProvider, nameof(soundDataProvider)); Guard.IsNotNull(soundMixService, nameof(soundMixService)); Guard.IsNotNull(telemetry, nameof(telemetry)); Guard.IsNotNull(appSettings, nameof(appSettings)); _loadPreviousState = appSettings.LoadPreviousState; _telemetry = telemetry; _soundMixService = soundMixService; _soundDataProvider = soundDataProvider; _userSettings = userSettings; _soundVmFactory = soundVmFactory; _player = player; RemoveCommand = new RelayCommand <Sound>(RemoveSound); SaveCommand = new AsyncRelayCommand <string>(SaveAsync); ClearCommand = new RelayCommand(ClearAll); }
public SoundViewModel( Sound s, IMixMediaPlayerService playerService, int index, ISoundDataProvider soundDataProvider, ISoundMixService soundMixService, ITelemetry telemetry, IRenamer renamer) { Guard.IsNotNull(s, nameof(s)); Guard.IsNotNull(playerService, nameof(playerService)); Guard.IsNotNull(soundDataProvider, nameof(soundDataProvider)); Guard.IsNotNull(telemetry, nameof(telemetry)); Guard.IsNotNull(soundMixService, nameof(soundMixService)); Guard.IsNotNull(renamer, nameof(renamer)); Index = index; _sound = s; _soundMixService = soundMixService; _playerService = playerService; _soundDataProvider = soundDataProvider; _telemetry = telemetry; _renamer = renamer; _playerService.SoundRemoved += OnSoundPaused; _playerService.SoundAdded += OnSoundPlayed; DeleteCommand = new RelayCommand(DeleteSound); RenameCommand = new AsyncRelayCommand(RenameAsync); }
public StreamingSoundBuffer(Device device, WaveFormat format, ISoundDataProvider provider) { NextID++; this.device = device; this.provider = provider; BufferDescription description = new BufferDescription(format); description.BufferBytes = BufferSize; description.ControlPositionNotify = true; description.CanGetCurrentPosition = true; description.ControlVolume = true; description.LocateInHardware = false; description.LocateInSoftware = true; description.GlobalFocus = false; description.StickyFocus = false; try { buffer = new SecondaryBuffer(description, device); buffer.SetCurrentPosition(0); buffer.Volume = 0; } catch (Exception ex) { if (buffer != null) { buffer.Dispose(); } throw new SoundSystemException(ex, "Failed to create SecondaryBuffer ID {0}.", NextID); } notifier = new Notify(buffer); notifyEvent = new AutoResetEvent(false); BufferPositionNotify[] notifications = new BufferPositionNotify[Notifications]; for (int i = 0; i < Notifications; i++) { if (notifyEvent.SafeWaitHandle.IsClosed || notifyEvent.SafeWaitHandle.IsInvalid) { throw new SoundSystemException("SecondaryBuffer ID {0} notifier handle was closed or invalid.", NextID); } else { notifications[i].EventNotifyHandle = notifyEvent.SafeWaitHandle.DangerousGetHandle(); notifications[i].Offset = SectorSize * i - 1; } } notifier.SetNotificationPositions(notifications, Notifications); data = provider.GetNextChunk(); FillData(); FillData(); // do this twice, to have a 370 or so ms lead, in case something were to happen dataManager = new Thread(new ThreadStart(DataStream)); dataManager.Name = "Prometheus Sound Stream #" + NextID.ToString(); dataManager.Priority = ThreadPriority.AboveNormal; dataManager.Start(); // must lock buffer from now on }
public Renamer( ISoundDataProvider soundDataProvider, IDialogService dialogService) { Guard.IsNotNull(soundDataProvider, nameof(soundDataProvider)); Guard.IsNotNull(dialogService, nameof(dialogService)); _dialogService = dialogService; _soundDataProvider = soundDataProvider; }
public SoundMixService( ISoundDataProvider soundDataProvider, IMixMediaPlayerService player) { Guard.IsNotNull(soundDataProvider, nameof(soundDataProvider)); Guard.IsNotNull(player, nameof(player)); _soundDataProvider = soundDataProvider; _player = player; }
/// <summary> /// Default constructor. Must initialize with <see cref="LoadAsync"/> /// immediately after creation. /// </summary> public MainPageViewModel(IMediaPlayerService mediaPlayerService, ISoundDataProvider soundDataProvider) { Guard.IsNotNull(mediaPlayerService, nameof(mediaPlayerService)); Guard.IsNotNull(soundDataProvider, nameof(soundDataProvider)); _player = mediaPlayerService; _provider = soundDataProvider; LoadCommand = new AsyncRelayCommand(LoadAsync); PlaySoundCommand = new RelayCommand <SoundViewModel>(PlaySound); }
public WindowsDownloadManager( IFileDownloader fileDownloader, ISoundDataProvider soundDataProvider, IOnlineSoundDataProvider onlineSoundDataProvider) { Guard.IsNotNull(fileDownloader, nameof(fileDownloader)); Guard.IsNotNull(soundDataProvider, nameof(soundDataProvider)); Guard.IsNotNull(onlineSoundDataProvider, nameof(onlineSoundDataProvider)); _fileDownloader = fileDownloader; _soundDataProvider = soundDataProvider; _onlineSoundDataProvider = onlineSoundDataProvider; }
public ShareResultsViewModel( IOnlineSoundDataProvider dataProvider, ISoundDataProvider localDataProvider, ISoundVmFactory soundVmFactory) { Guard.IsNotNull(dataProvider, nameof(dataProvider)); Guard.IsNotNull(soundVmFactory, nameof(soundVmFactory)); Guard.IsNotNull(localDataProvider, nameof(localDataProvider)); _localDataProvider = localDataProvider; _onlineDataProvider = dataProvider; _soundVmFactory = soundVmFactory; }
public CatalogueListViewModel( IOnlineSoundDataProvider dataProvider, ISoundDataProvider soundDataProvider, ISoundVmFactory soundVmFactory) { Guard.IsNotNull(dataProvider, nameof(dataProvider)); Guard.IsNotNull(soundVmFactory, nameof(soundVmFactory)); Guard.IsNotNull(soundDataProvider, nameof(soundDataProvider)); _soundDataProvider = soundDataProvider; _dataProvider = dataProvider; _soundVmFactory = soundVmFactory; }
public CatalogueListViewModel( IOnlineSoundDataProvider dataProvider, ISoundDataProvider soundDataProvider, ISoundVmFactory soundVmFactory) { Guard.IsNotNull(dataProvider, nameof(dataProvider)); Guard.IsNotNull(soundVmFactory, nameof(soundVmFactory)); Guard.IsNotNull(soundDataProvider, nameof(soundDataProvider)); _soundDataProvider = soundDataProvider; _dataProvider = dataProvider; _soundVmFactory = soundVmFactory; LoadCommand = new AsyncRelayCommand(LoadAsync); }
/// <summary> /// Default constructor. Must initialize with <see cref="LoadAsync"/> /// immediately after creation. /// </summary> public SoundListViewModel( ISoundDataProvider soundDataProvider, ITelemetry telemetry, ISoundVmFactory soundVmFactory) { Guard.IsNotNull(soundDataProvider, nameof(soundDataProvider)); Guard.IsNotNull(telemetry, nameof(telemetry)); Guard.IsNotNull(soundVmFactory, nameof(soundVmFactory)); _provider = soundDataProvider; _telemetry = telemetry; _factory = soundVmFactory; LoadCommand = new AsyncRelayCommand(LoadAsync); }
public SoundVmFactory( IDownloadManager downloadManager, IMediaPlayerService player, ITelemetry telemetry, ISoundDataProvider soundDataProvider) { Guard.IsNotNull(downloadManager, nameof(downloadManager)); Guard.IsNotNull(soundDataProvider, nameof(soundDataProvider)); Guard.IsNotNull(player, nameof(player)); Guard.IsNotNull(telemetry, nameof(telemetry)); _downloadManager = downloadManager; _soundDataProvider = soundDataProvider; _player = player; _telemetry = telemetry; }
/// <summary> /// Default constructor. Must initialize with <see cref="LoadAsync"/> /// immediately after creation. /// </summary> public SoundListViewModel( IMediaPlayerService mediaPlayerService, ISoundDataProvider soundDataProvider, ITelemetry telemetry) { Guard.IsNotNull(mediaPlayerService, nameof(mediaPlayerService)); Guard.IsNotNull(soundDataProvider, nameof(soundDataProvider)); Guard.IsNotNull(telemetry, nameof(telemetry)); _player = mediaPlayerService; _provider = soundDataProvider; _telemetry = telemetry; LoadCommand = new AsyncRelayCommand(LoadAsync); PlaySoundCommand = new RelayCommand <SoundViewModel>(PlaySound); }
public ScreensaverViewModel( ITimerService timerService, IMixMediaPlayerService mediaPlayerService, ISoundDataProvider soundDataProvider, ITelemetry telemetry) { Guard.IsNotNull(timerService, nameof(timerService)); Guard.IsNotNull(mediaPlayerService, nameof(mediaPlayerService)); Guard.IsNotNull(telemetry, nameof(telemetry)); Guard.IsNotNull(soundDataProvider, nameof(soundDataProvider)); _telemetry = telemetry; _mediaPlayerService = mediaPlayerService; _timerService = timerService; _soundDataProvider = soundDataProvider; _timerService.Interval = ImageTimeLength; }
/// <summary> /// Default constructor. Must initialize with <see cref="LoadAsync"/> /// immediately after creation. /// </summary> public SoundListViewModel( ISoundDataProvider soundDataProvider, ITelemetry telemetry, ISoundVmFactory soundVmFactory) { Guard.IsNotNull(soundDataProvider, nameof(soundDataProvider)); Guard.IsNotNull(telemetry, nameof(telemetry)); Guard.IsNotNull(soundVmFactory, nameof(soundVmFactory)); _provider = soundDataProvider; _telemetry = telemetry; _factory = soundVmFactory; LoadCommand = new AsyncRelayCommand(LoadAsync); PlaySoundCommand = new RelayCommand <SoundViewModel>(PlaySound); _provider.LocalSoundAdded += OnLocalSoundAdded; _provider.LocalSoundDeleted += OnLocalSoundDeleted; }
public SoundViewModel( Sound s, IMediaPlayerService playerService, int index, ISoundDataProvider soundDataProvider, ITelemetry telemetry) { Guard.IsNotNull(s, nameof(s)); Guard.IsNotNull(playerService, nameof(playerService)); Guard.IsNotNull(soundDataProvider, nameof(soundDataProvider)); Guard.IsNotNull(telemetry, nameof(telemetry)); Index = index; _sound = s; _playerService = playerService; _playerService.PlaybackStateChanged += PlayerService_PlaybackStateChanged; _soundDataProvider = soundDataProvider; _telemetry = telemetry; DeleteCommand = new RelayCommand(DeleteSound); }
public OnlineSoundViewModel( Sound s, IDownloadManager downloadManager, ISoundDataProvider soundDataProvider, ITelemetry telemetry) { Guard.IsNotNull(s, nameof(s)); Guard.IsNotNull(downloadManager, nameof(downloadManager)); Guard.IsNotNull(soundDataProvider, nameof(soundDataProvider)); Guard.IsNotNull(telemetry, nameof(telemetry)); _sound = s; _downloadManager = downloadManager; _soundDataProvider = soundDataProvider; _telemetry = telemetry; _downloadProgress = new Progress <double>(); _downloadProgress.ProgressChanged += OnProgressChanged; _soundDataProvider.LocalSoundDeleted += OnSoundDeleted; DownloadCommand = new AsyncRelayCommand(DownloadAsync); LoadCommand = new AsyncRelayCommand(LoadAsync); DeleteCommand = new AsyncRelayCommand(DeleteSound); }
public SoundInstance(Device device, WaveFormat format, ISoundDataProvider provider) { buffer = new StreamingSoundBuffer(device, format, provider); }
public EnvironmentSoundInstance(Device device, WaveFormat format, ISoundDataProvider provider) : base(device, format, provider) { }