Class VisionOSARKitCameraDevice
VisionOSARKitCameraDevice는 VisionOS ARKit 기반 camera device를 구현하며, image, camera parameters, timestamp, 6DOF 위치 정보 및 tracking status를 포함하는 InputFrame 을 출력합니다. 생성 후 start/stop을 호출하여 video stream data 수집을 시작하고 중지할 수 있습니다. 이 device가 더 이상 필요하지 않으면 close를 호출하여 닫을 수 있습니다. close 후에는 계속 사용해서는 안 됩니다. VisionOSARKitCameraDevice는 inputFrameSource를 통해 InputFrame 을 출력합니다. 사용하려면 inputFrameSource를 InputFrameSink 에 연결하십시오. bufferCapacity는 InputFrame buffer의 용량을 나타냅니다. 이 수보다 많은 InputFrame 이 이 device에서 출력되고 해제되지 않으면, 이전 InputFrame 이 해제될 때까지 이 device는 새 InputFrame 을 더 이상 출력하지 않습니다. 이로 인해 화면이 멈추는 등의 문제가 발생할 수 있습니다.
VisionOSARKitCameraDevice
생성자
VisionOSARKitCameraDevice
void easyar_VisionOSARKitCameraDevice__ctor(easyar_VisionOSARKitCameraDevice * * Return)
VisionOSARKitCameraDevice()
public VisionOSARKitCameraDevice()
+ (easyar_VisionOSARKitCameraDevice *) create
public convenience init()
public VisionOSARKitCameraDevice()
메서드
isAvailable
bool easyar_VisionOSARKitCameraDevice_isAvailable(void)
static bool isAvailable()
public static boolean isAvailable()
companion object fun isAvailable(): Boolean
public static func isAvailable() -> Bool
public static bool isAvailable()
반환 값
bufferCapacity
int easyar_VisionOSARKitCameraDevice_bufferCapacity(const easyar_VisionOSARKitCameraDevice * This)
public int bufferCapacity()
fun bufferCapacity(): Int
public func bufferCapacity() -> Int32
public virtual int bufferCapacity()
반환 값
setBufferCapacity
void easyar_VisionOSARKitCameraDevice_setBufferCapacity(easyar_VisionOSARKitCameraDevice * This, int capacity)
void setBufferCapacity(int capacity)
public void setBufferCapacity(int capacity)
fun setBufferCapacity(capacity: Int): Unit
- (void)setBufferCapacity:(int)capacity
public func setBufferCapacity(_ capacity: Int32) -> Void
public virtual void setBufferCapacity(int capacity)
매개 변수
반환 값
requestPermissions
VisionOS에서 필요한 system permissions를 요청하며 [World Sensing] 및 [Camera Access]를 포함합니다.
void easyar_VisionOSARKitCameraDevice_requestPermissions(easyar_VisionOSARKitCameraDevice * This, easyar_CallbackScheduler * callbackScheduler, easyar_OptionalOfFunctorOfVoidFromPermissionStatusAndString permissionCallback)
void requestPermissions(std::shared_ptr<CallbackScheduler> callbackScheduler, std::optional<std::function<void(PermissionStatus, std::string)>> permissionCallback)
public void requestPermissions(@Nonnull CallbackScheduler callbackScheduler, @Nullable FunctorOfVoidFromPermissionStatusAndString permissionCallback)
fun requestPermissions(callbackScheduler: CallbackScheduler, permissionCallback: FunctorOfVoidFromPermissionStatusAndString?): Unit
- (void)requestPermissions:(easyar_CallbackScheduler *)callbackScheduler permissionCallback:(void (^)(easyar_PermissionStatus status, NSString * value))permissionCallback
public func requestPermissions(_ callbackScheduler: CallbackScheduler, _ permissionCallback: ((PermissionStatus, String) -> Void)?) -> Void
public virtual void requestPermissions(CallbackScheduler callbackScheduler, Optional<Action<PermissionStatus, string>> permissionCallback)
매개 변수
반환 값
void easyar_VisionOSARKitCameraDevice_inputFrameSource(easyar_VisionOSARKitCameraDevice * This, easyar_InputFrameSource * * Return)
std::shared_ptr<InputFrameSource> inputFrameSource()
public @Nonnull InputFrameSource inputFrameSource()
fun inputFrameSource(): InputFrameSource
- (easyar_InputFrameSource *)inputFrameSource
public func inputFrameSource() -> InputFrameSource
public virtual InputFrameSource inputFrameSource()
반환 값
동기화된 motion input data를 가져옵니다.
void easyar_VisionOSARKitCameraDevice_getMotionInputData(easyar_VisionOSARKitCameraDevice * This, easyar_OptionalOfMotionInputData * Return)
std::optional<std::shared_ptr<MotionInputData>> getMotionInputData()
public @Nullable MotionInputData getMotionInputData()
fun getMotionInputData(): MotionInputData?
- (easyar_MotionInputData *)getMotionInputData
public func getMotionInputData() -> MotionInputData?
public virtual Optional<MotionInputData> getMotionInputData()
반환 값
start
video stream data 수집을 시작합니다.
bool easyar_VisionOSARKitCameraDevice_start(easyar_VisionOSARKitCameraDevice * This)
public func start() -> Bool
public virtual bool start()
반환 값
stop
video stream data 수집을 중지합니다.
void easyar_VisionOSARKitCameraDevice_stop(easyar_VisionOSARKitCameraDevice * This)
public func stop() -> Void
public virtual void stop()
반환 값
close
닫습니다. close 후에는 계속 사용해서는 안 됩니다.
void easyar_VisionOSARKitCameraDevice_close(easyar_VisionOSARKitCameraDevice * This)
public func close() -> Void
public virtual void close()
반환 값
size
easyar_Vec2I easyar_VisionOSARKitCameraDevice_size(const easyar_VisionOSARKitCameraDevice * This)
public @Nonnull Vec2I size()
public func size() -> Vec2I
public virtual Vec2I size()
반환 값
type
easyar_CameraDeviceType easyar_VisionOSARKitCameraDevice_type(const easyar_VisionOSARKitCameraDevice * This)
- (easyar_CameraDeviceType)type
public func type() -> CameraDeviceType
public virtual CameraDeviceType type()
반환 값
cameraOrientation
device의 natural orientation에서 camera image를 표시할 때 시계 방향으로 회전해야 하는 각도입니다.
int easyar_VisionOSARKitCameraDevice_cameraOrientation(const easyar_VisionOSARKitCameraDevice * This)
public int cameraOrientation()
fun cameraOrientation(): Int
public func cameraOrientation() -> Int32
public virtual int cameraOrientation()
반환 값
frameRateRangeLower
현재 frame rate 범위의 하한을 가져옵니다.
double easyar_VisionOSARKitCameraDevice_frameRateRangeLower(const easyar_VisionOSARKitCameraDevice * This)
double frameRateRangeLower()
public double frameRateRangeLower()
fun frameRateRangeLower(): Double
- (double)frameRateRangeLower
public func frameRateRangeLower() -> Double
public virtual double frameRateRangeLower()
반환 값
frameRateRangeUpper
현재 frame rate 범위의 상한을 가져옵니다.
double easyar_VisionOSARKitCameraDevice_frameRateRangeUpper(const easyar_VisionOSARKitCameraDevice * This)
double frameRateRangeUpper()
public double frameRateRangeUpper()
fun frameRateRangeUpper(): Double
- (double)frameRateRangeUpper
public func frameRateRangeUpper() -> Double
public virtual double frameRateRangeUpper()
반환 값