52 lines
1.6 KiB
C#
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
|