/* * Copyright (c) 2014 - 2022 t_saki@serenegiant.com */ using System.Collections; using System.Collections.Generic; using UnityEngine; namespace Serenegiant.UVC { /** * 与UVC相关的事件处理接口 */ public interface IUVCDrawer { /** * UVC设备已连接 * @param manager 调用方UVCmanager * @param device 连接的UVC设备信息 * @return true: 使用UVC机器, false: 不使用UVC机器 */ bool OnUVCAttachEvent(UVCManager manager, UVCDevice device); /** * UVC设备已拆除 * @param manager 调用方UVCmanager * @param device 连接的UVC设备信息 */ void OnUVCDetachEvent(UVCManager manager, UVCDevice device); /** * IUVCDrawer获得是否能够描绘指定的UVC设备的影像 * @param manager 调用方UVCmanager * @param device 连接的UVC设备信息 */ bool CanDraw(UVCManager manager, UVCDevice device); /** * 已开始从UVC设备获取视频 * @param manager 调用方UVCmanager * @param device 连接的UVC设备信息 * @param tex 从UVC设备接收视频的纹理对象 */ void OnUVCStartEvent(UVCManager manager, UVCDevice device, Texture tex); /** * 从UVC机器的影像取得结束 * @param manager 调用方UVCmanager * @param device 连接的UVC设备信息 */ void OnUVCStopEvent(UVCManager manager, UVCDevice device); } // interface IUVCDrawer } // namespace Serenegiant.UVC