QNClientConfig.h 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. //
  2. // QNClientConfig.h
  3. // QNRTCKit
  4. //
  5. // Created by tony.jing on 2021/11/11.
  6. // Copyright © 2021 Pili Engineering, Qiniu Inc. All rights reserved.
  7. //
  8. #import <Foundation/Foundation.h>
  9. #import "QNTypeDefines.h"
  10. NS_ASSUME_NONNULL_BEGIN
  11. /*!
  12. * @abstract 用来配置 QNRTCClient 的相关信息
  13. *
  14. * @since v4.0.1
  15. */
  16. @interface QNClientConfig : NSObject
  17. /*!
  18. * @abstract 使用场景,默认为 QNClientModeRTC
  19. *
  20. * @since v4.0.1
  21. */
  22. @property (nonatomic, assign, readonly) QNClientMode mode;
  23. /*!
  24. * @abstract 直播场景中的用户角色。
  25. *
  26. * @warning 仅在 mode 为 QNClientModeLive 时可用
  27. *
  28. * @since v4.0.1
  29. */
  30. @property (nonatomic, assign, readonly) QNClientRole role;
  31. /*!
  32. * @abstract 用默认参数生成一个对象
  33. *
  34. * @discussion 默认 QNClientModeRTC 场景
  35. *
  36. * @since v4.0.1
  37. */
  38. + (instancetype)defaultClientConfig;
  39. /*!
  40. * @abstract 用指定的 mode 生成一个对象
  41. *
  42. * @since v4.0.1
  43. */
  44. - (instancetype)initWithMode:(QNClientMode)mode;
  45. /*!
  46. * @abstract 用指定的 mode、role 生成一个对象
  47. *
  48. * @since v4.0.1
  49. */
  50. - (instancetype)initWithMode:(QNClientMode)mode role:(QNClientRole)role;
  51. @end
  52. NS_ASSUME_NONNULL_END