4. ARGSession

ARGSession maintains the status of your application and manages the life cycle of your application according to the status. It also contains rendered frames.

<ARGear/ARGear.h> should be imported beforehand.

ARGSessionDelegate protocol required.

4.1 Init & Create

When creating ARGSession, you can pass ARGConfig and ARGInferenceFeature parameters. ARGConfig contains API URL, API key, secret key, and auth key and it must be sent to ARGSession.

You must pass ARGInferenceFeature parameter to ARGSession and the selected feature will be obtained. The configured feature information can be obtained from ARGFrame.

Below is the sample code to create ARGSession.

// Sample Code. ARGSession Creation Example

ARGConfig *argConfig = [[ARGConfig alloc] initWithApiURL:API_HOST apiKey:API_KEY secretKey:API_SECRET_KEY authKey:API_AUTH_KEY];

NSError * error;
_argSession = [[ARGSession alloc] initWithARGConfig:argConfig error:&error];
_argSession.delegate = self;​

Unless ARGConfig is properly set during ARGSession creation, the ARGear SDK will not be initiated. Therefore, you must create an account in https://argear.io, set the created API Key information in ARGConfig, and create ARGSession with the ARGConfig to use ARGear SDK.

4.2 Run

Create ARGSession with or without an option, ARGInferenceOption. For the details of ARGInferenceOption, please refer to ARGInferenceOption.

Sample code is written below.

// Sample Code. ARGSession Run Example

ARGSession *argSession = [[ARGSession alloc] initWithARGConfig:argConfig feature:ARGInferenceFeatureFaceMeshTracking error:&error];
 
[argSession run];

4.3 Pause

To pause the current ARGSession, call pause function inside ARGSession.

Sample code is written below.

// Sample Code. ARGSession Pause Example

ARGSession *argSession = [[ARGSession alloc] initWithARGConfig:argConfig error:&error];
 
[argSession pause];

4.4 Destroy

To destroy the current ARGSession, use the destroy function.

Sample code is written as follows.

// Sample Code. ARGSession Destroy Example

ARGSession *argSession = [[ARGSession alloc] initWithARGConfig:argConfig error:&error];
 
[argSession destroy];

Last updated