Table of Contents

Class MegaTracker

Ruang Nama
easyar

Menyediakan cloud localization. MegaTracker occupies 1 camera buffer.

MegaTracker

Metode

isAvailable

Memeriksa apakah MegaTracker is available. Always returns true.

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

Mengembalikan

Tipe Deskripsi
Boolean

inputFrameSink

Input frame port input. MegaTracker input frames must contain camera parameters, timestamp information, and spatial information (cameraTransform and trackingStatus). Refer to InputFrameSink.

void easyar_MegaTracker_inputFrameSink(easyar_MegaTracker * This, easyar_InputFrameSink * * Return)
std::shared_ptr<InputFrameSink> inputFrameSink()
public @Nonnull InputFrameSink inputFrameSink()
fun inputFrameSink(): InputFrameSink
- (easyar_InputFrameSink *)inputFrameSink
public func inputFrameSink() -> InputFrameSink
public virtual InputFrameSink inputFrameSink()

Mengembalikan

Tipe Deskripsi
InputFrameSink

accelerometerResultSink

Accelerometer result port input. Refer to AccelerometerResultSink.

void easyar_MegaTracker_accelerometerResultSink(easyar_MegaTracker * This, easyar_AccelerometerResultSink * * Return)
std::shared_ptr<AccelerometerResultSink> accelerometerResultSink()
public @Nonnull AccelerometerResultSink accelerometerResultSink()
fun accelerometerResultSink(): AccelerometerResultSink
- (easyar_AccelerometerResultSink *)accelerometerResultSink
public func accelerometerResultSink() -> AccelerometerResultSink
public virtual AccelerometerResultSink accelerometerResultSink()

Mengembalikan

Tipe Deskripsi
AccelerometerResultSink

locationResultSink

Optional. Location result port input. Refer to LocationResultSink.

void easyar_MegaTracker_locationResultSink(easyar_MegaTracker * This, easyar_LocationResultSink * * Return)
std::shared_ptr<LocationResultSink> locationResultSink()
public @Nonnull LocationResultSink locationResultSink()
fun locationResultSink(): LocationResultSink
- (easyar_LocationResultSink *)locationResultSink
public func locationResultSink() -> LocationResultSink
public virtual LocationResultSink locationResultSink()

Mengembalikan

Tipe Deskripsi
LocationResultSink

proximityLocationResultSink

Optional. Proximity location result port input. Refer to ProximityLocationResultSink.

void easyar_MegaTracker_proximityLocationResultSink(easyar_MegaTracker * This, easyar_ProximityLocationResultSink * * Return)
std::shared_ptr<ProximityLocationResultSink> proximityLocationResultSink()
public @Nonnull ProximityLocationResultSink proximityLocationResultSink()
fun proximityLocationResultSink(): ProximityLocationResultSink
- (easyar_ProximityLocationResultSink *)proximityLocationResultSink
public func proximityLocationResultSink() -> ProximityLocationResultSink
public virtual ProximityLocationResultSink proximityLocationResultSink()

Mengembalikan

Tipe Deskripsi
ProximityLocationResultSink

bufferRequirement

The jumlah of camera buffers occupied by the current component.

int easyar_MegaTracker_bufferRequirement(easyar_MegaTracker * This)
int bufferRequirement()
public int bufferRequirement()
fun bufferRequirement(): Int
- (int)bufferRequirement
public func bufferRequirement() -> Int32
public virtual int bufferRequirement()

Mengembalikan

Tipe Deskripsi
Int32

outputFrameSource

Output frame output port. Refer to OutputFrameSource.

void easyar_MegaTracker_outputFrameSource(easyar_MegaTracker * This, easyar_OutputFrameSource * * Return)
std::shared_ptr<OutputFrameSource> outputFrameSource()
public @Nonnull OutputFrameSource outputFrameSource()
fun outputFrameSource(): OutputFrameSource
- (easyar_OutputFrameSource *)outputFrameSource
public func outputFrameSource() -> OutputFrameSource
public virtual OutputFrameSource outputFrameSource()

Mengembalikan

Tipe Deskripsi
OutputFrameSource

create

Membuat.

void easyar_MegaTracker_create(easyar_String * server, easyar_String * apiKey, easyar_String * apiSecret, easyar_String * appId, easyar_MegaTracker * * Return)
static std::shared_ptr<MegaTracker> create(std::string server, std::string apiKey, std::string apiSecret, std::string appId)
public static @Nonnull MegaTracker create(java.lang.@Nonnull String server, java.lang.@Nonnull String apiKey, java.lang.@Nonnull String apiSecret, java.lang.@Nonnull String appId)
companion object fun create(server: String, apiKey: String, apiSecret: String, appId: String): MegaTracker
+ (easyar_MegaTracker *)create:(NSString *)server apiKey:(NSString *)apiKey apiSecret:(NSString *)apiSecret appId:(NSString *)appId
public static func create(_ server: String, _ apiKey: String, _ apiSecret: String, _ appId: String) throws -> MegaTracker
public static MegaTracker create(string server, string apiKey, string apiSecret, string appId)

Parameter

Nama Tipe Deskripsi
server String
apiKey String
apiSecret String
appId String

Mengembalikan

Tipe Deskripsi
MegaTracker

createWithToken

Membuat with API Token.

void easyar_MegaTracker_createWithToken(easyar_String * server, easyar_String * apiToken, easyar_String * appId, easyar_MegaTracker * * Return)
static std::shared_ptr<MegaTracker> createWithToken(std::string server, std::string apiToken, std::string appId)
public static @Nonnull MegaTracker createWithToken(java.lang.@Nonnull String server, java.lang.@Nonnull String apiToken, java.lang.@Nonnull String appId)
companion object fun createWithToken(server: String, apiToken: String, appId: String): MegaTracker
+ (easyar_MegaTracker *)createWithToken:(NSString *)server apiToken:(NSString *)apiToken appId:(NSString *)appId
public static func createWithToken(_ server: String, _ apiToken: String, _ appId: String) throws -> MegaTracker
public static MegaTracker createWithToken(string server, string apiToken, string appId)

Parameter

Nama Tipe Deskripsi
server String
apiToken String
appId String

Mengembalikan

Tipe Deskripsi
MegaTracker

updateToken

Memperbarui API Token.

void easyar_MegaTracker_updateToken(easyar_MegaTracker * This, easyar_String * apiToken)
void updateToken(std::string apiToken)
public void updateToken(java.lang.@Nonnull String apiToken)
fun updateToken(apiToken: String): Unit
- (void)updateToken:(NSString *)apiToken
public func updateToken(_ apiToken: String) -> Void
public virtual void updateToken(string apiToken)

Parameter

Nama Tipe Deskripsi
apiToken String

Mengembalikan

Tipe Deskripsi
Void

setMegaApiType

Mengatur the MEGA API type. The default is Block.

void easyar_MegaTracker_setMegaApiType(easyar_MegaTracker * This, easyar_MegaApiType type)
void setMegaApiType(MegaApiType type)
public void setMegaApiType(int type)
fun setMegaApiType(type: Int): Unit
- (void)setMegaApiType:(easyar_MegaApiType)type
public func setMegaApiType(_ type: MegaApiType) -> Void
public virtual void setMegaApiType(MegaApiType type)

Parameter

Nama Tipe Deskripsi
type MegaApiType

Mengembalikan

Tipe Deskripsi
Void

setSpotVersionId

Mengatur the spot version ID. Available only when MegaApiType.Landmark is enabled.

void easyar_MegaTracker_setSpotVersionId(easyar_MegaTracker * This, easyar_OptionalOfString spotVersionId)
void setSpotVersionId(std::optional<std::string> spotVersionId)
public void setSpotVersionId(java.lang.@Nullable String spotVersionId)
fun setSpotVersionId(spotVersionId: String?): Unit
- (void)setSpotVersionId:(NSString *)spotVersionId
public func setSpotVersionId(_ spotVersionId: String?) -> Void
public virtual void setSpotVersionId(Optional<string> spotVersionId)

Parameter

Nama Tipe Deskripsi
spotVersionId Optional<>

Mengembalikan

Tipe Deskripsi
Void

switchEndPoint

Mengganti the remote endpoint.

void easyar_MegaTracker_switchEndPoint(easyar_MegaTracker * This, easyar_String * server, easyar_String * apiKey, easyar_String * apiSecret, easyar_String * appId)
void switchEndPoint(std::string server, std::string apiKey, std::string apiSecret, std::string appId)
public void switchEndPoint(java.lang.@Nonnull String server, java.lang.@Nonnull String apiKey, java.lang.@Nonnull String apiSecret, java.lang.@Nonnull String appId)
fun switchEndPoint(server: String, apiKey: String, apiSecret: String, appId: String): Unit
- (void)switchEndPoint:(NSString *)server apiKey:(NSString *)apiKey apiSecret:(NSString *)apiSecret appId:(NSString *)appId
public func switchEndPoint(_ server: String, _ apiKey: String, _ apiSecret: String, _ appId: String) -> Void
public virtual void switchEndPoint(string server, string apiKey, string apiSecret, string appId)

Parameter

Nama Tipe Deskripsi
server String
apiKey String
apiSecret String
appId String

Mengembalikan

Tipe Deskripsi
Void

switchEndPointWithToken

Mengganti the remote endpoint with API Token.

void easyar_MegaTracker_switchEndPointWithToken(easyar_MegaTracker * This, easyar_String * server, easyar_String * apiToken, easyar_String * appId)
void switchEndPointWithToken(std::string server, std::string apiToken, std::string appId)
public void switchEndPointWithToken(java.lang.@Nonnull String server, java.lang.@Nonnull String apiToken, java.lang.@Nonnull String appId)
fun switchEndPointWithToken(server: String, apiToken: String, appId: String): Unit
- (void)switchEndPointWithToken:(NSString *)server apiToken:(NSString *)apiToken appId:(NSString *)appId
public func switchEndPointWithToken(_ server: String, _ apiToken: String, _ appId: String) -> Void
public virtual void switchEndPointWithToken(string server, string apiToken, string appId)

Parameter

Nama Tipe Deskripsi
server String
apiToken String
appId String

Mengembalikan

Tipe Deskripsi
Void

bindBlockPrior

Mengikat to a specific map block. It is automatically unbound when reset or when the remote endpoint is switched.

void easyar_MegaTracker_bindBlockPrior(easyar_MegaTracker * This, easyar_BlockPriorResult * blockPrior)
void bindBlockPrior(std::shared_ptr<BlockPriorResult> blockPrior)
public void bindBlockPrior(@Nonnull BlockPriorResult blockPrior)
fun bindBlockPrior(blockPrior: BlockPriorResult): Unit
- (void)bindBlockPrior:(easyar_BlockPriorResult *)blockPrior
public func bindBlockPrior(_ blockPrior: BlockPriorResult) -> Void
public virtual void bindBlockPrior(BlockPriorResult blockPrior)

Parameter

Nama Tipe Deskripsi
blockPrior BlockPriorResult

Mengembalikan

Tipe Deskripsi
Void

unbindBlockPrior

Melepas the map block.

void easyar_MegaTracker_unbindBlockPrior(easyar_MegaTracker * This)
void unbindBlockPrior()
public void unbindBlockPrior()
fun unbindBlockPrior(): Unit
- (void)unbindBlockPrior
public func unbindBlockPrior() -> Void
public virtual void unbindBlockPrior()

Mengembalikan

Tipe Deskripsi
Void

setRequestTimeParameters

Mengatur request time parameters. timeoutMilliseconds is the connection timeout. requestIntervalMilliseconds is the expected request interval, default 1000, minimum 300. Larger values cause larger overall error.

void easyar_MegaTracker_setRequestTimeParameters(easyar_MegaTracker * This, easyar_OptionalOfInt timeoutMilliseconds, int requestIntervalMilliseconds)
void setRequestTimeParameters(std::optional<int> timeoutMilliseconds, int requestIntervalMilliseconds)
public void setRequestTimeParameters(java.lang.@Nullable Integer timeoutMilliseconds, int requestIntervalMilliseconds)
fun setRequestTimeParameters(timeoutMilliseconds: Int?, requestIntervalMilliseconds: Int): Unit
- (void)setRequestTimeParameters:(NSNumber *)timeoutMilliseconds requestIntervalMilliseconds:(int)requestIntervalMilliseconds
public func setRequestTimeParameters(_ timeoutMilliseconds: Int32?, _ requestIntervalMilliseconds: Int32) -> Void
public virtual void setRequestTimeParameters(Optional<int> timeoutMilliseconds, int requestIntervalMilliseconds)

Parameter

Nama Tipe Deskripsi
timeoutMilliseconds Optional<>
requestIntervalMilliseconds Int32

Mengembalikan

Tipe Deskripsi
Void

setEnableLocalization

Mengatur whether localization is enabled. When localization is not enabled, localization results returned by the server will not be output. The default is true.

void easyar_MegaTracker_setEnableLocalization(easyar_MegaTracker * This, bool enableLocalization)
void setEnableLocalization(bool enableLocalization)
public void setEnableLocalization(boolean enableLocalization)
fun setEnableLocalization(enableLocalization: Boolean): Unit
- (void)setEnableLocalization:(bool)enableLocalization
public func setEnableLocalization(_ enableLocalization: Bool) -> Void
public virtual void setEnableLocalization(bool enableLocalization)

Parameter

Nama Tipe Deskripsi
enableLocalization Boolean

Mengembalikan

Tipe Deskripsi
Void

setEnableStatelessLocalization

Mengatur whether stateless localization is enabled. When stateless localization is enabled, the previous localization result is not used during localization. The default is false.

void easyar_MegaTracker_setEnableStatelessLocalization(easyar_MegaTracker * This, bool enableStatelessLocalization)
void setEnableStatelessLocalization(bool enableStatelessLocalization)
public void setEnableStatelessLocalization(boolean enableStatelessLocalization)
fun setEnableStatelessLocalization(enableStatelessLocalization: Boolean): Unit
- (void)setEnableStatelessLocalization:(bool)enableStatelessLocalization
public func setEnableStatelessLocalization(_ enableStatelessLocalization: Bool) -> Void
public virtual void setEnableStatelessLocalization(bool enableStatelessLocalization)

Parameter

Nama Tipe Deskripsi
enableStatelessLocalization Boolean

Mengembalikan

Tipe Deskripsi
Void

setResultAsyncMode

Mengatur result async mode. If results are output through outputFrameSource, this should be set to true; if results are obtained through getSyncResult, it should be set to false. The default enableAsync is true. Sync mode can take effect only when using an XR License.

bool easyar_MegaTracker_setResultAsyncMode(easyar_MegaTracker * This, bool enableAsync)
bool setResultAsyncMode(bool enableAsync)
public boolean setResultAsyncMode(boolean enableAsync)
fun setResultAsyncMode(enableAsync: Boolean): Boolean
- (bool)setResultAsyncMode:(bool)enableAsync
public func setResultAsyncMode(_ enableAsync: Bool) -> Bool
public virtual bool setResultAsyncMode(bool enableAsync)

Parameter

Nama Tipe Deskripsi
enableAsync Boolean

Mengembalikan

Tipe Deskripsi
Boolean

setRequestMessage

void easyar_MegaTracker_setRequestMessage(easyar_MegaTracker * This, easyar_String * message)
void setRequestMessage(std::string message)
public void setRequestMessage(java.lang.@Nonnull String message)
fun setRequestMessage(message: String): Unit
- (void)setRequestMessage:(NSString *)message
public func setRequestMessage(_ message: String) -> Void
public virtual void setRequestMessage(string message)

Parameter

Nama Tipe Deskripsi
message String

Mengembalikan

Tipe Deskripsi
Void

setLocalizationCallback

Mengatur the localization callback. This callback is triggered each time localization is performed.

void easyar_MegaTracker_setLocalizationCallback(easyar_MegaTracker * This, easyar_CallbackScheduler * callbackScheduler, easyar_OptionalOfFunctorOfVoidFromMegaTrackerLocalizationResponse callback)
void setLocalizationCallback(std::shared_ptr<CallbackScheduler> callbackScheduler, std::optional<std::function<void(std::shared_ptr<MegaTrackerLocalizationResponse>)>> callback)
public void setLocalizationCallback(@Nonnull CallbackScheduler callbackScheduler, @Nullable FunctorOfVoidFromMegaTrackerLocalizationResponse callback)
fun setLocalizationCallback(callbackScheduler: CallbackScheduler, callback: FunctorOfVoidFromMegaTrackerLocalizationResponse?): Unit
- (void)setLocalizationCallback:(easyar_CallbackScheduler *)callbackScheduler callback:(void (^)(easyar_MegaTrackerLocalizationResponse * response))callback
public func setLocalizationCallback(_ callbackScheduler: CallbackScheduler, _ callback: ((MegaTrackerLocalizationResponse) -> Void)?) -> Void
public virtual void setLocalizationCallback(CallbackScheduler callbackScheduler, Optional<Action<MegaTrackerLocalizationResponse>> callback)

Parameter

Nama Tipe Deskripsi
callbackScheduler CallbackScheduler
callback Optional<Action<MegaTrackerLocalizationResponse>>

Mengembalikan

Tipe Deskripsi
Void

setCameraPositionOverride

Mengatur the override value of the camera position relative to the map block. After it is set, MegaTracker outputs the override value instead of using the corresponding coordinates in input frame data. This can be used to improve output pose accuracy when map information is known and sensors are limited.

void easyar_MegaTracker_setCameraPositionOverride(easyar_MegaTracker * This, easyar_OptionalOfFloat x, easyar_OptionalOfFloat y, easyar_OptionalOfFloat z)
void setCameraPositionOverride(std::optional<float> x, std::optional<float> y, std::optional<float> z)
public void setCameraPositionOverride(java.lang.@Nullable Float x, java.lang.@Nullable Float y, java.lang.@Nullable Float z)
fun setCameraPositionOverride(x: Float?, y: Float?, z: Float?): Unit
- (void)setCameraPositionOverride:(NSNumber *)x y:(NSNumber *)y z:(NSNumber *)z
public func setCameraPositionOverride(_ x: Float?, _ y: Float?, _ z: Float?) -> Void
public virtual void setCameraPositionOverride(Optional<float> x, Optional<float> y, Optional<float> z)

Parameter

Nama Tipe Deskripsi
x Optional<Single>
y Optional<Single>
z Optional<Single>

Mengembalikan

Tipe Deskripsi
Void

start

Memulai MegaTracker.

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

Mengembalikan

Tipe Deskripsi
Boolean

stop

Menghentikan MegaTracker. Call start to run it again.

void easyar_MegaTracker_stop(easyar_MegaTracker * This)
void stop()
public void stop()
fun stop(): Unit
- (void)stop
public func stop() -> Void
public virtual void stop()

Mengembalikan

Tipe Deskripsi
Void

reset

Mereset MegaTracker and clears all states.

void easyar_MegaTracker_reset(easyar_MegaTracker * This)
void reset()
public void reset()
fun reset(): Unit
- (void)reset
public func reset() -> Void
public virtual void reset()

Mengembalikan

Tipe Deskripsi
Void

close

Menutup MegaTracker. It should not be used after close.

void easyar_MegaTracker_close(easyar_MegaTracker * This)
void close()
public void close()
fun close(): Unit
- (void)close
public func close() -> Void
public virtual void close()

Mengembalikan

Tipe Deskripsi
Void

getSyncResult

Mendapatkan the synchronous output result. If MegaTracker is paused, or if result async mode has not been set to false through setResultAsyncMode, the return value is empty.

void easyar_MegaTracker_getSyncResult(easyar_MegaTracker * This, easyar_MotionInputData * motionInputData, easyar_OptionalOfMegaTrackerResult * Return)
std::optional<std::shared_ptr<MegaTrackerResult>> getSyncResult(std::shared_ptr<MotionInputData> motionInputData)
public @Nullable MegaTrackerResult getSyncResult(@Nonnull MotionInputData motionInputData)
fun getSyncResult(motionInputData: MotionInputData): MegaTrackerResult?
- (easyar_MegaTrackerResult *)getSyncResult:(easyar_MotionInputData *)motionInputData
public func getSyncResult(_ motionInputData: MotionInputData) -> MegaTrackerResult?
public virtual Optional<MegaTrackerResult> getSyncResult(MotionInputData motionInputData)

Parameter

Nama Tipe Deskripsi
motionInputData MotionInputData

Mengembalikan

Tipe Deskripsi
Optional<MegaTrackerResult>