This page has been translated automatically.
Видеоуроки
Интерфейс
Основы
Продвинутый уровень
Подсказки и советы
Основы
Программирование на C#
Рендеринг
Профессиональный уровень (SIM)
Принципы работы
Свойства (properties)
Компонентная Система
Рендер
Физика
Редактор UnigineEditor
Обзор интерфейса
Работа с ассетами
Контроль версий
Настройки и предпочтения
Работа с проектами
Настройка параметров ноды
Setting Up Materials
Настройка свойств
Освещение
Sandworm
Использование инструментов редактора для конкретных задач
Расширение функционала редактора
Встроенные объекты
Ноды (Nodes)
Объекты (Objects)
Эффекты
Декали
Источники света
Geodetics
World-ноды
Звуковые объекты
Объекты поиска пути
Player-ноды
Программирование
Основы
Настройка среды разработки
Примеры использования
C++
C#
UnigineScript
UUSL (Unified UNIGINE Shader Language)
Плагины
Форматы файлов
Материалы и шейдеры
Rebuilding the Engine Tools
Интерфейс пользователя (GUI)
VR Development
Двойная точность координат
API
Animations-Related Classes
Containers
Common Functionality
Controls-Related Classes
Engine-Related Classes
Filesystem Functionality
GUI-Related Classes
Math Functionality
Node-Related Classes
Objects-Related Classes
Networking Functionality
Pathfinding-Related Classes
Physics-Related Classes
Plugins-Related Classes
IG Plugin
CIGIConnector Plugin
Rendering-Related Classes
Работа с контентом
Оптимизация контента
Материалы
Визуальный редактор материалов
Material Nodes Library
Miscellaneous
Input
Math
Matrix
Textures
Art Samples
Учебные материалы

Unigine::VRMixedReality Class

Header: #include <UnigineVRMixedReality.h>

The class is used for mixed reality management in Varjo devices.Класс используется для управления смешанной реальностью в устройствах Varjo.

VRMixedReality Class

Enums

BLEND_MASKING_MODE#

ИмяОписание
BLEND_MASKING_MODE_BEGIN = 0The first element to be used for iteration.Первый элемент, который будет использоваться для итерации.
BLEND_MASKING_MODE_DISABLED = 0Masking mode is disabled.Режим маскировки отключен.
BLEND_MASKING_MODE_RESTRICT_VIDEO_TO_MASK = 1Show the video pass-through image (VST) in the mask. Can be used with chroma key.Отобразите сквозное изображение видео (VST) в маске. Может использоваться с цветовой клавишей.
BLEND_MASKING_MODE_RESTRICT_VR_TO_MASK = 2Show VR in the mask. Can be used with chroma key.Показывать виртуальную реальность в маске. Можно использовать с цветовой клавишей.
BLEND_MASKING_MODE_RESTRICT_VR_TO_CHROMAKEY_REDUCED_BY_MASK = 3Show VR in the mask and chroma elsewhere. Requires chroma key.Отобразите VR в маске и цветность в другом месте. Требуется цветовой ключ.
BLEND_MASKING_MODE_END = 3The last element to be used for iteration.Последний элемент, который будет использоваться для итерации.

CAMERA_PROPERTY_MODE#

ИмяОписание
CAMERA_PROPERTY_MODE_DISABLED = 0The camera property adjustment is disabled.Настройка свойств камеры отключена.
CAMERA_PROPERTY_MODE_AUTO = 1Automatic property adjustment for the camera.Автоматическая настройка свойств камеры.
CAMERA_PROPERTY_MODE_MANUAL = 2Manual property adjustment for the camera. In this mode you can set the desired property value (exposure time correction, white balance correction, ISO) manually via the corresponding methods.Ручная настройка свойств камеры. В этом режиме вы можете установить желаемое значение свойств (коррекция времени экспозиции, коррекция баланса белого, ISO) вручную с помощью соответствующих методов.

CAMERA_EXPOSURE_TIME#

ИмяОписание
CAMERA_EXPOSURE_TIME_UNKNWON = 0The camera exposure time is not specified.Время экспозиции камеры не указано.
CAMERA_EXPOSURE_TIME_BEGIN = 1The first element to be used for iteration.Первый элемент, который будет использоваться для итерации.
CAMERA_EXPOSURE_TIME_VALUE_91_MS = 1The camera exposure time value equal to 91 K.Значение времени экспозиции камеры равно 91 К.
CAMERA_EXPOSURE_TIME_VALUE_125_MS = 2The camera exposure time value equal to 125 K.Значение времени экспозиции камеры равно 125 К.
CAMERA_EXPOSURE_TIME_VALUE_250_MS = 3The camera exposure time value equal to 250 K.Значение времени экспозиции камеры равно 250 К.
CAMERA_EXPOSURE_TIME_VALUE_500_MS = 4The camera exposure time value equal to 500 K.Значение времени экспозиции камеры, равное 500 К.
CAMERA_EXPOSURE_TIME_VALUE_1000_MS = 5The camera exposure time value equal to 1000 K.Значение времени экспозиции камеры, равное 1000 К.
CAMERA_EXPOSURE_TIME_VALUE_2000_MS = 6The camera exposure time value equal to 2000 K.Значение времени экспозиции камеры, равное 2000 К.
CAMERA_EXPOSURE_TIME_VALUE_4000_MS = 7The camera exposure time value equal to 4000 K.Значение времени экспозиции камеры равно 4000 К.
CAMERA_EXPOSURE_TIME_VALUE_8000_MS = 8The camera exposure time value equal to 8000 K.Значение времени экспозиции камеры равно 8000 К.
CAMERA_EXPOSURE_TIME_END = 8The last element to be used for iteration.Последний элемент, который будет использоваться для итерации.

CAMERA_WHITE_BALANCE#

ИмяОписание
CAMERA_WHITE_BALANCE_UNKNWON = 0The camera white balance value is not specified.Значение баланса белого камеры не указано.
CAMERA_WHITE_BALANCE_BEGIN = 1The first element to be used for iteration.Первый элемент, который будет использоваться для итерации.
CAMERA_WHITE_BALANCE_VALUE_2000_K = 1The camera white balance value equal to 2000 K.Значение баланса белого камеры равно 2000 К.
CAMERA_WHITE_BALANCE_VALUE_3000_K = 2The camera white balance value equal to 3000 K.Значение баланса белого камеры равно 3000 К.
CAMERA_WHITE_BALANCE_VALUE_3500_K = 3The camera white balance value equal to 3500 K.Значение баланса белого камеры равно 3500 К.
CAMERA_WHITE_BALANCE_VALUE_4200_K = 4The camera white balance value equal to 4200 K.Значение баланса белого камеры равно 4200 К.
CAMERA_WHITE_BALANCE_VALUE_5000_K = 5The camera white balance value equal to 5000 K.Значение баланса белого камеры равно 5000 К.
CAMERA_WHITE_BALANCE_VALUE_5400_K = 6The camera white balance value equal to 5400 K.Значение баланса белого камеры равно 5400 К.
CAMERA_WHITE_BALANCE_VALUE_6500_K = 7The camera white balance value equal to 6500 K.Значение баланса белого камеры равно 6500 К.
CAMERA_WHITE_BALANCE_VALUE_8000_K = 8The camera white balance value equal to 8000 K.Значение баланса белого камеры равно 8000 К.
CAMERA_WHITE_BALANCE_VALUE_12000_K = 9The camera white balance value equal to 12000 K.Значение баланса белого камеры равно 12000 К.
CAMERA_WHITE_BALANCE_END = 9The last element to be used for iteration.Последний элемент, который будет использоваться для итерации.

CAMERA_ISO#

ИмяОписание
CAMERA_ISO_UNKNWON = 0The camera ISO value is not specified.Значение ISO камеры не указано.
CAMERA_ISO_BEGIN = 1The first element to be used for iteration.Первый элемент, который будет использоваться для итерации.
CAMERA_ISO_GAIN_100 = 1The camera ISO value equal to 100.Значение ISO камеры равно 100.
CAMERA_ISO_GAIN_200 = 2The camera ISO value equal to 200.Значение ISO камеры равно 200.
CAMERA_ISO_GAIN_400 = 3The camera ISO value equal to 400.Значение ISO камеры равно 400.
CAMERA_ISO_GAIN_800 = 4The camera ISO value equal to 800.Значение ISO камеры равно 800.
CAMERA_ISO_GAIN_1600 = 5The camera ISO value equal to 1600.Значение ISO камеры равно 1600.
CAMERA_ISO_GAIN_3200 = 6The camera ISO value equal to 3200.Значение ISO камеры равно 3200.
CAMERA_ISO_GAIN_6400 = 7The camera ISO value equal to 6400.Значение ISO камеры равно 6400.
CAMERA_ISO_END = 7The last element to be used for iteration.Последний элемент, который будет использоваться для итерации.

CAMERA_FLICKER_COMPENSATION#

ИмяОписание
CAMERA_FLICKER_COMPENSATION_UNKNWON = 0The camera flicker compensation value is not specified.Значение компенсации мерцания камеры не указано.
CAMERA_FLICKER_COMPENSATION_BEGIN = 1The first element to be used for iteration.Первый элемент, который будет использоваться для итерации.
CAMERA_FLICKER_COMPENSATION_FREQ_50_HZ = 1The camera flicker compensation value equal to 50 Hz.Значение компенсации мерцания камеры равно 50 Гц.
CAMERA_FLICKER_COMPENSATION_FREQ_60_HZ = 2The camera flicker compensation value equal to 60 Hz.Значение компенсации мерцания камеры равно 60 Гц.
CAMERA_FLICKER_COMPENSATION_END = 2The last element to be used for iteration.Последний элемент, который будет использоваться для итерации.

CUBEMAP_MODE#

ИмяОписание
CUBEMAP_MODE_BEGIN = 0The first element to be used for iteration.Первый элемент, который будет использоваться для итерации.
CUBEMAP_MODE_DISABLED = 0The cubemap streaming from AR cameras is disabled.Потоковая передача cubemap с камер дополненной реальности отключена.
CUBEMAP_MODE_ENVIRONMENT_OVERLAP = 1The environment texture substitutes the sky.Текстура окружающей среды заменяет небо.
CUBEMAP_MODE_ENVIRONMENT_PRESET_0 = 2The first environment preset defines the way the AR texture is set for the environment.Первая предустановка среды определяет способ настройки текстуры AR для среды.
CUBEMAP_MODE_ENVIRONMENT_PRESET_1 = 3The second environment preset defines the way the AR texture is set for the environment.Вторая предустановка среды определяет способ настройки текстуры AR для среды.
CUBEMAP_MODE_ENVIRONMENT_PRESET_2 = 4The third environment preset defines the way the AR texture is set for the environment.Третья предустановка среды определяет способ настройки текстуры AR для среды.
CUBEMAP_MODE_END = 4The last element to be used for iteration.Последний элемент, который будет использоваться для итерации.

OVERRIDE_COLOR_CORRECTION_MODE#

ИмяОписание
OVERRIDE_COLOR_CORRECTION_MODE_BEGIN = 0The first element to be used for iteration.Первый элемент, который будет использоваться для итерации.
OVERRIDE_COLOR_CORRECTION_MODE_DISABLED = 0The color correction is disabled.Цветокоррекция отключена.
OVERRIDE_COLOR_CORRECTION_MODE_EXPOSURE = 1Exposure correction for the stream from the AR cameras.Коррекция экспозиции для потока с камер дополненной реальности.
OVERRIDE_COLOR_CORRECTION_MODE_EXPOSURE_WHITE_BALANCE = 2Exposure and white balance correction for the stream.Коррекция экспозиции и баланса белого для потока.
OVERRIDE_COLOR_CORRECTION_MODE_END = 2The last element to be used for iteration.Последний элемент, который будет использоваться для итерации.

Члены класса

void setChromaKeyEnabled ( bool enabled ) #

Console: vr_mixed_reality_chroma_key_enabled
Устанавливает value indicating if chroma keying is enabled. VST capturing from HMD cameras must be enabled.значение, указывающее, включена ли цветовая манипуляция. Должна быть включена запись VST с камер HMD.

Аргументы

  • bool enabled - Set true to enable управление цветностью; false - to disable it. Значение по умолчанию false.

bool isChromaKeyEnabled() const#

Console: vr_mixed_reality_chroma_key_enabled
Возвращает value indicating if chroma keying is enabled. VST capturing from HMD cameras must be enabled.значение, указывающее, включена ли цветовая манипуляция. Должна быть включена запись VST с камер HMD.

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

true if управление цветностью is enabled; otherwise false. Значение по умолчанию false.

void setDepthTestEnabled ( bool enabled ) #

Console: vr_mixed_reality_depth_test_enabled
Устанавливает value indicating if depth buffer submission is enabled. VST capturing from HMD cameras must be enabled.значение, указывающее, включена ли отправка буфера глубины. Должна быть включена запись VST с камер HMD.

Аргументы

  • bool enabled - Set true to enable испытание на глубину; false - to disable it. Значение по умолчанию false.

bool isDepthTestEnabled() const#

Console: vr_mixed_reality_depth_test_enabled
Возвращает value indicating if depth buffer submission is enabled. VST capturing from HMD cameras must be enabled.значение, указывающее, включена ли отправка буфера глубины. Должна быть включена запись VST с камер HMD.

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

true if испытание на глубину is enabled; otherwise false. Значение по умолчанию false.

void setAlphaBlendEnabled ( bool enabled ) #

Console: vr_mixed_reality_alpha_blend_enabled
Устанавливает value indicating if alpha blending is enabled. This option is used for blending VR and AR images using the alpha channel. VST capturing from HMD cameras must be enabled and the screen precision must be 1.значение, указывающее, включено ли альфа-смешивание. Эта опция используется для смешивания изображений виртуальной и дополненной реальности с использованием альфа-канала. Запись VST с камер HMD должна быть включена, а точность отображения должна быть равна 1.

Аргументы

  • bool enabled - Set true to enable альфа-смешивание; false - to disable it. Значение по умолчанию false.

bool isAlphaBlendEnabled() const#

Console: vr_mixed_reality_alpha_blend_enabled
Возвращает value indicating if alpha blending is enabled. This option is used for blending VR and AR images using the alpha channel. VST capturing from HMD cameras must be enabled and the screen precision must be 1.значение, указывающее, включено ли альфа-смешивание. Эта опция используется для смешивания изображений виртуальной и дополненной реальности с использованием альфа-канала. Запись VST с камер HMD должна быть включена, а точность отображения должна быть равна 1.

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

true if альфа-смешивание is enabled; otherwise false. Значение по умолчанию false.

void setVideoEnabled ( bool enabled ) #

Console: vr_mixed_reality_video_enabled
Устанавливает value indicating if the video signal from the real-world view from the front-facing HMD-mounted cameras is enabled. The real-world view is used for combining virtual and real-world elements to create an immersive experience in mixed reality.значение, указывающее, включен ли видеосигнал реального изображения с фронтальных камер, установленных на HMD. Изображение реального мира используется для объединения элементов виртуального и реального мира для создания эффекта погружения в смешанную реальность.

Аргументы

  • bool enabled - Set true to enable изображение реального мира с фронтальных камер, установленных на HMD; false - to disable it. Значение по умолчанию false.

bool isVideoEnabled() const#

Console: vr_mixed_reality_video_enabled
Возвращает value indicating if the video signal from the real-world view from the front-facing HMD-mounted cameras is enabled. The real-world view is used for combining virtual and real-world elements to create an immersive experience in mixed reality.значение, указывающее, включен ли видеосигнал реального изображения с фронтальных камер, установленных на HMD. Изображение реального мира используется для объединения элементов виртуального и реального мира для создания эффекта погружения в смешанную реальность.

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

true if изображение реального мира с фронтальных камер, установленных на HMD is enabled; otherwise false. Значение по умолчанию false.

void setDepthTestRangeEnabled ( bool enabled ) #

Console: vr_mixed_reality_depth_test_range_enabled
Устанавливает value indicating if the depth test range usage is enabled. Use the depth test range (Depth Test Near Z, Depth Test Far Z) to control the range for which the depth test is evaluated.значение, указывающее, включено ли использование диапазона проверки глубины. Используйте диапазон проверки глубины (Depth Test Near Z, Depth Test Far Z) для управления диапазоном, для которого оценивается тест глубины.

Аргументы

  • bool enabled - Set true to enable диапазон измерения глубины; false - to disable it. Значение по умолчанию false.

bool isDepthTestRangeEnabled() const#

Console: vr_mixed_reality_depth_test_range_enabled
Возвращает value indicating if the depth test range usage is enabled. Use the depth test range (Depth Test Near Z, Depth Test Far Z) to control the range for which the depth test is evaluated.значение, указывающее, включено ли использование диапазона проверки глубины. Используйте диапазон проверки глубины (Depth Test Near Z, Depth Test Far Z) для управления диапазоном, для которого оценивается тест глубины.

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

true if диапазон измерения глубины is enabled; otherwise false. Значение по умолчанию false.

void setDepthTestRange ( const Math::vec2& range ) #

Console: vr_mixed_reality_depth_test_range
Устанавливает depth test range as a two-component vector (the near and far planes). The depth test range usage must be enabled.диапазон измерения глубины в виде двухкомпонентного вектора (ближняя и дальняя плоскости). Необходимо включить использование диапазона измерения глубины.

Аргументы

  • const Math::vec2& range - диапазон глубинных испытаний.
    vec2(0.0f, 1.0f) - значение по умолчанию

Math::vec2 getDepthTestRange() const#

Console: vr_mixed_reality_depth_test_range
Возвращает depth test range as a two-component vector (the near and far planes). The depth test range usage must be enabled.диапазон измерения глубины в виде двухкомпонентного вектора (ближняя и дальняя плоскости). Необходимо включить использование диапазона измерения глубины.

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

диапазон глубинных испытаний.
vec2(0.0f, 1.0f) - значение по умолчанию

getChromaKeyConfigNum() const#

Возвращает number of chroma key config indices supported. The maximum index will be count-1.количество поддерживаемых индексов конфигурации цветового ключа. Максимальный индекс будет равен count-1.

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

количество индексов конфигурации цветового ключа.

void setBlendMaskingMode ( VRMixedReality::BLEND_MASKING_MODE mode ) #

Console: vr_mixed_reality_blend_masking_mode
Устанавливает mode of the Blend Control Mask that can be used to extend or restrict the chroma key mask or to control the depth testing against the estimated video depth.режим Blend Control Mask, который можно использовать для расширения или ограничения маски цветности или для управления тестированием глубины по сравнению с расчетной глубиной видео.

Аргументы

  • VRMixedReality::BLEND_MASKING_MODE mode - режим маскировки. Одно из следующих значений:
    • 0 - Отключено (режим маскировки отключен). (по умолчанию)
    • 1 - Ограничить видео маской (показывать сквозное изображение видео (VST) в маске; можно использовать с цветовой клавишей)
    • 2 - Ограничить VR маской (показывать VR в маске; можно использовать с цветовой клавишей)
    • 3 - Ограничить VR хромакеем, уменьшенным по маске (показывать VR в маске и цветность в другом месте; требуется цветовой ключ)

VRMixedReality::BLEND_MASKING_MODE getBlendMaskingMode() const#

Console: vr_mixed_reality_blend_masking_mode
Возвращает mode of the Blend Control Mask that can be used to extend or restrict the chroma key mask or to control the depth testing against the estimated video depth.режим Blend Control Mask, который можно использовать для расширения или ограничения маски цветности или для управления тестированием глубины по сравнению с расчетной глубиной видео.

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

режим маскировки. Одно из следующих значений:
  • 0 - Отключено (режим маскировки отключен). (по умолчанию)
  • 1 - Ограничить видео маской (показывать сквозное изображение видео (VST) в маске; можно использовать с цветовой клавишей)
  • 2 - Ограничить VR маской (показывать VR в маске; можно использовать с цветовой клавишей)
  • 3 - Ограничить VR хромакеем, уменьшенным по маске (показывать VR в маске и цветность в другом месте; требуется цветовой ключ)

void setBlendMaskingDebugEnabled ( bool enabled ) #

Console: vr_mixed_reality_blend_masking_debug_enabled
Устанавливает value indicating if blend masking debug visualization is enabled. The blend masking mode must be enabled.значение, указывающее, включена ли визуализация отладки с маскировкой наложения. Должен быть включен режим маскировки наложением.

Аргументы

  • bool enabled - Set true to enable наложение маскировки визуализация отладки; false - to disable it. Значение по умолчанию false.

bool isBlendMaskingDebugEnabled() const#

Console: vr_mixed_reality_blend_masking_debug_enabled
Возвращает value indicating if blend masking debug visualization is enabled. The blend masking mode must be enabled.значение, указывающее, включена ли визуализация отладки с маскировкой наложения. Должен быть включен режим маскировки наложением.

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

true if наложение маскировки визуализация отладки is enabled; otherwise false. Значение по умолчанию false.

bool isBlendMaskingUsed() const#

Возвращает value indicating if the Blend Control Mask is used to extend or restrict the chroma key mask or to control the depth testing against the estimated video depth.значение, указывающее, используется ли Blend Control Mask для расширения или ограничения маски цветности или для управления тестированием глубины по сравнению с расчетной глубиной видео.

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

true if используется маска для смешивания; otherwise false.

Ptr<Texture> getCurrentBlendMaskColorBuffer() const#

Возвращает image representing the current color buffer of the Blend Control Mask.изображение, представляющее текущий цветовой буфер Blend Control Mask.

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

цветовой буфер.

void setCameraExposureTimeRaw ( ) #

Устанавливает exposure time value for the camera.значение времени экспозиции для камеры.

Аргументы

  • raw - время экспозиции в кадрах в секунду (например, 90,0 -> ~11 мс).

getCameraExposureTimeRaw() const#

Возвращает exposure time value for the camera.значение времени экспозиции для камеры.

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

время экспозиции в кадрах в секунду (например, 90,0 -> ~11 мс).

void setCameraExposureTime ( VRMixedReality::CAMERA_EXPOSURE_TIME time ) #

Console: vr_mixed_reality_camera_exposure_time
Устанавливает exposure time value that is valid for the connected device.значение времени экспозиции, действительное для подключенного устройства.

Аргументы


VRMixedReality::CAMERA_EXPOSURE_TIME getCameraExposureTime() const#

Console: vr_mixed_reality_camera_exposure_time
Возвращает exposure time value that is valid for the connected device.значение времени экспозиции, действительное для подключенного устройства.

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

допустимое значение времени экспозиции для подключенного устройства.

void setCameraExposureTimeMode ( VRMixedReality::CAMERA_PROPERTY_MODE mode ) #

Console: vr_mixed_reality_camera_exposure_time_mode
Устанавливает exposure adjustment mode for the camera.режим настройки экспозиции для фотокамеры.

Аргументы

  • VRMixedReality::CAMERA_PROPERTY_MODE mode - режим регулировки экспозиции. Одно из следующих значений:
    • 0 - регулировка экспозиции отключена
    • 1 - автоматическая регулировка экспозиции (по умолчанию)
    • 2 - ручная регулировка экспозиции

VRMixedReality::CAMERA_PROPERTY_MODE getCameraExposureTimeMode() const#

Console: vr_mixed_reality_camera_exposure_time_mode
Возвращает exposure adjustment mode for the camera.режим настройки экспозиции для фотокамеры.

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

режим регулировки экспозиции. Одно из следующих значений:
  • 0 - регулировка экспозиции отключена
  • 1 - автоматическая регулировка экспозиции (по умолчанию)
  • 2 - ручная регулировка экспозиции

void setCameraWhiteBalanceRaw ( ) #

Устанавливает white balance correction value that is valid for the connected device.значение коррекции баланса белого, действительное для подключенного устройства.

Аргументы

  • raw - значение цветовой температуры.

getCameraWhiteBalanceRaw() const#

Возвращает white balance correction value that is valid for the connected device.значение коррекции баланса белого, действительное для подключенного устройства.

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

значение цветовой температуры.

void setCameraWhiteBalance ( VRMixedReality::CAMERA_WHITE_BALANCE balance ) #

Console: vr_mixed_reality_camera_white_balance
Устанавливает white balance correction value that is valid for the connected device.значение коррекции баланса белого, действительное для подключенного устройства.

Аргументы


VRMixedReality::CAMERA_WHITE_BALANCE getCameraWhiteBalance() const#

Console: vr_mixed_reality_camera_white_balance
Возвращает white balance correction value that is valid for the connected device.значение коррекции баланса белого, действительное для подключенного устройства.

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

значение цветовой температуры.

void setCameraWhiteBalanceMode ( VRMixedReality::CAMERA_PROPERTY_MODE mode ) #

Console: vr_mixed_reality_camera_white_balance_mode
Устанавливает white balance adjustment mode for the camera.режим настройки баланса белого для фотокамеры.

Аргументы

  • VRMixedReality::CAMERA_PROPERTY_MODE mode - режим регулировки баланса белого. Одно из следующих значений:
    • 0 - регулировка баланса белого отключена
    • 1 - автоматическая регулировка баланса белого (по умолчанию)
    • 2 - ручная регулировка баланса белого

VRMixedReality::CAMERA_PROPERTY_MODE getCameraWhiteBalanceMode() const#

Console: vr_mixed_reality_camera_white_balance_mode
Возвращает white balance adjustment mode for the camera.режим настройки баланса белого для фотокамеры.

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

режим регулировки баланса белого. Одно из следующих значений:
  • 0 - регулировка баланса белого отключена
  • 1 - автоматическая регулировка баланса белого (по умолчанию)
  • 2 - ручная регулировка баланса белого

void setCameraISORaw ( ) #

Устанавливает ISO value that is valid for the connected device.Значение ISO, действительное для подключенного устройства.

Аргументы

  • isoraw - Значение ISO (например, "200" -> ISO200).

getCameraISORaw() const#

Возвращает ISO value that is valid for the connected device.Значение ISO, действительное для подключенного устройства.

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

Значение ISO (например, "200" -> ISO200).

void setCameraISO ( VRMixedReality::CAMERA_ISO iso ) #

Console: vr_mixed_reality_camera_iso
Устанавливает ISO value for the camera.Значение ISO для камеры.

Аргументы


VRMixedReality::CAMERA_ISO getCameraISO() const#

Console: vr_mixed_reality_camera_iso
Возвращает ISO value for the camera.Значение ISO для камеры.

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

Значение ISO.

void setCameraISOMode ( VRMixedReality::CAMERA_PROPERTY_MODE isomode ) #

Console: vr_mixed_reality_camera_iso_mode
Устанавливает ISO adjustment mode for the camera.Режим настройки ISO для камеры.

Аргументы

  • VRMixedReality::CAMERA_PROPERTY_MODE isomode - Режим настройки ISO. Одно из следующих значений:
    • 0 - Настройка ISO отключена
    • 1 - автоматическая настройка ISO (по умолчанию)
    • 2 - ручная настройка ISO

VRMixedReality::CAMERA_PROPERTY_MODE getCameraISOMode() const#

Console: vr_mixed_reality_camera_iso_mode
Возвращает ISO adjustment mode for the camera.Режим настройки ISO для камеры.

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

Режим настройки ISO. Одно из следующих значений:
  • 0 - Настройка ISO отключена
  • 1 - автоматическая настройка ISO (по умолчанию)
  • 2 - ручная настройка ISO

void setCameraFlickerCompensationRaw ( ) #

Устанавливает flicker compensation value for the camera. This is useful when using the HMD indoors with mostly artificial light bulbs, which flicker at the frequency of 50Hz or 60Hz and can cause visual flicker artifacts on the video see through image. The correct setting depends on the underlying power grid's frequency. For example, in most parts of Africa/Asia/Australia/Europe the frequency is 50 Hz and in most parts of North and South America 60 Hz.значение компенсации мерцания для камеры. Это полезно при использовании HMD в помещении, где в основном используются лампы искусственного освещения, которые мерцают с частотой 50 Гц или 60 Гц и могут вызывать визуальные артефакты мерцания на прозрачном изображении видео. Правильная настройка зависит от частоты базовой электросети. Например, в большинстве районов Африки/Азии/Австралии/Европы частота составляет 50 Гц, а в большинстве районов Северной и Южной Америки - 60 Гц.

Аргументы

  • raw - компенсация мерцания в Гц.

getCameraFlickerCompensationRaw() const#

Возвращает flicker compensation value for the camera. This is useful when using the HMD indoors with mostly artificial light bulbs, which flicker at the frequency of 50Hz or 60Hz and can cause visual flicker artifacts on the video see through image. The correct setting depends on the underlying power grid's frequency. For example, in most parts of Africa/Asia/Australia/Europe the frequency is 50 Hz and in most parts of North and South America 60 Hz.значение компенсации мерцания для камеры. Это полезно при использовании HMD в помещении, где в основном используются лампы искусственного освещения, которые мерцают с частотой 50 Гц или 60 Гц и могут вызывать визуальные артефакты мерцания на прозрачном изображении видео. Правильная настройка зависит от частоты базовой электросети. Например, в большинстве районов Африки/Азии/Австралии/Европы частота составляет 50 Гц, а в большинстве районов Северной и Южной Америки - 60 Гц.

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

компенсация мерцания в Гц.

void setCameraFlickerCompensation ( VRMixedReality::CAMERA_FLICKER_COMPENSATION compensation ) #

Console: vr_mixed_reality_camera_flicker_compensation
Устанавливает flicker compensation value for the camera. This is useful when using the HMD indoors with mostly artificial light bulbs, which flicker at the frequency of 50Hz or 60Hz and can cause visual flicker artifacts on the video see through image. The correct setting depends on the underlying power grid's frequency. For example, in most parts of Africa/Asia/Australia/Europe the frequency is 50 Hz and in most parts of North and South America 60 Hz. значение компенсации мерцания для камеры. Это полезно при использовании HMD в помещении, где в основном используются лампы искусственного освещения, которые мерцают с частотой 50 Гц или 60 Гц и могут вызывать визуальные артефакты мерцания на прозрачном изображении видео. Правильная настройка зависит от частоты базовой электросети. Например, в большинстве районов Африки/Азии/Австралии/Европы частота составляет 50 Гц, а в большинстве районов Северной и Южной Америки - 60 Гц.

Аргументы


VRMixedReality::CAMERA_FLICKER_COMPENSATION getCameraFlickerCompensation() const#

Console: vr_mixed_reality_camera_flicker_compensation
Возвращает flicker compensation value for the camera. This is useful when using the HMD indoors with mostly artificial light bulbs, which flicker at the frequency of 50Hz or 60Hz and can cause visual flicker artifacts on the video see through image. The correct setting depends on the underlying power grid's frequency. For example, in most parts of Africa/Asia/Australia/Europe the frequency is 50 Hz and in most parts of North and South America 60 Hz. значение компенсации мерцания для камеры. Это полезно при использовании HMD в помещении, где в основном используются лампы искусственного освещения, которые мерцают с частотой 50 Гц или 60 Гц и могут вызывать визуальные артефакты мерцания на прозрачном изображении видео. Правильная настройка зависит от частоты базовой электросети. Например, в большинстве районов Африки/Азии/Австралии/Европы частота составляет 50 Гц, а в большинстве районов Северной и Южной Америки - 60 Гц.

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

компенсация мерцания.

getCameraMinSharpness() const#

Возвращает minimum possible value for the camera sharpness.минимально возможное значение для резкости камеры.

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

минимально возможное значение резкости камеры.

getCameraMaxSharpness() const#

Возвращает maximum possible value for the camera sharpness.максимально возможное значение для резкости камеры.

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

максимально возможное значение резкости камеры.

void setCameraSharpness ( ) #

Console: vr_mixed_reality_camera_sharpness
Устанавливает sharpness filter power value for the camera.значение мощности фильтра резкости для камеры.

Аргументы

  • sharpness - значение мощности фильтра резкости: наименьшее значение соответствует небольшому объему фильтрации, а наибольшее значение соответствует наибольшему объему фильтрации.
    Диапазон значений: [0, 10]. Значение по умолчанию : 0.

getCameraSharpness() const#

Console: vr_mixed_reality_camera_sharpness
Возвращает sharpness filter power value for the camera.значение мощности фильтра резкости для камеры.

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

значение мощности фильтра резкости: наименьшее значение соответствует небольшому объему фильтрации, а наибольшее значение соответствует наибольшему объему фильтрации.
Диапазон значений: [0, 10]. Значение по умолчанию : 0.

void setViewOffset ( ) #

Console: vr_mixed_reality_view_offset
Устанавливает eyes view offset (where eye camera should be positioned when using Mixed Reality):
  • 0 for physical eye position0 for physical eye position
  • 1 for VST camera position1 for VST camera position
0 for physical eye position1 for VST camera position
глаза смещение обзора (где должна располагаться камера eye при использовании смешанной реальности):
  • 0 for physical eye position 0 для физического положения глаз
  • 1 for VST camera position 1 для положения камеры VST

Аргументы

  • offset - смещение вида.
    Диапазон значений: [0.0, 1.0]. Значение по умолчанию : 0.0.

getViewOffset() const#

Console: vr_mixed_reality_view_offset
Возвращает eyes view offset (where eye camera should be positioned when using Mixed Reality):
  • 0 for physical eye position0 for physical eye position
  • 1 for VST camera position1 for VST camera position
0 for physical eye position1 for VST camera position
глаза смещение обзора (где должна располагаться камера eye при использовании смешанной реальности):
  • 0 for physical eye position 0 для физического положения глаз
  • 1 for VST camera position 1 для положения камеры VST

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

смещение вида.
Диапазон значений: [0.0, 1.0]. Значение по умолчанию : 0.0.

void setMarkerTrackingEnabled ( bool enabled ) #

Console: vr_mixed_reality_marker_tracking_enabled
Устанавливает value indicating if marker tracking is enabled.значение, указывающее, включено ли отслеживание маркера.

Аргументы

  • bool enabled - Set true to enable отслеживание маркера; false - to disable it. Значение по умолчанию false.

bool isMarkerTrackingEnabled() const#

Console: vr_mixed_reality_marker_tracking_enabled
Возвращает value indicating if marker tracking is enabled.значение, указывающее, включено ли отслеживание маркера.

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

true if отслеживание маркера is enabled; otherwise false. Значение по умолчанию false.

getNumMarkerObjectVisible() const#

Возвращает number of visible marker objects.количество видимых объектов-маркеров.

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

количество видимых объектов-маркеров.

void setCubemapMode ( VRMixedReality::CUBEMAP_MODE mode ) #

Console: vr_mixed_reality_cubemap_mode
Устанавливает mode defining the way the AR texture is set for the environment.режим, определяющий способ настройки текстуры AR для окружающей среды.

Аргументы

  • VRMixedReality::CUBEMAP_MODE mode - режим кубической карты. Одно из следующих значений:
    • 0 - потоковая передача cubemap с камер дополненной реальности отключена.
    • 1 - текстура окружающей среды заменяет небо.
    • 2 - первая предустановка среды определяет способ настройки текстуры AR для среды. (по умолчанию)
    • 3 - вторая предустановка окружения определяет способ настройки текстуры AR для окружения.
    • 4 - третья предустановка среды определяет способ настройки текстуры AR для среды.

VRMixedReality::CUBEMAP_MODE getCubemapMode() const#

Console: vr_mixed_reality_cubemap_mode
Возвращает mode defining the way the AR texture is set for the environment.режим, определяющий способ настройки текстуры AR для окружающей среды.

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

режим кубической карты. Одно из следующих значений:
  • 0 - потоковая передача cubemap с камер дополненной реальности отключена.
  • 1 - текстура окружающей среды заменяет небо.
  • 2 - первая предустановка среды определяет способ настройки текстуры AR для среды. (по умолчанию)
  • 3 - вторая предустановка окружения определяет способ настройки текстуры AR для окружения.
  • 4 - третья предустановка среды определяет способ настройки текстуры AR для среды.

void setCubemapGGXQuality ( Render::GGX_MIPMAPS_QUALITY ggxquality ) #

Console: vr_mixed_reality_cubemap_ggx_quality
Устанавливает quality of the generated GGX mips for the AR cubemap.качество сгенерированных GGX mips для AR cubemap.

Аргументы

  • Render::GGX_MIPMAPS_QUALITY ggxquality - качество mip-карт GGX. Одно из следующих значений:
    • 0 - низкий
    • 1 - средний (по умолчанию)
    • 2 - высокий
    • 3 - крайне

Render::GGX_MIPMAPS_QUALITY getCubemapGGXQuality() const#

Console: vr_mixed_reality_cubemap_ggx_quality
Возвращает quality of the generated GGX mips for the AR cubemap.качество сгенерированных GGX mips для AR cubemap.

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

качество mip-карт GGX. Одно из следующих значений:
  • 0 - низкий
  • 1 - средний (по умолчанию)
  • 2 - высокий
  • 3 - крайне

void setOverrideColorCorrectionMode ( VRMixedReality::OVERRIDE_COLOR_CORRECTION_MODE mode ) #

Console: vr_mixed_reality_override_color_correction_mode
Устанавливает color correction mode for the stream from the AR cameras.режим цветокоррекции для потока с камер дополненной реальности.

Аргументы

  • VRMixedReality::OVERRIDE_COLOR_CORRECTION_MODE mode - режим цветокоррекции. Одно из следующих значений:
    • 0 - коррекция отключена. (по умолчанию)
    • 1 - коррекция экспозиции для потока с камер дополненной реальности.
    • 2 - коррекция экспозиции и баланса белого для потока.

VRMixedReality::OVERRIDE_COLOR_CORRECTION_MODE getOverrideColorCorrectionMode() const#

Console: vr_mixed_reality_override_color_correction_mode
Возвращает color correction mode for the stream from the AR cameras.режим цветокоррекции для потока с камер дополненной реальности.

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

режим цветокоррекции. Одно из следующих значений:
  • 0 - коррекция отключена. (по умолчанию)
  • 1 - коррекция экспозиции для потока с камер дополненной реальности.
  • 2 - коррекция экспозиции и баланса белого для потока.

Event<> getEventCameraPropertyUpdateSharpness() const#

Event triggered when the sharpness value of the camera is changed in Varjo Base. You can subscribe to events via connect()  and unsubscribe via disconnect(). You can also use EventConnection  and EventConnections  classes for convenience (see examples below).
Примечание
For more details see the Event Handling article.For more details see the Event Handling article.
For more details see the Event Handling article.
Событие запускается при изменении резкости камеры в Varjo Base. Вы можете подписаться на события через connect()   и отказаться от подписки через disconnect(). Вы также можете использовать EventConnection   и EventConnections  классы для удобства (см. примеры ниже).
Примечание
For more details see the Event Handling article.Для получения более подробной информации смотрите статью Обработка событий.
The event handler signature is as follows: myhandler()

Usage Example

Исходный код (C++)
// implement the CameraPropertyUpdateSharpness event handler
void camerapropertyupdatesharpness_event_handler()
{
	Log::message("\Handling CameraPropertyUpdateSharpness event\n");
}


//////////////////////////////////////////////////////////////////////////////
//  1. Multiple subscriptions can be linked to an instance of the EventConnections 
//  class that you can use later to remove all these subscriptions at once
//////////////////////////////////////////////////////////////////////////////

// create an instance of the EventConnections class
EventConnections camerapropertyupdatesharpness_event_connections;

// link to this instance when subscribing for an event (subscription for various events can be linked)
VRMixedReality::getEventCameraPropertyUpdateSharpness().connect(camerapropertyupdatesharpness_event_connections, camerapropertyupdatesharpness_event_handler);

// other subscriptions are also linked to this EventConnections instance 
// (e.g. you can subscribe using lambdas)
VRMixedReality::getEventCameraPropertyUpdateSharpness().connect(camerapropertyupdatesharpness_event_connections, []() { 
		Log::message("\Handling CameraPropertyUpdateSharpness event (lambda).\n");
	}
);

// ...

// later all of these linked subscriptions can be removed with a single line
camerapropertyupdatesharpness_event_connections.disconnectAll();

//////////////////////////////////////////////////////////////////////////////
//  2. You can subscribe and unsubscribe via an instance of the EventConnection 
//  class. And toggle this particular connection off and on, when necessary.
//////////////////////////////////////////////////////////////////////////////

// create an instance of the EventConnection class
EventConnection camerapropertyupdatesharpness_event_connection;

// subscribe for the CameraPropertyUpdateSharpness event with a handler function keeping the connection
VRMixedReality::getEventCameraPropertyUpdateSharpness().connect(camerapropertyupdatesharpness_event_connection, camerapropertyupdatesharpness_event_handler);

// ...

// you can temporarily disable a particular event connection to perform certain actions
camerapropertyupdatesharpness_event_connection.setEnabled(false);

// ... actions to be performed

// and enable it back when necessary
camerapropertyupdatesharpness_event_connection.setEnabled(true);

// ...

// remove subscription for the CameraPropertyUpdateSharpness event via the connection
camerapropertyupdatesharpness_event_connection.disconnect();

//////////////////////////////////////////////////////////////////////////////
//  3. You can add EventConnection/EventConnections instance as a member of the
//  class that handles the event. In this case all linked subscriptions will be 
//  automatically removed when class destructor is called
//////////////////////////////////////////////////////////////////////////////

// Class handling the event
class SomeClass
{
public:
	// instance of the EventConnections class as a class member
	EventConnections e_connections;

	// A CameraPropertyUpdateSharpness event handler implemented as a class member
	void event_handler()
	{
		Log::message("\Handling CameraPropertyUpdateSharpness event\n");
		// ...
	}
};

SomeClass *sc = new SomeClass();

// ...

// specify a class instance in case a handler method belongs to some class
VRMixedReality::getEventCameraPropertyUpdateSharpness().connect(sc->e_connections, sc, &SomeClass::event_handler);

// ...

// handler class instance is deleted with all its subscriptions removed automatically
delete sc;

//////////////////////////////////////////////////////////////////////////////
//  4. You can subscribe and unsubscribe via the handler function directly
//////////////////////////////////////////////////////////////////////////////

// subscribe for the CameraPropertyUpdateSharpness event with a handler function
VRMixedReality::getEventCameraPropertyUpdateSharpness().connect(camerapropertyupdatesharpness_event_handler);


// remove subscription for the CameraPropertyUpdateSharpness event later by the handler function
VRMixedReality::getEventCameraPropertyUpdateSharpness().disconnect(camerapropertyupdatesharpness_event_handler);


//////////////////////////////////////////////////////////////////////////////
//   5. Subscribe to an event saving an ID and unsubscribe later by this ID
//////////////////////////////////////////////////////////////////////////////

// define a connection ID to be used to unsubscribe later
EventConnectionId camerapropertyupdatesharpness_handler_id;

// subscribe for the CameraPropertyUpdateSharpness event with a lambda handler function and keeping connection ID
camerapropertyupdatesharpness_handler_id = VRMixedReality::getEventCameraPropertyUpdateSharpness().connect([]() { 
		Log::message("\Handling CameraPropertyUpdateSharpness event (lambda).\n");
	}
);

// remove the subscription later using the ID
VRMixedReality::getEventCameraPropertyUpdateSharpness().disconnect(camerapropertyupdatesharpness_handler_id);


//////////////////////////////////////////////////////////////////////////////
//   6. Ignoring all CameraPropertyUpdateSharpness events when necessary
//////////////////////////////////////////////////////////////////////////////

// you can temporarily disable the event to perform certain actions without triggering it
VRMixedReality::getEventCameraPropertyUpdateSharpness().setEnabled(false);

// ... actions to be performed

// and enable it back when necessary
VRMixedReality::getEventCameraPropertyUpdateSharpness().setEnabled(true);

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

Event reference.

Event<> getEventCameraPropertyUpdateFlickerCompensation() const#

Event triggered when the flicker compensation value of the camera is changed in Varjo Base. You can subscribe to events via connect()  and unsubscribe via disconnect(). You can also use EventConnection  and EventConnections  classes for convenience (see examples below).
Примечание
For more details see the Event Handling article.For more details see the Event Handling article.
For more details see the Event Handling article.
Событие запускается при изменении значения компенсации мерцания камеры в Varjo Base. Вы можете подписаться на события через connect()   и отказаться от подписки через disconnect(). Вы также можете использовать EventConnection   и EventConnections  классы для удобства (см. примеры ниже).
Примечание
For more details see the Event Handling article.Для получения более подробной информации смотрите статью Обработка событий.
The event handler signature is as follows: myhandler()

Usage Example

Исходный код (C++)
// implement the CameraPropertyUpdateFlickerCompensation event handler
void camerapropertyupdateflickercompensation_event_handler()
{
	Log::message("\Handling CameraPropertyUpdateFlickerCompensation event\n");
}


//////////////////////////////////////////////////////////////////////////////
//  1. Multiple subscriptions can be linked to an instance of the EventConnections 
//  class that you can use later to remove all these subscriptions at once
//////////////////////////////////////////////////////////////////////////////

// create an instance of the EventConnections class
EventConnections camerapropertyupdateflickercompensation_event_connections;

// link to this instance when subscribing for an event (subscription for various events can be linked)
VRMixedReality::getEventCameraPropertyUpdateFlickerCompensation().connect(camerapropertyupdateflickercompensation_event_connections, camerapropertyupdateflickercompensation_event_handler);

// other subscriptions are also linked to this EventConnections instance 
// (e.g. you can subscribe using lambdas)
VRMixedReality::getEventCameraPropertyUpdateFlickerCompensation().connect(camerapropertyupdateflickercompensation_event_connections, []() { 
		Log::message("\Handling CameraPropertyUpdateFlickerCompensation event (lambda).\n");
	}
);

// ...

// later all of these linked subscriptions can be removed with a single line
camerapropertyupdateflickercompensation_event_connections.disconnectAll();

//////////////////////////////////////////////////////////////////////////////
//  2. You can subscribe and unsubscribe via an instance of the EventConnection 
//  class. And toggle this particular connection off and on, when necessary.
//////////////////////////////////////////////////////////////////////////////

// create an instance of the EventConnection class
EventConnection camerapropertyupdateflickercompensation_event_connection;

// subscribe for the CameraPropertyUpdateFlickerCompensation event with a handler function keeping the connection
VRMixedReality::getEventCameraPropertyUpdateFlickerCompensation().connect(camerapropertyupdateflickercompensation_event_connection, camerapropertyupdateflickercompensation_event_handler);

// ...

// you can temporarily disable a particular event connection to perform certain actions
camerapropertyupdateflickercompensation_event_connection.setEnabled(false);

// ... actions to be performed

// and enable it back when necessary
camerapropertyupdateflickercompensation_event_connection.setEnabled(true);

// ...

// remove subscription for the CameraPropertyUpdateFlickerCompensation event via the connection
camerapropertyupdateflickercompensation_event_connection.disconnect();

//////////////////////////////////////////////////////////////////////////////
//  3. You can add EventConnection/EventConnections instance as a member of the
//  class that handles the event. In this case all linked subscriptions will be 
//  automatically removed when class destructor is called
//////////////////////////////////////////////////////////////////////////////

// Class handling the event
class SomeClass
{
public:
	// instance of the EventConnections class as a class member
	EventConnections e_connections;

	// A CameraPropertyUpdateFlickerCompensation event handler implemented as a class member
	void event_handler()
	{
		Log::message("\Handling CameraPropertyUpdateFlickerCompensation event\n");
		// ...
	}
};

SomeClass *sc = new SomeClass();

// ...

// specify a class instance in case a handler method belongs to some class
VRMixedReality::getEventCameraPropertyUpdateFlickerCompensation().connect(sc->e_connections, sc, &SomeClass::event_handler);

// ...

// handler class instance is deleted with all its subscriptions removed automatically
delete sc;

//////////////////////////////////////////////////////////////////////////////
//  4. You can subscribe and unsubscribe via the handler function directly
//////////////////////////////////////////////////////////////////////////////

// subscribe for the CameraPropertyUpdateFlickerCompensation event with a handler function
VRMixedReality::getEventCameraPropertyUpdateFlickerCompensation().connect(camerapropertyupdateflickercompensation_event_handler);


// remove subscription for the CameraPropertyUpdateFlickerCompensation event later by the handler function
VRMixedReality::getEventCameraPropertyUpdateFlickerCompensation().disconnect(camerapropertyupdateflickercompensation_event_handler);


//////////////////////////////////////////////////////////////////////////////
//   5. Subscribe to an event saving an ID and unsubscribe later by this ID
//////////////////////////////////////////////////////////////////////////////

// define a connection ID to be used to unsubscribe later
EventConnectionId camerapropertyupdateflickercompensation_handler_id;

// subscribe for the CameraPropertyUpdateFlickerCompensation event with a lambda handler function and keeping connection ID
camerapropertyupdateflickercompensation_handler_id = VRMixedReality::getEventCameraPropertyUpdateFlickerCompensation().connect([]() { 
		Log::message("\Handling CameraPropertyUpdateFlickerCompensation event (lambda).\n");
	}
);

// remove the subscription later using the ID
VRMixedReality::getEventCameraPropertyUpdateFlickerCompensation().disconnect(camerapropertyupdateflickercompensation_handler_id);


//////////////////////////////////////////////////////////////////////////////
//   6. Ignoring all CameraPropertyUpdateFlickerCompensation events when necessary
//////////////////////////////////////////////////////////////////////////////

// you can temporarily disable the event to perform certain actions without triggering it
VRMixedReality::getEventCameraPropertyUpdateFlickerCompensation().setEnabled(false);

// ... actions to be performed

// and enable it back when necessary
VRMixedReality::getEventCameraPropertyUpdateFlickerCompensation().setEnabled(true);

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

Event reference.

Event<> getEventCameraPropertyUpdateISO() const#

Event triggered when the camera ISO value and/or the ISO adjustment mode are changed in Varjo Base. You can subscribe to events via connect()  and unsubscribe via disconnect(). You can also use EventConnection  and EventConnections  classes for convenience (see examples below).
Примечание
For more details see the Event Handling article.For more details see the Event Handling article.
For more details see the Event Handling article.
Событие запускается при изменении значения и/или режима настройки ISO камеры в Varjo Base. Вы можете подписаться на события через connect()   и отказаться от подписки через disconnect(). Вы также можете использовать EventConnection   и EventConnections  классы для удобства (см. примеры ниже).
Примечание
For more details see the Event Handling article.Для получения более подробной информации смотрите статью Обработка событий.
The event handler signature is as follows: myhandler()

Usage Example

Исходный код (C++)
// implement the CameraPropertyUpdateISO event handler
void camerapropertyupdateiso_event_handler()
{
	Log::message("\Handling CameraPropertyUpdateISO event\n");
}


//////////////////////////////////////////////////////////////////////////////
//  1. Multiple subscriptions can be linked to an instance of the EventConnections 
//  class that you can use later to remove all these subscriptions at once
//////////////////////////////////////////////////////////////////////////////

// create an instance of the EventConnections class
EventConnections camerapropertyupdateiso_event_connections;

// link to this instance when subscribing for an event (subscription for various events can be linked)
VRMixedReality::getEventCameraPropertyUpdateISO().connect(camerapropertyupdateiso_event_connections, camerapropertyupdateiso_event_handler);

// other subscriptions are also linked to this EventConnections instance 
// (e.g. you can subscribe using lambdas)
VRMixedReality::getEventCameraPropertyUpdateISO().connect(camerapropertyupdateiso_event_connections, []() { 
		Log::message("\Handling CameraPropertyUpdateISO event (lambda).\n");
	}
);

// ...

// later all of these linked subscriptions can be removed with a single line
camerapropertyupdateiso_event_connections.disconnectAll();

//////////////////////////////////////////////////////////////////////////////
//  2. You can subscribe and unsubscribe via an instance of the EventConnection 
//  class. And toggle this particular connection off and on, when necessary.
//////////////////////////////////////////////////////////////////////////////

// create an instance of the EventConnection class
EventConnection camerapropertyupdateiso_event_connection;

// subscribe for the CameraPropertyUpdateISO event with a handler function keeping the connection
VRMixedReality::getEventCameraPropertyUpdateISO().connect(camerapropertyupdateiso_event_connection, camerapropertyupdateiso_event_handler);

// ...

// you can temporarily disable a particular event connection to perform certain actions
camerapropertyupdateiso_event_connection.setEnabled(false);

// ... actions to be performed

// and enable it back when necessary
camerapropertyupdateiso_event_connection.setEnabled(true);

// ...

// remove subscription for the CameraPropertyUpdateISO event via the connection
camerapropertyupdateiso_event_connection.disconnect();

//////////////////////////////////////////////////////////////////////////////
//  3. You can add EventConnection/EventConnections instance as a member of the
//  class that handles the event. In this case all linked subscriptions will be 
//  automatically removed when class destructor is called
//////////////////////////////////////////////////////////////////////////////

// Class handling the event
class SomeClass
{
public:
	// instance of the EventConnections class as a class member
	EventConnections e_connections;

	// A CameraPropertyUpdateISO event handler implemented as a class member
	void event_handler()
	{
		Log::message("\Handling CameraPropertyUpdateISO event\n");
		// ...
	}
};

SomeClass *sc = new SomeClass();

// ...

// specify a class instance in case a handler method belongs to some class
VRMixedReality::getEventCameraPropertyUpdateISO().connect(sc->e_connections, sc, &SomeClass::event_handler);

// ...

// handler class instance is deleted with all its subscriptions removed automatically
delete sc;

//////////////////////////////////////////////////////////////////////////////
//  4. You can subscribe and unsubscribe via the handler function directly
//////////////////////////////////////////////////////////////////////////////

// subscribe for the CameraPropertyUpdateISO event with a handler function
VRMixedReality::getEventCameraPropertyUpdateISO().connect(camerapropertyupdateiso_event_handler);


// remove subscription for the CameraPropertyUpdateISO event later by the handler function
VRMixedReality::getEventCameraPropertyUpdateISO().disconnect(camerapropertyupdateiso_event_handler);


//////////////////////////////////////////////////////////////////////////////
//   5. Subscribe to an event saving an ID and unsubscribe later by this ID
//////////////////////////////////////////////////////////////////////////////

// define a connection ID to be used to unsubscribe later
EventConnectionId camerapropertyupdateiso_handler_id;

// subscribe for the CameraPropertyUpdateISO event with a lambda handler function and keeping connection ID
camerapropertyupdateiso_handler_id = VRMixedReality::getEventCameraPropertyUpdateISO().connect([]() { 
		Log::message("\Handling CameraPropertyUpdateISO event (lambda).\n");
	}
);

// remove the subscription later using the ID
VRMixedReality::getEventCameraPropertyUpdateISO().disconnect(camerapropertyupdateiso_handler_id);


//////////////////////////////////////////////////////////////////////////////
//   6. Ignoring all CameraPropertyUpdateISO events when necessary
//////////////////////////////////////////////////////////////////////////////

// you can temporarily disable the event to perform certain actions without triggering it
VRMixedReality::getEventCameraPropertyUpdateISO().setEnabled(false);

// ... actions to be performed

// and enable it back when necessary
VRMixedReality::getEventCameraPropertyUpdateISO().setEnabled(true);

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

Event reference.

Event<> getEventCameraPropertyUpdateWhiteBalance() const#

Event triggered when the white balance correction value of the camera and/or the white balance adjustment mode are changed in Varjo Base. You can subscribe to events via connect()  and unsubscribe via disconnect(). You can also use EventConnection  and EventConnections  classes for convenience (see examples below).
Примечание
For more details see the Event Handling article.For more details see the Event Handling article.
For more details see the Event Handling article.
Событие запускается при изменении значения и/или режима настройки баланса белого для камеры в Varjo Base. Вы можете подписаться на события через connect()   и отказаться от подписки через disconnect(). Вы также можете использовать EventConnection   и EventConnections  классы для удобства (см. примеры ниже).
Примечание
For more details see the Event Handling article.Для получения более подробной информации смотрите статью Обработка событий.
The event handler signature is as follows: myhandler()

Usage Example

Исходный код (C++)
// implement the CameraPropertyUpdateWhiteBalance event handler
void camerapropertyupdatewhitebalance_event_handler()
{
	Log::message("\Handling CameraPropertyUpdateWhiteBalance event\n");
}


//////////////////////////////////////////////////////////////////////////////
//  1. Multiple subscriptions can be linked to an instance of the EventConnections 
//  class that you can use later to remove all these subscriptions at once
//////////////////////////////////////////////////////////////////////////////

// create an instance of the EventConnections class
EventConnections camerapropertyupdatewhitebalance_event_connections;

// link to this instance when subscribing for an event (subscription for various events can be linked)
VRMixedReality::getEventCameraPropertyUpdateWhiteBalance().connect(camerapropertyupdatewhitebalance_event_connections, camerapropertyupdatewhitebalance_event_handler);

// other subscriptions are also linked to this EventConnections instance 
// (e.g. you can subscribe using lambdas)
VRMixedReality::getEventCameraPropertyUpdateWhiteBalance().connect(camerapropertyupdatewhitebalance_event_connections, []() { 
		Log::message("\Handling CameraPropertyUpdateWhiteBalance event (lambda).\n");
	}
);

// ...

// later all of these linked subscriptions can be removed with a single line
camerapropertyupdatewhitebalance_event_connections.disconnectAll();

//////////////////////////////////////////////////////////////////////////////
//  2. You can subscribe and unsubscribe via an instance of the EventConnection 
//  class. And toggle this particular connection off and on, when necessary.
//////////////////////////////////////////////////////////////////////////////

// create an instance of the EventConnection class
EventConnection camerapropertyupdatewhitebalance_event_connection;

// subscribe for the CameraPropertyUpdateWhiteBalance event with a handler function keeping the connection
VRMixedReality::getEventCameraPropertyUpdateWhiteBalance().connect(camerapropertyupdatewhitebalance_event_connection, camerapropertyupdatewhitebalance_event_handler);

// ...

// you can temporarily disable a particular event connection to perform certain actions
camerapropertyupdatewhitebalance_event_connection.setEnabled(false);

// ... actions to be performed

// and enable it back when necessary
camerapropertyupdatewhitebalance_event_connection.setEnabled(true);

// ...

// remove subscription for the CameraPropertyUpdateWhiteBalance event via the connection
camerapropertyupdatewhitebalance_event_connection.disconnect();

//////////////////////////////////////////////////////////////////////////////
//  3. You can add EventConnection/EventConnections instance as a member of the
//  class that handles the event. In this case all linked subscriptions will be 
//  automatically removed when class destructor is called
//////////////////////////////////////////////////////////////////////////////

// Class handling the event
class SomeClass
{
public:
	// instance of the EventConnections class as a class member
	EventConnections e_connections;

	// A CameraPropertyUpdateWhiteBalance event handler implemented as a class member
	void event_handler()
	{
		Log::message("\Handling CameraPropertyUpdateWhiteBalance event\n");
		// ...
	}
};

SomeClass *sc = new SomeClass();

// ...

// specify a class instance in case a handler method belongs to some class
VRMixedReality::getEventCameraPropertyUpdateWhiteBalance().connect(sc->e_connections, sc, &SomeClass::event_handler);

// ...

// handler class instance is deleted with all its subscriptions removed automatically
delete sc;

//////////////////////////////////////////////////////////////////////////////
//  4. You can subscribe and unsubscribe via the handler function directly
//////////////////////////////////////////////////////////////////////////////

// subscribe for the CameraPropertyUpdateWhiteBalance event with a handler function
VRMixedReality::getEventCameraPropertyUpdateWhiteBalance().connect(camerapropertyupdatewhitebalance_event_handler);


// remove subscription for the CameraPropertyUpdateWhiteBalance event later by the handler function
VRMixedReality::getEventCameraPropertyUpdateWhiteBalance().disconnect(camerapropertyupdatewhitebalance_event_handler);


//////////////////////////////////////////////////////////////////////////////
//   5. Subscribe to an event saving an ID and unsubscribe later by this ID
//////////////////////////////////////////////////////////////////////////////

// define a connection ID to be used to unsubscribe later
EventConnectionId camerapropertyupdatewhitebalance_handler_id;

// subscribe for the CameraPropertyUpdateWhiteBalance event with a lambda handler function and keeping connection ID
camerapropertyupdatewhitebalance_handler_id = VRMixedReality::getEventCameraPropertyUpdateWhiteBalance().connect([]() { 
		Log::message("\Handling CameraPropertyUpdateWhiteBalance event (lambda).\n");
	}
);

// remove the subscription later using the ID
VRMixedReality::getEventCameraPropertyUpdateWhiteBalance().disconnect(camerapropertyupdatewhitebalance_handler_id);


//////////////////////////////////////////////////////////////////////////////
//   6. Ignoring all CameraPropertyUpdateWhiteBalance events when necessary
//////////////////////////////////////////////////////////////////////////////

// you can temporarily disable the event to perform certain actions without triggering it
VRMixedReality::getEventCameraPropertyUpdateWhiteBalance().setEnabled(false);

// ... actions to be performed

// and enable it back when necessary
VRMixedReality::getEventCameraPropertyUpdateWhiteBalance().setEnabled(true);

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

Event reference.

Event<> getEventCameraPropertyUpdateExposureTime() const#

Event triggered when the exposure time value of the camera and/or the exposure adjustment mode are changed in Varjo Base. You can subscribe to events via connect()  and unsubscribe via disconnect(). You can also use EventConnection  and EventConnections  classes for convenience (see examples below).
Примечание
For more details see the Event Handling article.For more details see the Event Handling article.
For more details see the Event Handling article.
Событие запускается при изменении значения и/или режима настройки времени экспозиции для камеры в Varjo Base. Вы можете подписаться на события через connect()   и отказаться от подписки через disconnect(). Вы также можете использовать EventConnection   и EventConnections  классы для удобства (см. примеры ниже).
Примечание
For more details see the Event Handling article.Для получения более подробной информации смотрите статью Обработка событий.
The event handler signature is as follows: myhandler()

Usage Example

Исходный код (C++)
// implement the CameraPropertyUpdateExposureTime event handler
void camerapropertyupdateexposuretime_event_handler()
{
	Log::message("\Handling CameraPropertyUpdateExposureTime event\n");
}


//////////////////////////////////////////////////////////////////////////////
//  1. Multiple subscriptions can be linked to an instance of the EventConnections 
//  class that you can use later to remove all these subscriptions at once
//////////////////////////////////////////////////////////////////////////////

// create an instance of the EventConnections class
EventConnections camerapropertyupdateexposuretime_event_connections;

// link to this instance when subscribing for an event (subscription for various events can be linked)
VRMixedReality::getEventCameraPropertyUpdateExposureTime().connect(camerapropertyupdateexposuretime_event_connections, camerapropertyupdateexposuretime_event_handler);

// other subscriptions are also linked to this EventConnections instance 
// (e.g. you can subscribe using lambdas)
VRMixedReality::getEventCameraPropertyUpdateExposureTime().connect(camerapropertyupdateexposuretime_event_connections, []() { 
		Log::message("\Handling CameraPropertyUpdateExposureTime event (lambda).\n");
	}
);

// ...

// later all of these linked subscriptions can be removed with a single line
camerapropertyupdateexposuretime_event_connections.disconnectAll();

//////////////////////////////////////////////////////////////////////////////
//  2. You can subscribe and unsubscribe via an instance of the EventConnection 
//  class. And toggle this particular connection off and on, when necessary.
//////////////////////////////////////////////////////////////////////////////

// create an instance of the EventConnection class
EventConnection camerapropertyupdateexposuretime_event_connection;

// subscribe for the CameraPropertyUpdateExposureTime event with a handler function keeping the connection
VRMixedReality::getEventCameraPropertyUpdateExposureTime().connect(camerapropertyupdateexposuretime_event_connection, camerapropertyupdateexposuretime_event_handler);

// ...

// you can temporarily disable a particular event connection to perform certain actions
camerapropertyupdateexposuretime_event_connection.setEnabled(false);

// ... actions to be performed

// and enable it back when necessary
camerapropertyupdateexposuretime_event_connection.setEnabled(true);

// ...

// remove subscription for the CameraPropertyUpdateExposureTime event via the connection
camerapropertyupdateexposuretime_event_connection.disconnect();

//////////////////////////////////////////////////////////////////////////////
//  3. You can add EventConnection/EventConnections instance as a member of the
//  class that handles the event. In this case all linked subscriptions will be 
//  automatically removed when class destructor is called
//////////////////////////////////////////////////////////////////////////////

// Class handling the event
class SomeClass
{
public:
	// instance of the EventConnections class as a class member
	EventConnections e_connections;

	// A CameraPropertyUpdateExposureTime event handler implemented as a class member
	void event_handler()
	{
		Log::message("\Handling CameraPropertyUpdateExposureTime event\n");
		// ...
	}
};

SomeClass *sc = new SomeClass();

// ...

// specify a class instance in case a handler method belongs to some class
VRMixedReality::getEventCameraPropertyUpdateExposureTime().connect(sc->e_connections, sc, &SomeClass::event_handler);

// ...

// handler class instance is deleted with all its subscriptions removed automatically
delete sc;

//////////////////////////////////////////////////////////////////////////////
//  4. You can subscribe and unsubscribe via the handler function directly
//////////////////////////////////////////////////////////////////////////////

// subscribe for the CameraPropertyUpdateExposureTime event with a handler function
VRMixedReality::getEventCameraPropertyUpdateExposureTime().connect(camerapropertyupdateexposuretime_event_handler);


// remove subscription for the CameraPropertyUpdateExposureTime event later by the handler function
VRMixedReality::getEventCameraPropertyUpdateExposureTime().disconnect(camerapropertyupdateexposuretime_event_handler);


//////////////////////////////////////////////////////////////////////////////
//   5. Subscribe to an event saving an ID and unsubscribe later by this ID
//////////////////////////////////////////////////////////////////////////////

// define a connection ID to be used to unsubscribe later
EventConnectionId camerapropertyupdateexposuretime_handler_id;

// subscribe for the CameraPropertyUpdateExposureTime event with a lambda handler function and keeping connection ID
camerapropertyupdateexposuretime_handler_id = VRMixedReality::getEventCameraPropertyUpdateExposureTime().connect([]() { 
		Log::message("\Handling CameraPropertyUpdateExposureTime event (lambda).\n");
	}
);

// remove the subscription later using the ID
VRMixedReality::getEventCameraPropertyUpdateExposureTime().disconnect(camerapropertyupdateexposuretime_handler_id);


//////////////////////////////////////////////////////////////////////////////
//   6. Ignoring all CameraPropertyUpdateExposureTime events when necessary
//////////////////////////////////////////////////////////////////////////////

// you can temporarily disable the event to perform certain actions without triggering it
VRMixedReality::getEventCameraPropertyUpdateExposureTime().setEnabled(false);

// ... actions to be performed

// and enable it back when necessary
VRMixedReality::getEventCameraPropertyUpdateExposureTime().setEnabled(true);

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

Event reference.

Event<> getEventChromakeyUpdate() const#

Event triggered when the chroma keying settings are changed in Varjo Base. You can subscribe to events via connect()  and unsubscribe via disconnect(). You can also use EventConnection  and EventConnections  classes for convenience (see examples below).
Примечание
For more details see the Event Handling article.For more details see the Event Handling article.
For more details see the Event Handling article.
Событие запускается при изменении настроек хромакея (chroma key) в Varjo Base. Вы можете подписаться на события через connect()   и отказаться от подписки через disconnect(). Вы также можете использовать EventConnection   и EventConnections  классы для удобства (см. примеры ниже).
Примечание
For more details see the Event Handling article.Для получения более подробной информации смотрите статью Обработка событий.
The event handler signature is as follows: myhandler()

Usage Example

Исходный код (C++)
// implement the ChromakeyUpdate event handler
void chromakeyupdate_event_handler()
{
	Log::message("\Handling ChromakeyUpdate event\n");
}


//////////////////////////////////////////////////////////////////////////////
//  1. Multiple subscriptions can be linked to an instance of the EventConnections 
//  class that you can use later to remove all these subscriptions at once
//////////////////////////////////////////////////////////////////////////////

// create an instance of the EventConnections class
EventConnections chromakeyupdate_event_connections;

// link to this instance when subscribing for an event (subscription for various events can be linked)
VRMixedReality::getEventChromakeyUpdate().connect(chromakeyupdate_event_connections, chromakeyupdate_event_handler);

// other subscriptions are also linked to this EventConnections instance 
// (e.g. you can subscribe using lambdas)
VRMixedReality::getEventChromakeyUpdate().connect(chromakeyupdate_event_connections, []() { 
		Log::message("\Handling ChromakeyUpdate event (lambda).\n");
	}
);

// ...

// later all of these linked subscriptions can be removed with a single line
chromakeyupdate_event_connections.disconnectAll();

//////////////////////////////////////////////////////////////////////////////
//  2. You can subscribe and unsubscribe via an instance of the EventConnection 
//  class. And toggle this particular connection off and on, when necessary.
//////////////////////////////////////////////////////////////////////////////

// create an instance of the EventConnection class
EventConnection chromakeyupdate_event_connection;

// subscribe for the ChromakeyUpdate event with a handler function keeping the connection
VRMixedReality::getEventChromakeyUpdate().connect(chromakeyupdate_event_connection, chromakeyupdate_event_handler);

// ...

// you can temporarily disable a particular event connection to perform certain actions
chromakeyupdate_event_connection.setEnabled(false);

// ... actions to be performed

// and enable it back when necessary
chromakeyupdate_event_connection.setEnabled(true);

// ...

// remove subscription for the ChromakeyUpdate event via the connection
chromakeyupdate_event_connection.disconnect();

//////////////////////////////////////////////////////////////////////////////
//  3. You can add EventConnection/EventConnections instance as a member of the
//  class that handles the event. In this case all linked subscriptions will be 
//  automatically removed when class destructor is called
//////////////////////////////////////////////////////////////////////////////

// Class handling the event
class SomeClass
{
public:
	// instance of the EventConnections class as a class member
	EventConnections e_connections;

	// A ChromakeyUpdate event handler implemented as a class member
	void event_handler()
	{
		Log::message("\Handling ChromakeyUpdate event\n");
		// ...
	}
};

SomeClass *sc = new SomeClass();

// ...

// specify a class instance in case a handler method belongs to some class
VRMixedReality::getEventChromakeyUpdate().connect(sc->e_connections, sc, &SomeClass::event_handler);

// ...

// handler class instance is deleted with all its subscriptions removed automatically
delete sc;

//////////////////////////////////////////////////////////////////////////////
//  4. You can subscribe and unsubscribe via the handler function directly
//////////////////////////////////////////////////////////////////////////////

// subscribe for the ChromakeyUpdate event with a handler function
VRMixedReality::getEventChromakeyUpdate().connect(chromakeyupdate_event_handler);


// remove subscription for the ChromakeyUpdate event later by the handler function
VRMixedReality::getEventChromakeyUpdate().disconnect(chromakeyupdate_event_handler);


//////////////////////////////////////////////////////////////////////////////
//   5. Subscribe to an event saving an ID and unsubscribe later by this ID
//////////////////////////////////////////////////////////////////////////////

// define a connection ID to be used to unsubscribe later
EventConnectionId chromakeyupdate_handler_id;

// subscribe for the ChromakeyUpdate event with a lambda handler function and keeping connection ID
chromakeyupdate_handler_id = VRMixedReality::getEventChromakeyUpdate().connect([]() { 
		Log::message("\Handling ChromakeyUpdate event (lambda).\n");
	}
);

// remove the subscription later using the ID
VRMixedReality::getEventChromakeyUpdate().disconnect(chromakeyupdate_handler_id);


//////////////////////////////////////////////////////////////////////////////
//   6. Ignoring all ChromakeyUpdate events when necessary
//////////////////////////////////////////////////////////////////////////////

// you can temporarily disable the event to perform certain actions without triggering it
VRMixedReality::getEventChromakeyUpdate().setEnabled(false);

// ... actions to be performed

// and enable it back when necessary
VRMixedReality::getEventChromakeyUpdate().setEnabled(true);

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

Event reference.

Event<> getEventDeviceDisconnected() const#

Event triggered when the Varjo device is disconnected. You can subscribe to events via connect()  and unsubscribe via disconnect(). You can also use EventConnection  and EventConnections  classes for convenience (see examples below).
Примечание
For more details see the Event Handling article.For more details see the Event Handling article.
For more details see the Event Handling article.
Событие запускается при при отключении VR устройства. Вы можете подписаться на события через connect()   и отказаться от подписки через disconnect(). Вы также можете использовать EventConnection   и EventConnections  классы для удобства (см. примеры ниже).
Примечание
For more details see the Event Handling article.Для получения более подробной информации смотрите статью Обработка событий.
The event handler signature is as follows: myhandler()

Usage Example

Исходный код (C++)
// implement the DeviceDisconnected event handler
void devicedisconnected_event_handler()
{
	Log::message("\Handling DeviceDisconnected event\n");
}


//////////////////////////////////////////////////////////////////////////////
//  1. Multiple subscriptions can be linked to an instance of the EventConnections 
//  class that you can use later to remove all these subscriptions at once
//////////////////////////////////////////////////////////////////////////////

// create an instance of the EventConnections class
EventConnections devicedisconnected_event_connections;

// link to this instance when subscribing for an event (subscription for various events can be linked)
VRMixedReality::getEventDeviceDisconnected().connect(devicedisconnected_event_connections, devicedisconnected_event_handler);

// other subscriptions are also linked to this EventConnections instance 
// (e.g. you can subscribe using lambdas)
VRMixedReality::getEventDeviceDisconnected().connect(devicedisconnected_event_connections, []() { 
		Log::message("\Handling DeviceDisconnected event (lambda).\n");
	}
);

// ...

// later all of these linked subscriptions can be removed with a single line
devicedisconnected_event_connections.disconnectAll();

//////////////////////////////////////////////////////////////////////////////
//  2. You can subscribe and unsubscribe via an instance of the EventConnection 
//  class. And toggle this particular connection off and on, when necessary.
//////////////////////////////////////////////////////////////////////////////

// create an instance of the EventConnection class
EventConnection devicedisconnected_event_connection;

// subscribe for the DeviceDisconnected event with a handler function keeping the connection
VRMixedReality::getEventDeviceDisconnected().connect(devicedisconnected_event_connection, devicedisconnected_event_handler);

// ...

// you can temporarily disable a particular event connection to perform certain actions
devicedisconnected_event_connection.setEnabled(false);

// ... actions to be performed

// and enable it back when necessary
devicedisconnected_event_connection.setEnabled(true);

// ...

// remove subscription for the DeviceDisconnected event via the connection
devicedisconnected_event_connection.disconnect();

//////////////////////////////////////////////////////////////////////////////
//  3. You can add EventConnection/EventConnections instance as a member of the
//  class that handles the event. In this case all linked subscriptions will be 
//  automatically removed when class destructor is called
//////////////////////////////////////////////////////////////////////////////

// Class handling the event
class SomeClass
{
public:
	// instance of the EventConnections class as a class member
	EventConnections e_connections;

	// A DeviceDisconnected event handler implemented as a class member
	void event_handler()
	{
		Log::message("\Handling DeviceDisconnected event\n");
		// ...
	}
};

SomeClass *sc = new SomeClass();

// ...

// specify a class instance in case a handler method belongs to some class
VRMixedReality::getEventDeviceDisconnected().connect(sc->e_connections, sc, &SomeClass::event_handler);

// ...

// handler class instance is deleted with all its subscriptions removed automatically
delete sc;

//////////////////////////////////////////////////////////////////////////////
//  4. You can subscribe and unsubscribe via the handler function directly
//////////////////////////////////////////////////////////////////////////////

// subscribe for the DeviceDisconnected event with a handler function
VRMixedReality::getEventDeviceDisconnected().connect(devicedisconnected_event_handler);


// remove subscription for the DeviceDisconnected event later by the handler function
VRMixedReality::getEventDeviceDisconnected().disconnect(devicedisconnected_event_handler);


//////////////////////////////////////////////////////////////////////////////
//   5. Subscribe to an event saving an ID and unsubscribe later by this ID
//////////////////////////////////////////////////////////////////////////////

// define a connection ID to be used to unsubscribe later
EventConnectionId devicedisconnected_handler_id;

// subscribe for the DeviceDisconnected event with a lambda handler function and keeping connection ID
devicedisconnected_handler_id = VRMixedReality::getEventDeviceDisconnected().connect([]() { 
		Log::message("\Handling DeviceDisconnected event (lambda).\n");
	}
);

// remove the subscription later using the ID
VRMixedReality::getEventDeviceDisconnected().disconnect(devicedisconnected_handler_id);


//////////////////////////////////////////////////////////////////////////////
//   6. Ignoring all DeviceDisconnected events when necessary
//////////////////////////////////////////////////////////////////////////////

// you can temporarily disable the event to perform certain actions without triggering it
VRMixedReality::getEventDeviceDisconnected().setEnabled(false);

// ... actions to be performed

// and enable it back when necessary
VRMixedReality::getEventDeviceDisconnected().setEnabled(true);

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

Event reference.

Event<> getEventDeviceConnected() const#

Event triggered when the Varjo device is connected. You can subscribe to events via connect()  and unsubscribe via disconnect(). You can also use EventConnection  and EventConnections  classes for convenience (see examples below).
Примечание
For more details see the Event Handling article.For more details see the Event Handling article.
For more details see the Event Handling article.
Событие запускается при при подключении VR устройства. Вы можете подписаться на события через connect()   и отказаться от подписки через disconnect(). Вы также можете использовать EventConnection   и EventConnections  классы для удобства (см. примеры ниже).
Примечание
For more details see the Event Handling article.Для получения более подробной информации смотрите статью Обработка событий.
The event handler signature is as follows: myhandler()

Usage Example

Исходный код (C++)
// implement the DeviceConnected event handler
void deviceconnected_event_handler()
{
	Log::message("\Handling DeviceConnected event\n");
}


//////////////////////////////////////////////////////////////////////////////
//  1. Multiple subscriptions can be linked to an instance of the EventConnections 
//  class that you can use later to remove all these subscriptions at once
//////////////////////////////////////////////////////////////////////////////

// create an instance of the EventConnections class
EventConnections deviceconnected_event_connections;

// link to this instance when subscribing for an event (subscription for various events can be linked)
VRMixedReality::getEventDeviceConnected().connect(deviceconnected_event_connections, deviceconnected_event_handler);

// other subscriptions are also linked to this EventConnections instance 
// (e.g. you can subscribe using lambdas)
VRMixedReality::getEventDeviceConnected().connect(deviceconnected_event_connections, []() { 
		Log::message("\Handling DeviceConnected event (lambda).\n");
	}
);

// ...

// later all of these linked subscriptions can be removed with a single line
deviceconnected_event_connections.disconnectAll();

//////////////////////////////////////////////////////////////////////////////
//  2. You can subscribe and unsubscribe via an instance of the EventConnection 
//  class. And toggle this particular connection off and on, when necessary.
//////////////////////////////////////////////////////////////////////////////

// create an instance of the EventConnection class
EventConnection deviceconnected_event_connection;

// subscribe for the DeviceConnected event with a handler function keeping the connection
VRMixedReality::getEventDeviceConnected().connect(deviceconnected_event_connection, deviceconnected_event_handler);

// ...

// you can temporarily disable a particular event connection to perform certain actions
deviceconnected_event_connection.setEnabled(false);

// ... actions to be performed

// and enable it back when necessary
deviceconnected_event_connection.setEnabled(true);

// ...

// remove subscription for the DeviceConnected event via the connection
deviceconnected_event_connection.disconnect();

//////////////////////////////////////////////////////////////////////////////
//  3. You can add EventConnection/EventConnections instance as a member of the
//  class that handles the event. In this case all linked subscriptions will be 
//  automatically removed when class destructor is called
//////////////////////////////////////////////////////////////////////////////

// Class handling the event
class SomeClass
{
public:
	// instance of the EventConnections class as a class member
	EventConnections e_connections;

	// A DeviceConnected event handler implemented as a class member
	void event_handler()
	{
		Log::message("\Handling DeviceConnected event\n");
		// ...
	}
};

SomeClass *sc = new SomeClass();

// ...

// specify a class instance in case a handler method belongs to some class
VRMixedReality::getEventDeviceConnected().connect(sc->e_connections, sc, &SomeClass::event_handler);

// ...

// handler class instance is deleted with all its subscriptions removed automatically
delete sc;

//////////////////////////////////////////////////////////////////////////////
//  4. You can subscribe and unsubscribe via the handler function directly
//////////////////////////////////////////////////////////////////////////////

// subscribe for the DeviceConnected event with a handler function
VRMixedReality::getEventDeviceConnected().connect(deviceconnected_event_handler);


// remove subscription for the DeviceConnected event later by the handler function
VRMixedReality::getEventDeviceConnected().disconnect(deviceconnected_event_handler);


//////////////////////////////////////////////////////////////////////////////
//   5. Subscribe to an event saving an ID and unsubscribe later by this ID
//////////////////////////////////////////////////////////////////////////////

// define a connection ID to be used to unsubscribe later
EventConnectionId deviceconnected_handler_id;

// subscribe for the DeviceConnected event with a lambda handler function and keeping connection ID
deviceconnected_handler_id = VRMixedReality::getEventDeviceConnected().connect([]() { 
		Log::message("\Handling DeviceConnected event (lambda).\n");
	}
);

// remove the subscription later using the ID
VRMixedReality::getEventDeviceConnected().disconnect(deviceconnected_handler_id);


//////////////////////////////////////////////////////////////////////////////
//   6. Ignoring all DeviceConnected events when necessary
//////////////////////////////////////////////////////////////////////////////

// you can temporarily disable the event to perform certain actions without triggering it
VRMixedReality::getEventDeviceConnected().setEnabled(false);

// ... actions to be performed

// and enable it back when necessary
VRMixedReality::getEventDeviceConnected().setEnabled(true);

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

Event reference.

void applySettings ( ) #

Updates the mixed reality settings to the current settings.Обновляет настройки смешанной реальности до текущих настроек.

bool isChromaKeyConfigEnabled ( int index ) const#

Returns the current value indicating if the chroma key configuration with the specified index is enabled.Возвращает текущее значение, указывающее, включена ли настройка цветового ключа с указанным индексом.

Аргументы

  • int index - Chroma key config index in the range from 0 to config count - 1.Индекс конфигурации цветового ключа в диапазоне от 0 до config count - 1.

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

1 the chroma key configuration is enabled; otherwise, 0.1 включена настройка цветового ключа; в противном случае - 0.

void setChromaKeyConfigEnabled ( int index, bool enabled ) #

Sets a new value indicating if the chroma key configuration with the specified index is enabled.Устанавливает новое значение, указывающее, включена ли конфигурация цветового ключа с указанным индексом.

Аргументы

  • int index - Chroma key config index in the range from 0 to config count - 1.Индекс конфигурации цветового ключа в диапазоне от 0 до config count - 1.
  • bool enabled - 1 to enable the chroma key configuration; 0 to disable it.1, чтобы включить настройку цветового ключа; 0, чтобы отключить ее.

Math::vec3 getChromaKeyConfigFalloff ( int index ) const#

Returns the current tolerance falloff values for HSV components of the chroma key target color.Возвращает текущие значения отклонения допуска для компонентов HSV целевого цвета цветового ключа.

Аргументы

  • int index - Chroma key config index in the range from 0 to config count - 1.Индекс конфигурации цветового ключа в диапазоне от 0 до config count - 1.

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

Current tolerance falloff values for HSV components of the chroma key target color. The range for each component is [0.0; 1.0].Текущие значения допустимого отклонения для компонентов HSV целевого цвета цветового ключа. Диапазон для каждого компонента равен [0.0; 1.0].

void setChromaKeyConfigFalloff ( int index, const Math::vec3 & falloff ) #

Sets new tolerance falloff values for HSV components of the chroma key target color.Устанавливает новые значения отклонения допуска для компонентов HSV целевого цвета цветового ключа.

Аргументы

  • int index - Chroma key config index in the range from 0 to config count - 1.Индекс конфигурации цветового ключа в диапазоне от 0 до config count - 1.
  • const Math::vec3 & falloff - New tolerance falloff values to be set for HSV components of the chroma key target color. The range for each component is [0.0; 1.0].Новые значения отклонения допуска, которые будут установлены для компонентов HSV целевого цвета chroma key. Диапазон для каждого компонента равен [0.0; 1.0].

Math::vec3 getChromaKeyConfigTargetColor ( int index ) const#

Returns the current chroma key target color.Возвращает текущий целевой цвет цветового ключа.

Аргументы

  • int index - Chroma key config index in the range from 0 to config count - 1.Индекс конфигурации цветового ключа в диапазоне от 0 до config count - 1.

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

Current chroma key target color in HSV colorspace. The range for each component is [0.0; 1.0].Текущий целевой цвет цветового ключа в цветовом пространстве HSV. Диапазон для каждого компонента равен [0.0; 1.0].

void setChromaKeyConfigTargetColor ( int index, const Math::vec3 & target_color ) #

Sets a new chroma key target color.Устанавливает новый целевой цвет цветового ключа.

Аргументы

  • int index - Chroma key config index in the range from 0 to config count - 1.Индекс конфигурации цветового ключа в диапазоне от 0 до config count - 1.
  • const Math::vec3 & target_color - New chroma key target color to be set in HSV colorspace. The range for each component is [0.0; 1.0].Новый целевой цвет цветового ключа, который будет установлен в цветовом пространстве HSV. Диапазон для каждого компонента равен [0.0; 1.0].

Math::vec3 getChromaKeyConfigTolerance ( int index ) const#

Returns the current tolerance values for HSV components of the chroma key target color.Возвращает текущие значения допуска для компонентов HSV целевого цвета цветового ключа.

Аргументы

  • int index - Chroma key config index in the range from 0 to config count - 1.Индекс конфигурации цветового ключа в диапазоне от 0 до config count - 1.

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

Current tolerance values for HSV components of the chroma key target color. The range for each component is [0.0; 1.0].Текущие допустимые значения для компонентов HSV целевого цвета chroma key. Диапазон для каждого компонента равен [0.0; 1.0].

void setChromaKeyConfigTolerance ( int index, const Math::vec3 & tolerance ) #

Sets new tolerance values for HSV components of the chroma key target color.Устанавливает новые значения допуска для компонентов HSV целевого цвета цветового ключа.

Аргументы

  • int index - Chroma key config index in the range from 0 to config count - 1.Индекс конфигурации цветового ключа в диапазоне от 0 до config count - 1.
  • const Math::vec3 & tolerance - New tolerance values for HSV components of the chroma key target color to be set. The range for each component is [0.0; 1.0].Необходимо установить новые допустимые значения для компонентов HSV целевого цвета цветового ключа. Диапазон для каждого компонента равен [0.0; 1.0].

void applyChromaKeySettings ( int index ) const#

Updates the settings of the chroma key configuration with the specified index to the current settings.Обновляет настройки конфигурации цветового ключа с указанным индексом до текущих настроек.

Аргументы

  • int index - Chroma key config index in the range from 0 to config count - 1.Индекс конфигурации цветового ключа в диапазоне от 0 до config count - 1.

Vector<int> getCameraSupportedRawExposureTimes ( ) const#

Returns a vector containing the exposure time values that are set as valid for the connected device.Возвращает вектор, содержащий значения времени экспозиции, которые установлены как допустимые для подключенного устройства.

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

The vector containing the exposure time values.Вектор, содержащий значения времени экспозиции.

Vector<int> getCameraSupportedRawWhiteBalances ( ) const#

Returns a vector containing the white balance values that are set as valid for the connected device.Возвращает вектор, содержащий значения баланса белого, которые установлены как допустимые для подключенного устройства.

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

The vector containing the white balance values.Вектор, содержащий значения баланса белого.

Vector<int> getCameraSupportedRawISO ( ) const#

Returns a vector containing the ISO values that are set as valid for the connected device.Возвращает вектор, содержащий значения ISO, которые установлены как допустимые для подключенного устройства.

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

The vector containing the ISO values.Вектор, содержащий значения ISO.

Vector<int> getCameraSupportedRawFlickerCompensations ( ) const#

Returns a vector containing the flicker compensation values that are set as valid for the connected device.Возвращает вектор, содержащий значения компенсации мерцания, которые установлены как допустимые для подключенного устройства.

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

The vector containing the flicker compensation values.Вектор, содержащий значения компенсации мерцания.

Ptr<VRMarkerObject> getMarkerObject ( short index ) const#

Returns the marker object with the specified index.Возвращает объект-маркер с указанным индексом.

Аргументы

  • short index - Marker object index.Индекс объекта маркера.

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

Marker object.Объект-маркер.

Ptr<VRMarkerObject> getMarkerObjectByID ( short marker_id ) const#

Returns the marker object with the specified ID.Возвращает объект-маркер с указанным идентификатором.

Аргументы

  • short marker_id - Marker object ID.Идентификатор объекта маркера.

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

Marker object.Объект-маркер.
Последнее обновление: 06.02.2024
Build: ()