//
//  PlayerView.h
//  VclustersGemini
//
//  Created by APPLE on 2019/6/13.
//  Copyright © 2019 APPLE. All rights reserved.
//

#import <UIKit/UIKit.h>
#import <GLKit/GLKit.h>
#import "ShowImageView.h"
#import "Masonry.h"

NS_ASSUME_NONNULL_BEGIN

@protocol PlayerViewDelegate <NSObject>

@optional
- (void)useInfoBtnBePressed:(id)sender;
- (void)playerShowImageViewtouchesStr:(NSString *)commondStr;

- (void)mueBtnBePressed:(id)sender;
- (void)homeBtnBePressed:(id)sender;
- (void)backBtnBePressed:(id)sender;
@end

@interface PlayerView : UIView

@property(nonatomic,strong)ShowImageView *showImageView;

/**
 * @brief openGL渲染视图
 *
 */
@property(nonatomic,strong)GLKView *glkshowImageView;

/**
 * @brief 悬浮控制按钮
 *
 *专业模式下隐藏，普通模式下显示。
 *注意横竖屏切换时需要注意坐标的转换。
 *自动置于屏幕边缘时要考虑灵动岛以及底部滑块的干扰问题，建议置于4个角。
 *
 */
@property(nonatomic,strong)UIButton    *controlBtn;
@property (nonatomic, weak) id<PlayerViewDelegate> delegate;


/**
 * @brief 标记是否为横屏
 *
 */
@property(nonatomic,assign)BOOL  isLan;

/**
 * @brief 云手机类型  VIP星动云手机  SVIP星曜云手机  STAR 唔即云手机
 */
@property(copy,nonatomic)NSString *buyVipType;

/**
 * @brief 渲染图片
 *
 * @param  ciImage 待渲染的图片数据源
 *
 */
- (void)glkShowImage:(CIImage *)ciImage;

/**
 * @brief 布局渲染视图横屏模式视图
 *
 * @param  w_h_rate 原始图片宽高比
 *
 * @param isOpenVirtual 是否有打开虚拟按键视图
 *
 * @param isUsageMode 是否为专业模式
 *
 */
- (void)setLanMas_makeWithImageRate:(CGFloat)w_h_rate isOpenVirtual:(BOOL)isOpenVirtual isUsageMode:(BOOL)isUsageMode;

/**
 * @brief 布局渲染视图竖屏模式视图
 *
 * @param  w_h_rate 原始图片宽高比
 *
 * @param isOpenVirtual 是否有打开虚拟按键视图
 *
 * @param isUsageMode 是否为专业模式
 *
 */
- (void)setPoMas_makeWithImageRate:(CGFloat)w_h_rate isOpenVirtual:(BOOL)isOpenVirtual isUsageMode:(BOOL)isUsageMode;

/**
 * @brief 默认布局渲染视图竖屏模式视图宽高比默认为9/16
 *
 * @param isOpenVirtual 是否有打开虚拟按键视图
 *
 * @param isUsageMode 是否为专业模式
 *
 */
- (void)initPoMas_makeWithImageRate:(BOOL)isOpenVirtual isUsageMode:(BOOL)isUsageMode;


@end

NS_ASSUME_NONNULL_END
