SmartPushConfiguration.cs 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. using Vinno.vCloud.Push.Configuration;
  2. namespace PushApp
  3. {
  4. public abstract class SmartPushConfiguration : ISmartConfiguration
  5. {
  6. /// <summary>
  7. /// Push Source Module
  8. /// </summary>
  9. public PushSourceModule PushSourceModule { get; }
  10. /// <summary>
  11. /// Get current pid
  12. /// </summary>
  13. public string Pid { get; set; }
  14. /// <summary>
  15. /// Get pine name.
  16. /// </summary>
  17. public string PineName { get; set; }
  18. /// <summary>
  19. /// Gets the mode of this configuration.
  20. /// </summary>
  21. public PushMode Mode { get; }
  22. public int AudioDeviceId { get; }
  23. public string AudioDeviceName { get; }
  24. public AudioMode AudioMode { get; }
  25. public ResolutionMode Resolution { get; }
  26. public bool IsMute { get; }
  27. protected SmartPushConfiguration(PushSourceModule pushSourceModule, PushMode mode, int audioDeviceId, AudioMode audioMode, ResolutionMode resolutionMode, bool isMute, string audioDeviceName = "")
  28. {
  29. PushSourceModule = pushSourceModule;
  30. Mode = mode;
  31. AudioDeviceId = audioDeviceId;
  32. AudioMode = audioMode;
  33. AudioDeviceName = audioDeviceName;
  34. Resolution = resolutionMode;
  35. }
  36. }
  37. public class SmartScreenPushConfiguration : SmartPushConfiguration
  38. {
  39. public SmartScreenPushConfiguration(PushSourceModule pushSourceModule, int audioDeviceId, AudioMode audioMode, ResolutionMode resolutionMode, bool isMute, string audioDeviceName = "") : base(pushSourceModule, PushMode.Screen,
  40. audioDeviceId, audioMode, resolutionMode,isMute, audioDeviceName)
  41. {
  42. }
  43. }
  44. public class SmartDevicePushConfiguration : SmartPushConfiguration
  45. {
  46. public SmartDevicePushConfiguration(PushSourceModule pushSourceModule, int audioDeviceId, AudioMode audioMode, string videoDeviceId, ResolutionMode resolutionMode, bool isMute, string audioDeviceName = "") : base(pushSourceModule,
  47. PushMode.Screen, audioDeviceId, audioMode, resolutionMode,isMute, audioDeviceName)
  48. {
  49. VideoDeviceId = videoDeviceId;
  50. }
  51. public string VideoDeviceId { get; }
  52. }
  53. }