Health/Assets/UVC4UnityAndroidPlugin/Scripts/IUVCDrawer.cs

52 lines
1.6 KiB
C#

/*
* 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機器からの映像を受け取るTextureオブジェクト
*/
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