Qualcomm_Snapdragon_VR_SDK SvrManager脚本简介(1)

本文将继续介绍SvrManager中的脚本内容。

	/// <summary>
	/// Svr event listener.
	/// </summary>
	public interface SvrEventListener {
		/// <summary>
		/// Raises the svr event event.
		/// </summary>
		/// <param name="ev">Ev.</param>
		void OnSvrEvent (SvrEvent ev);
	};

    public enum svrThermalLevel
    {
        kSafe,
        kLevel1,
        kLevel2,
        kLevel3,
        kCritical,
        kNumThermalLevels
    };

    public enum svrThermalZone
    {
        kCpu,
        kGpu,
        kSkin,
        kNumThermalZones
    };

    public struct svrEventData_Thermal
    {
        public svrThermalZone zone;               //!< Thermal zone
        public svrThermalLevel level;             //!< Indication of the current zone thermal level
    };

    [StructLayout(LayoutKind.Explicit)]
    public struct svrEventData
    {
        [FieldOffset(0)]
        public svrEventData_Thermal thermal;
        //[FieldOffset(0)]
        //public svrEventData_New newData;
    }

	public struct SvrEvent
	{
		public svrEventType eventType;      //!< Type of event
		public uint deviceId;               //!< An identifier for the device that generated the event (0 == HMD)
		public float eventTimeStamp;        //!< Time stamp for the event in seconds since the last svrBeginVr call
        public svrEventData eventData;      //!< Event specific data payload
    };

	private List<SvrEventListener> 	eventListeners = new List<SvrEventListener>();

Svr中定义了事件监听接口SvrEventListener,用来监听SDK运行状态的改变。开发者可以通过该接口定义自己的事件监听类,而SvrManager中保存的eventlisteners变量即为场景内的所有的事件监听类,当有状态改变时,监听类会收到事件改变的消息,并执行对应的方法。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值