/****************************************************************************
* Copyright 2019 Nreal Techonology Limited. All rights reserved.
*
* This file is part of NRSDK.
*
* https://www.nreal.ai/
*
*****************************************************************************/
namespace NRKernal
{
using System;
/// An editor camera data provider.
public class EditorCameraDataProvider : ICameraDataProvider
{
/// Creates a new bool.
/// True if it succeeds, false if it fails.
public bool Create()
{
return true;
}
/// Destroys the image described by imageHandle.
/// Handle of the image.
/// True if it succeeds, false if it fails.
public bool DestroyImage(ulong imageHandle)
{
return true;
}
/// Gets hmd time nanos.
/// Handle of the image.
/// The eye.
/// The hmd time nanos.
public ulong GetHMDTimeNanos(ulong imageHandle, int eye)
{
return 0;
}
/// Get exposure time.
/// Handle of the image.
/// The eye.
/// Exposure time of the image.
public UInt32 GetExposureTime(UInt64 imageHandle, int eye)
{
UInt32 exposureTime = 0;
return exposureTime;
}
/// Get Gain.
/// Handle of the image.
/// The eye.
/// Gain of the image.
public UInt32 GetGain(UInt64 imageHandle, int eye)
{
UInt32 gain = 0;
return gain;
}
/// Gets raw data.
/// Handle of the image.
/// The eye.
/// [in,out] The pointer.
/// [in,out] The size.
/// True if it succeeds, false if it fails.
public bool GetRawData(ulong imageHandle, int eye, ref IntPtr ptr, ref int size)
{
return true;
}
/// Gets a resolution.
/// Handle of the image.
/// The eye.
/// The resolution.
public NativeResolution GetResolution(ulong imageHandle, int eye)
{
return new NativeResolution(1280, 720);
}
/// Releases this object.
/// True if it succeeds, false if it fails.
public bool Release()
{
return true;
}
/// Callback, called when the set capture.
/// The callback.
/// (Optional) The userdata.
/// True if it succeeds, false if it fails.
public bool SetCaptureCallback(CameraImageCallback callback, ulong userdata = 0)
{
return true;
}
/// Sets image format.
/// Describes the format to use.
/// True if it succeeds, false if it fails.
public bool SetImageFormat(CameraImageFormat format)
{
return true;
}
/// Starts a capture.
/// True if it succeeds, false if it fails.
public bool StartCapture()
{
return true;
}
/// Stops a capture.
/// True if it succeeds, false if it fails.
public bool StopCapture()
{
return true;
}
}
}