Table of Contents

Class XREALCameraDevice

Пространство имен
easyar

XREALCameraDevice реализует camera device на основе XREAL Enterprise Native SDK Plugin и выводит InputFrame (image, camera parameters, timestamp, информацию о положении 6DOF и tracking status получить нельзя). После создания можно вызвать start/stop, чтобы начать и остановить сбор данных video stream. Убедитесь, что start вызывается только после того, как isDeviceSupported вернет true. Когда устройство больше не нужно, можно вызвать close для закрытия. После close его не следует использовать. XREALCameraDevice выводит InputFrame через inputFrameSource; inputFrameSource следует подключить к InputFrameSink для использования. bufferCapacity обозначает емкость буфера InputFrame. Если из устройства выведено больше этого количества InputFrame и они не освобождены, устройство перестанет выводить новые InputFrame, пока предыдущие InputFrame не будут освобождены. Это может привести к зависанию изображения и другим проблемам.

XREALCameraDevice

Конструкторы

XREALCameraDevice

void easyar_XREALCameraDevice__ctor(easyar_XREALCameraDevice * * Return)
XREALCameraDevice()
public XREALCameraDevice()
constructor()
+ (easyar_XREALCameraDevice *) create
public convenience init()
public XREALCameraDevice()

Методы

isAvailable

Проверяет доступность. Возвращает true только на устройствах, поддерживающих очки XREAL, и после успешного подключения очков XREAL.

bool easyar_XREALCameraDevice_isAvailable(void)
static bool isAvailable()
public static boolean isAvailable()
companion object fun isAvailable(): Boolean
+ (bool)isAvailable
public static func isAvailable() -> Bool
public static bool isAvailable()

Возвращаемое значение

Тип Описание
Boolean

isDeviceSupported

Проверяет, поддерживаются ли очки. На доступных устройствах значение появляется только после завершения инициализации XREAL.

easyar_OptionalOfBool easyar_XREALCameraDevice_isDeviceSupported(void)
static std::optional<bool> isDeviceSupported()
public static java.lang.@Nullable Boolean isDeviceSupported()
companion object fun isDeviceSupported(): Boolean?
+ (NSNumber *)isDeviceSupported
public static func isDeviceSupported() -> Bool?
public static Optional<bool> isDeviceSupported()

Возвращаемое значение

Тип Описание
Optional<>

bufferCapacity

Емкость буфера InputFrame. Значение по умолчанию — 8.

int easyar_XREALCameraDevice_bufferCapacity(const easyar_XREALCameraDevice * This)
int bufferCapacity()
public int bufferCapacity()
fun bufferCapacity(): Int
- (int)bufferCapacity
public func bufferCapacity() -> Int32
public virtual int bufferCapacity()

Возвращаемое значение

Тип Описание
Int32

setBufferCapacity

Устанавливает емкость буфера InputFrame.

void easyar_XREALCameraDevice_setBufferCapacity(easyar_XREALCameraDevice * This, int capacity)
void setBufferCapacity(int capacity)
public void setBufferCapacity(int capacity)
fun setBufferCapacity(capacity: Int): Unit
- (void)setBufferCapacity:(int)capacity
public func setBufferCapacity(_ capacity: Int32) -> Void
public virtual void setBufferCapacity(int capacity)

Параметры

Имя Тип Описание
capacity Int32

Возвращаемое значение

Тип Описание
Void

inputFrameSource

Выходной порт InputFrame.

void easyar_XREALCameraDevice_inputFrameSource(const easyar_XREALCameraDevice * This, easyar_InputFrameSource * * Return)
std::shared_ptr<InputFrameSource> inputFrameSource()
public @Nonnull InputFrameSource inputFrameSource()
fun inputFrameSource(): InputFrameSource
- (easyar_InputFrameSource *)inputFrameSource
public func inputFrameSource() -> InputFrameSource
public virtual InputFrameSource inputFrameSource()

Возвращаемое значение

Тип Описание
InputFrameSource

getMotionInputData

Получает синхронизированные motion input data. Использовать после того, как isDeviceSupported вернет true.

void easyar_XREALCameraDevice_getMotionInputData(const easyar_XREALCameraDevice * This, easyar_OptionalOfMotionInputData * Return)
std::optional<std::shared_ptr<MotionInputData>> getMotionInputData()
public @Nullable MotionInputData getMotionInputData()
fun getMotionInputData(): MotionInputData?
- (easyar_MotionInputData *)getMotionInputData
public func getMotionInputData() -> MotionInputData?
public virtual Optional<MotionInputData> getMotionInputData()

Возвращаемое значение

Тип Описание
Optional<MotionInputData>

receivedFrameCount

Количество frames, полученных от camera. После start оно должно постоянно увеличиваться; иначе соединение с устройством может быть нестабильным или служба/SDK XREAL может работать неправильно. В этом случае следует получить помощь напрямую у официальной поддержки XREAL.

int easyar_XREALCameraDevice_receivedFrameCount(const easyar_XREALCameraDevice * This)
int receivedFrameCount()
public int receivedFrameCount()
fun receivedFrameCount(): Int
- (int)receivedFrameCount
public func receivedFrameCount() -> Int32
public virtual int receivedFrameCount()

Возвращаемое значение

Тип Описание
Int32

open

Открывает camera device. Использовать после того, как isDeviceSupported вернет true. На устройствах вроде Air2 Ultra license XREAL сначала должна быть проверена официальными методами XREAL.

bool easyar_XREALCameraDevice_open(easyar_XREALCameraDevice * This)
bool open()
public boolean open()
fun open(): Boolean
- (bool)open
public func `open`() -> Bool
public virtual bool open()

Возвращаемое значение

Тип Описание
Boolean

start

Начинает сбор данных video stream.

bool easyar_XREALCameraDevice_start(easyar_XREALCameraDevice * This)
bool start()
public boolean start()
fun start(): Boolean
- (bool)start
public func start() -> Bool
public virtual bool start()

Возвращаемое значение

Тип Описание
Boolean

stop

Останавливает сбор данных video stream.

void easyar_XREALCameraDevice_stop(easyar_XREALCameraDevice * This)
void stop()
public void stop()
fun stop(): Unit
- (void)stop
public func stop() -> Void
public virtual void stop()

Возвращаемое значение

Тип Описание
Void

close

Закрывает. После close не следует использовать.

void easyar_XREALCameraDevice_close(easyar_XREALCameraDevice * This)
void close()
public void close()
fun close(): Unit
- (void)close
public func close() -> Void
public virtual void close()

Возвращаемое значение

Тип Описание
Void

type

Тип camera. Вызывать после успешного open.

easyar_CameraDeviceType easyar_XREALCameraDevice_type(const easyar_XREALCameraDevice * This)
CameraDeviceType type()
public int type()
fun type(): Int
- (easyar_CameraDeviceType)type
public func type() -> CameraDeviceType
public virtual CameraDeviceType type()

Возвращаемое значение

Тип Описание
CameraDeviceType

cameraOrientation

Угол поворота по часовой стрелке, необходимый для отображения изображения camera в естественной ориентации устройства. Вызывать после успешного open.

int easyar_XREALCameraDevice_cameraOrientation(const easyar_XREALCameraDevice * This)
int cameraOrientation()
public int cameraOrientation()
fun cameraOrientation(): Int
- (int)cameraOrientation
public func cameraOrientation() -> Int32
public virtual int cameraOrientation()

Возвращаемое значение

Тип Описание
Int32

size

Получает текущий размер image. Вызывать после успешного open.

easyar_Vec2I easyar_XREALCameraDevice_size(const easyar_XREALCameraDevice * This)
Vec2I size()
public @Nonnull Vec2I size()
fun size(): Vec2I
- (easyar_Vec2I *)size
public func size() -> Vec2I
public virtual Vec2I size()

Возвращаемое значение

Тип Описание
Vec2I

frameRate

Получает текущий frame rate. Вызывать после успешного open.

double easyar_XREALCameraDevice_frameRate(const easyar_XREALCameraDevice * This)
double frameRate()
public double frameRate()
fun frameRate(): Double
- (double)frameRate
public func frameRate() -> Double
public virtual double frameRate()

Возвращаемое значение

Тип Описание
Double