WTWikitudeNativeSDKDelegate Protocol Reference

Conforms to NSObject
Declared in WTWikitudeNativeSDK.h

Overview

WTWikitudeNativeSDKDelegate is used to handle information exchange between the Wikitude Native SDK and internal/external renderer as well as to inform about internal errors that occured during this conversation.

Although all methods are marked as optional, all internal or external rendering related methods must be implemented. If not, an appropriate error is reported through the -wikitudeNativeSDK:didEncounterInternalError method.

– wikitudeNativeSDK:didCreatedExternalUpdateHandler:

Called during -start:completion:

When rendering mode is set to external, this method is called to pass a Wikitude internal update block to the external renderer.

- (void)wikitudeNativeSDK:(WTWikitudeNativeSDK *)wikitudeNativeSDK didCreatedExternalUpdateHandler:(WTWikitudeUpdateHandler)updateHandler

Parameters

wikitudeNativeSDK

The Wikitude Native SDK object that created the update handler.

updateHandler

A ObjC block object that needs to be called every frame in order to update the Wikitude Native SDK internally. If this handler is not called, no computer vision related updates are done.

Declared In

WTWikitudeNativeSDK.h

– wikitudeNativeSDK:didCreatedExternalDrawHandler:

Called during -start:completion:

When rendering mode is set to external, this method is called to pass a Wikitude internal draw handler to the external renderer.

- (void)wikitudeNativeSDK:(WTWikitudeNativeSDK *)wikitudeNativeSDK didCreatedExternalDrawHandler:(WTWikitudeDrawHandler)drawHandler

Parameters

wikitudeNativeSDK

The Wikitude Native SDK object that created the draw handler

drawHandler

A ObjC block object that needs to be called every frame in order to draw the camera background

Declared In

WTWikitudeNativeSDK.h

– wikitudeNativeSDK:didSetupRendererWithAPI:

Called during -start:completion:

When rendering mode is set to internal, this method is called to pass the rendering API that was selected from the choices set in the startup configuration.

- (void)wikitudeNativeSDK:(WTWikitudeNativeSDK *)wikitudeNativeSDK didSetupRendererWithAPI:(WTRenderingAPI)renderingAPI

Parameters

wikitudeNativeSDK

The Wikitude Native SDK object that created the renderer

renderingAPI

The rendering API that was selected.

Declared In

WTWikitudeNativeSDK.h

– eaglViewSizeForExternalRenderingInWikitudeNativeSDK:

Called during -start:completion:

When rendering mode is set to external, this method is called to retrieve the OpenGL ES 2 view size.

- (CGRect)eaglViewSizeForExternalRenderingInWikitudeNativeSDK:(WTWikitudeNativeSDK *)wikitudeNativeSDK

Parameters

wikitudeNativeSDK

The Wikitude Native SDK object that requests the eagl view size

Return Value

CGRect A rect representing the current OpenGL ES 2 view size. This method needs to return a non zero rect.

Declared In

WTWikitudeNativeSDK.h

– eaglContextForVideoCameraInWikitudeNativeSDK:

Called during -start:completion:

When rendering mode is set to external, this method is called to retrieve the EAGLContext that should be used to perform camera related OpenGL ES 2 calls.

- (EAGLContext *)eaglContextForVideoCameraInWikitudeNativeSDK:(WTWikitudeNativeSDK *)wikitudeNativeSDK

Parameters

wikitudeNativeSDK

The Wikitude Native SDK object that needs an EALGContext object

Return Value

EAGLContext The EAGLContext object that should be used to perform OpenGL ES 2 calls that are camera related. Note that this context can be a shared context from another EAGLContext object.

Declared In

WTWikitudeNativeSDK.h

– eaglContextForVideoCameraToTextureRenderingInWikitudeNativeSDK:

Called during -start:completion:

When rendering mode is set to external, this method is called to retrieve the EAGLContext object that should be used to perform offscreen rendering related OpenGL ES 2 calls.

- (EAGLContext *)eaglContextForVideoCameraToTextureRenderingInWikitudeNativeSDK:(WTWikitudeNativeSDK *)wikitudeNativeSDK

Parameters

wikitudeNativeSDK

The Wikitude Native SDK object that needs an EALGContext object for video to texture rendering

Return Value

EAGLContext The EAGLContext object that manages the OpenGL ES 2 texture which is the render target

Declared In

WTWikitudeNativeSDK.h

– wikitudeNativeSDKNeedsExternalUpdateHandler:

Called during -start:completion:

When rendering mode is set to internal, this method is called to retrieve a custom update handler object. The handler is then invoked every frame to update Wikitude external logic.

- (nonnull WTCustomUpdateHandler)wikitudeNativeSDKNeedsExternalUpdateHandler:(WTWikitudeNativeSDK *)wikitudeNativeSDK

Parameters

wikitudeNativeSDK

The Wikitude Native SDK object that needs an external update handler

Return Value

WTCustomUpdateHandler A custom update handler object that is invoked every frame by the Wikitude Native SDK

Declared In

WTWikitudeNativeSDK.h

– wikitudeNativeSDKNeedsExternalDrawHandler:

Called during -start:completion:

When rendering mode is set to internal, this mehtod is called to retrieve a custom draw handler object. The handler is then invoked every frame to issue Wikitude external draw commands in OpenGL ES 2.

- (nonnull WTCustomDrawHandler)wikitudeNativeSDKNeedsExternalDrawHandler:(WTWikitudeNativeSDK *)wikitudeNativeSDK

Parameters

wikitudeNativeSDK

The Wikitude Native SDK object that needs an external draw handler

Return Value

WTCustomDrawHandler A custom draw handler object that is invoked every by the Wikitude Native SDK

Declared In

WTWikitudeNativeSDK.h

– wikitudeNativeSDK:didEncounterInternalWarning:

Called every time the Wikitude Native SDK encounters any internal warnings

- (void)wikitudeNativeSDK:(WTWikitudeNativeSDK *)wikitudeNativeSDK didEncounterInternalWarning:(WTWarning *)warning

Parameters

wikitudeNativeSDK

The Wikitude Native SDK object that encountered the internal warning

warning

A warning object that contains more information about a specific warning

Declared In

WTWikitudeNativeSDK.h

– wikitudeNativeSDK:didEncounterInternalError:

Called every time the Wikitude Native SDK encounters any internal errors

- (void)wikitudeNativeSDK:(WTWikitudeNativeSDK *)wikitudeNativeSDK didEncounterInternalError:(NSError *)error

Parameters

wikitudeNativeSDK

The Wikitude Native SDK object that encountered the internal error

error

A error object that contains more information about a specific error

Declared In

WTWikitudeNativeSDK.h