# QairtSystem

Core QAIRT runtime API — inference execution with user-managed tensors.

**Include:** `#include "QairtSystem/Qairt.h"`

- struct Qairt\_V1\_t

    - *#include &lt;Qairt.h&gt;*

Public Members

- uint64\_t size

    - 

- [Qairt\_GetInterfaceFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv422Qairt_GetInterfaceFn_t) getInterface

    - 

- [Qairt\_FreeFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv414Qairt_FreeFn_t) free

    - 

- [Qairt\_ExecuteGraphFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv422Qairt_ExecuteGraphFn_t) executeGraph

    - 

- [Qairt\_ExecuteFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv417Qairt_ExecuteFn_t) execute

    - 

- [Qairt\_GetNumGraphInfosFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv426Qairt_GetNumGraphInfosFn_t) getNumGraphInfos

    - 

- [Qairt\_GetGraphInfoAtFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv424Qairt_GetGraphInfoAtFn_t) getGraphInfoAt

    - 

- [Qairt\_GetLastErrorFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv422Qairt_GetLastErrorFn_t) getLastError

    -

Functions

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) Qairt\_free([Qairt\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv414Qairt_Handle_t) qairtHandle)

    - Free a Qairt runtime instance.

Destroys the Qairt instance and releases all associated resources including backend, context, and graphs.

- Parameters

    - **qairtHandle** – **[in]** Handle to the Qairt instance to free

- Returns

    - Error code:

- QAIRT\_SUCCESS: Qairt instance was successfully freed
- QAIRT\_ERROR\_INVALID\_HANDLE: Invalid Qairt handle

Note

Use corresponding API through [Qairt\_V1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairt__V1__t)

Note

There is no create function - Qairt instances are created via [QairtSystemBuilder\_build()](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemBuilder_8h_1a59d12e4bedcc09956a85d3e27324c5c0)

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) Qairt\_executeGraph([Qairt\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv414Qairt_Handle_t) qairtHandle, const char \*graphName, [QairtSystem\_Context\_TensorInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv438QairtSystem_Context_TensorInfoHandle_t) \*inputTensorInfos, uint8\_t \*\*inputDataBuffers, uint32\_t numInputs, [QairtSystem\_Context\_TensorInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv438QairtSystem_Context_TensorInfoHandle_t) \*outputTensorInfos, uint8\_t \*\*outputDataBuffers, uint32\_t numOutputs)

    - Execute a specific graph with user-provided tensor info and data buffers Executes inference on the specified graph using separate tensor metadata and data buffers.

Users are responsible for:

- Obtaining tensor info from graph info (via Qairt\_getNumGraphInfos and Qairt\_getGraphInfoAt)
- Allocating and filling input data buffers
- Allocating output data buffers
- Managing buffer memory lifecycle

- Parameters

    - - **qairtHandle** – **[in]** Handle to Qairt instance
- **graphName** – **[in]** Name of the graph to execute
- **inputTensorInfos** – **[in]** Array of input tensor info handles
- **inputDataBuffers** – **[in]** Array of input data buffer pointers (must match inputTensorInfos order)
- **numInputs** – **[in]** Number of inputs
- **outputTensorInfos** – **[in]** Array of output tensor info handles
- **outputDataBuffers** – **[inout]** Array of output data buffer pointers (must match outputTensorInfos order)
- **numOutputs** – **[in]** Number of outputs

- Returns

    - Error code:

- QAIRT\_SUCCESS: Execution successful
- QAIRT\_ERROR\_INVALID\_HANDLE: Invalid qairt handle
- QAIRT\_ERROR\_INVALID\_ARGUMENT: Invalid parameters (NULL pointers or invalid counts)
- QAIRT\_ERROR\_CONTEXT\_NOT\_FOUND: Graph not found
- QAIRT\_ERROR\_EXECUTION\_FAILED: Execution failed

Note

Use corresponding API through [Qairt\_V1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairt__V1__t)

Note

Tensor info handles are obtained from graph info, not created by users Example:

// Get graph information
    uint32_t numGraphs;
    Qairt_getNumGraphInfos(qairt, &numGraphs);
    
    QairtSystem_Context_GraphInfoHandle_t graphInfo;
    Qairt_getGraphInfoAt(qairt, 0, &graphInfo);
    
    // Get tensor infos for the first graph
    QairtSystem_Context_TensorInfoHandle_t* inputTensorInfos;
    uint32_t numInputs;
    QairtSystem_Context_GraphInfo_getInputAt(graphInfo, 0, &inputTensorInfos);
    
    // Allocate and fill input buffers
    uint8_t* inputBuffers[numInputs];
    // ... allocate and fill buffers based on tensor info ...
    
    // Get output tensor infos and allocate buffers
    QairtSystem_Context_TensorInfoHandle_t* outputTensorInfos;
    uint32_t numOutputs;
    QairtSystem_Context_GraphInfo_getOutputAt(graphInfo, 0, &outputTensorInfos);
    uint8_t* outputBuffers[numOutputs];
    // ... allocate output buffers ...
    
    // Execute
    const char* graphName;
    QairtSystem_Context_GraphInfo_getName(graphInfo, &graphName);
    Qairt_Status_t status = Qairt_executeGraph(qairt, graphName,
                                                     inputTensorInfos, inputBuffers, numInputs,
                                                     outputTensorInfos, outputBuffers, numOutputs);
    Copy to clipboard

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) Qairt\_execute([Qairt\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv414Qairt_Handle_t) qairtHandle, [QairtSystem\_Context\_TensorInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv438QairtSystem_Context_TensorInfoHandle_t) \*inputTensorInfos, uint8\_t \*\*inputDataBuffers, uint32\_t numInputs, [QairtSystem\_Context\_TensorInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv438QairtSystem_Context_TensorInfoHandle_t) \*outputTensorInfos, uint8\_t \*\*outputDataBuffers, uint32\_t numOutputs)

    - Execute the default graph with user-provided tensor info and data buffers.

Convenience function that executes the first/default graph without needing to specify the graph name. Equivalent to calling Qairt\_executeGraph with the first graph’s name.

Example:

// Execute default graph
    Qairt_Status_t status = Qairt_execute(qairt,
                                                inputTensorInfos, inputBuffers, numInputs,
                                                outputTensorInfos, outputBuffers, numOutputs);
    Copy to clipboard

- Parameters

    - - **qairtHandle** – **[in]** Handle to Qairt instance
- **inputTensorInfos** – **[in]** Array of input tensor info handles
- **inputDataBuffers** – **[in]** Array of input data buffer pointers (must match inputTensorInfos order)
- **numInputs** – **[in]** Number of inputs
- **outputTensorInfos** – **[in]** Array of output tensor info handles
- **outputDataBuffers** – **[inout]** Array of output data buffer pointers (must match outputTensorInfos order)
- **numOutputs** – **[in]** Number of outputs

- Returns

    - Error code:

- QAIRT\_SUCCESS: Execution successful
- QAIRT\_ERROR\_INVALID\_HANDLE: Invalid qairt handle
- QAIRT\_ERROR\_INVALID\_ARGUMENT: Invalid parameters (NULL pointers or invalid counts)
- QAIRT\_ERROR\_EXECUTION\_FAILED: Execution failed

Note

Use corresponding API through [Qairt\_V1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairt__V1__t)

Note

Tensor info handles are obtained from graph info, not created by users

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) Qairt\_getNumGraphInfos([Qairt\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv414Qairt_Handle_t) qairtHandle, uint32\_t \*count)

    - Get the number of graphs in the model.

Returns the count of graphs available in the loaded model. This should be called before [Qairt\_getGraphInfoAt()](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#Qairt_8h_1a0e6d5e10ef5073932409cf3ef7153643) to determine how many graph info handles to allocate.

- Parameters

    - - **qairtHandle** – **[in]** Handle to Qairt instance
- **count** – **[out]** Number of graphs in the model

- Returns

    - Error code:

- QAIRT\_SUCCESS: Count retrieved successfully
- QAIRT\_ERROR\_INVALID\_HANDLE: Invalid qairt handle
- QAIRT\_ERROR\_INVALID\_ARGUMENT: *count* is NULL

Note

Use corresponding API through [Qairt\_V1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairt__V1__t) Example:

uint32_t numGraphs;
    Qairt_Status_t status = Qairt_getNumGraphInfos(qairt, &numGraphs);
    if (status == QAIRT_SUCCESS) {
      printf("Model contains %u graphs\n", numGraphs);
    }
    Copy to clipboard

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) Qairt\_getGraphInfoAt([Qairt\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv414Qairt_Handle_t) qairtHandle, uint32\_t index, [QairtSystem\_Context\_GraphInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv437QairtSystem_Context_GraphInfoHandle_t) \*graphInfo)

    - Get graph information at a specific index.

Retrieves the graph info handle for the graph at the specified index. The index must be in the range [0, count-1] where count is obtained from [Qairt\_getNumGraphInfos()](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#Qairt_8h_1adcab68429f42e07eb6569311d4eb9a29).

Example:

// Get count and allocate array
    uint32_t numGraphs;
    Qairt_getNumGraphInfos(qairt, &numGraphs);
    QairtSystem_Context_GraphInfoHandle_t* graphInfos =
        malloc(numGraphs * sizeof(QairtSystem_Context_GraphInfoHandle_t));
    
    // Retrieve each graph info
    for (uint32_t i = 0; i < numGraphs; i++) {
      Qairt_Status_t status = Qairt_getGraphInfoAt(qairt, i, &graphInfos[i]);
    }
    
    // User is responsible for freeing the array
    free(graphInfos);
    Copy to clipboard

- Parameters

    - - **qairtHandle** – **[in]** Handle to Qairt instance
- **index** – **[in]** Index of the graph (0-based, must be &lt; count from Qairt\_getNumGraphInfos)
- **graphInfo** – **[out]** Handle to the graph info at the specified index

- Returns

    - Error code:

- QAIRT\_SUCCESS: Graph info retrieved successfully
- QAIRT\_ERROR\_INVALID\_HANDLE: Invalid qairt handle
- QAIRT\_ERROR\_INVALID\_ARGUMENT: *graphInfo* is NULL or *index* is out of bounds

Note

Use corresponding API through [Qairt\_V1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairt__V1__t)

Note

The returned graph info handle is owned by the Qairt instance and should not be freed

Note

Graph info handles remain valid until the Qairt instance is freed

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) Qairt\_getLastError([Qairt\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv414Qairt_Handle_t) qairtHandle, const char \*\*errorMsg)

    - Get the last error message.

Returns a detailed error message for the last operation that failed. Useful for debugging and error reporting.

Example:

const char* errorMsg;
    Qairt_Status_t status = Qairt_execute(qairt, inputs, 2, outputs, 1);
    if (status != QAIRT_SUCCESS) {
      Qairt_getLastError(qairt, &errorMsg);
      printf("Execution failed: %s\n", errorMsg ? errorMsg : "Unknown error");
    }
    Copy to clipboard

- Parameters

    - - **qairtHandle** – **[in]** Handle to Qairt instance
- **errorMsg** – **[out]** Pointer to error message string

- Returns

    - Error code:

- QAIRT\_SUCCESS: Error message retrieved (may be empty if no error)
- QAIRT\_ERROR\_INVALID\_HANDLE: Invalid qairt handle
- QAIRT\_ERROR\_INVALID\_ARGUMENT: *errorMsg* is NULL

Note

Use corresponding API through [Qairt\_V1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairt__V1__t)

Note

The returned string is owned by the Qairt instance and should not be freed

Note

The error message remains valid until the next operation or until the Qairt instance is freed

Note

Returns NULL or empty string if no error has occurred

Enums

- enum Qairt\_Error\_t

    - Qairt runtime API error codes.

*Values:*

- enumerator QAIRT\_MIN\_ERROR = QAIRT\_MIN\_ERROR\_SYSTEM + 200

    - 

- enumerator QAIRT\_NO\_ERROR = QAIRT\_SUCCESS

    - Qairt runtime success.

- enumerator QAIRT\_ERROR\_INVALID\_HANDLE = 30200

    - Invalid/NULL Qairt handle.

- enumerator QAIRT\_ERROR\_INVALID\_ARGUMENT = 30201

    - Invalid function argument.

- enumerator QAIRT\_ERROR\_CONTEXT\_NOT\_FOUND = 30202

    - Graph not found.

- enumerator QAIRT\_ERROR\_EXECUTION\_FAILED = 30203

    - Execution failed.

- enumerator QAIRT\_MAX\_ERROR = QAIRT\_MIN\_ERROR\_SYSTEM + 299

    - 

- enumerator QAIRT\_ERROR\_UNDEFINED = 0x7FFFFFFF

    - Unused, present to ensure 32 bits.

Typedefs

- typedef void \*Qairt\_Handle\_t

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*Qairt\_FreeFn\_t)([Qairt\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv414Qairt_Handle_t))

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*Qairt\_ExecuteGraphFn\_t)([Qairt\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv414Qairt_Handle_t), const char\*, [QairtSystem\_Context\_TensorInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv438QairtSystem_Context_TensorInfoHandle_t)\*, uint8\_t\*\*, uint32\_t, [QairtSystem\_Context\_TensorInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv438QairtSystem_Context_TensorInfoHandle_t)\*, uint8\_t\*\*, uint32\_t)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*Qairt\_ExecuteFn\_t)([Qairt\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv414Qairt_Handle_t), [QairtSystem\_Context\_TensorInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv438QairtSystem_Context_TensorInfoHandle_t)\*, uint8\_t\*\*, uint32\_t, [QairtSystem\_Context\_TensorInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv438QairtSystem_Context_TensorInfoHandle_t)\*, uint8\_t\*\*, uint32\_t)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*Qairt\_GetNumGraphInfosFn\_t)([Qairt\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv414Qairt_Handle_t), uint32\_t\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*Qairt\_GetGraphInfoAtFn\_t)([Qairt\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv414Qairt_Handle_t), uint32\_t, [QairtSystem\_Context\_GraphInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv437QairtSystem_Context_GraphInfoHandle_t)\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*Qairt\_GetLastErrorFn\_t)([Qairt\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv414Qairt_Handle_t), const char\*\*)

    -

Defines

- QAIRT\_V1\_ID (QAIRT\_MIN\_ID\_SYSTEM + 11)

    - Interface ID for Qairt V1.

Note

This is also defined in QairtSystemBuilder.h

- QAIRT\_HANDLE\_V1\_T\_DEFINED

    - Handle to a Qairt runtime instance.

Note

This is also defined in QairtSystemBuilder.h

* * *

Builder API for constructing a QAIRT runtime instance.

**Include:** `#include "QairtSystem/QairtSystemBuilder.h"`

- struct QairtSystemBuilder\_V1\_t

    - *#include &lt;QairtSystemBuilder.h&gt;*

Public Members

- uint64\_t size

    - 

- [Qairt\_GetInterfaceFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv422Qairt_GetInterfaceFn_t) getInterface

    - 

- [QairtSystemBuilder\_CreateFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv429QairtSystemBuilder_CreateFn_t) create

    - 

- [QairtSystemBuilder\_FreeFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv427QairtSystemBuilder_FreeFn_t) free

    - 

- [QairtSystemBuilder\_SetDlcFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv429QairtSystemBuilder_SetDlcFn_t) setDlc

    - Set DLC via handle-manager handle (C users)

- [QairtSystemBuilder\_SetDlcPtrFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv432QairtSystemBuilder_SetDlcPtrFn_t) setDlcPtr

    - Set DLC via raw pointer (C++ wrapper only)

- [QairtSystemBuilder\_SetSystemApiFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv435QairtSystemBuilder_SetSystemApiFn_t) setSystemApi

    - 

- [QairtSystemBuilder\_SetLogLevelFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv434QairtSystemBuilder_SetLogLevelFn_t) setLogLevel

    - 

- [QairtSystemBuilder\_SetProfilingLevelFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv440QairtSystemBuilder_SetProfilingLevelFn_t) setProfilingLevel

    - 

- [QairtSystemBuilder\_SetProfilingOptionFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv441QairtSystemBuilder_SetProfilingOptionFn_t) setProfilingOption

    - 

- [QairtSystemBuilder\_SetPerfProfileFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv437QairtSystemBuilder_SetPerfProfileFn_t) setPerfProfile

    - 

- [QairtSystemBuilder\_SetPlatformOptionsFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv441QairtSystemBuilder_SetPlatformOptionsFn_t) setPlatformOptions

    - 

- [QairtSystemBuilder\_SetDeviceOptionsFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv439QairtSystemBuilder_SetDeviceOptionsFn_t) setDeviceOptions

    - 

- [QairtSystemBuilder\_AddOpPackageFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv435QairtSystemBuilder_AddOpPackageFn_t) addOpPackage

    - 

- [QairtSystemBuilder\_SetBackendTypeFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv437QairtSystemBuilder_SetBackendTypeFn_t) setBackendType

    - 

- [QairtSystemBuilder\_SetPriorityFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv434QairtSystemBuilder_SetPriorityFn_t) setPriority

    - 

- [QairtSystemBuilder\_SetEnabledGraphsFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv439QairtSystemBuilder_SetEnabledGraphsFn_t) setEnabledGraphs

    - 

- [QairtSystemBuilder\_SetMemoryLimitHintFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv441QairtSystemBuilder_SetMemoryLimitHintFn_t) setMemoryLimitHint

    - 

- [QairtSystemBuilder\_SetIsPersistentBinaryFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv444QairtSystemBuilder_SetIsPersistentBinaryFn_t) setIsPersistentBinary

    - 

- [QairtSystemBuilder\_SetCacheCompatibilityModeFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv448QairtSystemBuilder_SetCacheCompatibilityModeFn_t) setCacheCompatibilityMode

    - 

- [QairtSystemBuilder\_SetProfileMaxEventsFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv442QairtSystemBuilder_SetProfileMaxEventsFn_t) setProfileMaxEvents

    - 

- [QairtSystemBuilder\_SetInputDimensionsFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv441QairtSystemBuilder_SetInputDimensionsFn_t) setInputDimensions

    - 

- [QairtSystemBuilder\_ValidateFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv431QairtSystemBuilder_ValidateFn_t) validate

    - 

- [QairtSystemBuilder\_BuildFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv428QairtSystemBuilder_BuildFn_t) build

    -

Functions

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystemBuilder\_create([QairtSystemBuilder\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv427QairtSystemBuilder_Handle_t) \*builderHandle)

    - Create a system builder handle.

Creates a new QairtSystemBuilder instance for configuring and building Qairt runtime instances.

Example:

QairtSystemBuilder_Handle_t builder;
    Qairt_Status_t status = QairtSystemBuilder_create(&builder);
    if (status != QAIRT_SUCCESS) {
      // Handle error
    }
    Copy to clipboard

- Parameters

    - **builderHandle** – **[out]** A handle to the created builder

- Returns

    - Error code:

- QAIRT\_SUCCESS: Builder was successfully created
- QAIRT\_SYSTEM\_BUILDER\_ERROR\_INVALID\_ARGUMENT: *builderHandle* is NULL
- QAIRT\_SYSTEM\_BUILDER\_ERROR\_MEM\_ALLOC: Memory allocation failed

Note

Use corresponding API through [QairtSystemBuilder\_V1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystemBuilder__V1__t)

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystemBuilder\_free([QairtSystemBuilder\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv427QairtSystemBuilder_Handle_t) builderHandle)

    - Free a system builder handle.

Destroys the QairtSystemBuilder instance and releases all associated resources.

- Parameters

    - **builderHandle** – **[in]** Handle to the builder to free

- Returns

    - Error code:

- QAIRT\_SUCCESS: Builder was successfully freed
- QAIRT\_SYSTEM\_BUILDER\_ERROR\_INVALID\_HANDLE: Invalid builder handle

Note

Use corresponding API through [QairtSystemBuilder\_V1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystemBuilder__V1__t)

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystemBuilder\_setDlc([QairtSystemBuilder\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv427QairtSystemBuilder_Handle_t) builderHandle, [QairtSystemDlc\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv423QairtSystemDlc_Handle_t) dlcHandle)

    - Set the DLC (Deep Learning Container) for the model.

Specifies the SystemDlc object containing the model to execute.

- Parameters

    - - **builderHandle** – **[in]** Handle to the builder
- **dlcHandle** – **[in]** Handle to the SystemDlc object

- Returns

    - Error code:

- QAIRT\_SUCCESS: DLC was successfully set
- QAIRT\_SYSTEM\_BUILDER\_ERROR\_INVALID\_HANDLE: Invalid builder or DLC handle
- QAIRT\_SYSTEM\_BUILDER\_ERROR\_INVALID\_ARGUMENT: *dlcHandle* is NULL

Note

Use corresponding API through [QairtSystemBuilder\_V1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystemBuilder__V1__t)

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystemBuilder\_setDlcPtr([QairtSystemBuilder\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv427QairtSystemBuilder_Handle_t) builderHandle, void \*dlcPtr)

    - Set the DLC via a raw pointer that carries a valid API table.

For C++ API use only.

The standard setDlc path accepts a QairtSystemDlc\_Handle\_t from the handle manager, which is a shell without an API table. This variant accepts the raw qairt::SystemDlc\* (as void\*) so the SystemApiTable is preserved through the CAPI boundary. The builder stores a non-owning reference; the caller must keep the original shared\_ptr alive for the lifetime of the builder and the resulting Qairt instance.

- Parameters

    - - **builderHandle** – **[in]** Handle to the builder.
- **dlcPtr** – **[in]** Raw qairt::SystemDlc\* cast to void\*. Must not be NULL.

- Returns

    - Error code:

- QAIRT\_SUCCESS: DLC was successfully set
- QAIRT\_SYSTEM\_BUILDER\_ERROR\_INVALID\_ARGUMENT: dlcPtr is NULL
- QAIRT\_SYSTEM\_BUILDER\_ERROR\_INVALID\_HANDLE: Invalid builder handle

Note

This function is intended to be called from the C++ QairtSystemBuilder wrapper only. C users should use QairtSystemBuilder\_setDlc instead.

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystemBuilder\_setLogLevel([QairtSystemBuilder\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv427QairtSystemBuilder_Handle_t) builderHandle, [QairtLog\_Level\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtLog.html#_CPPv416QairtLog_Level_t) level)

    - Set the logging level.

Controls the verbosity of logging output.

- Parameters

    - - **builderHandle** – **[in]** Handle to the builder
- **level** – **[in]** Log level (e.g., QAIRT\_LOG\_LEVEL\_ERROR, QAIRT\_LOG\_LEVEL\_WARN, QAIRT\_LOG\_LEVEL\_INFO, QAIRT\_LOG\_LEVEL\_VERBOSE, QAIRT\_LOG\_LEVEL\_DEBUG) Default is QAIRT\_LOG\_LEVEL\_ERROR

- Returns

    - Error code:

- QAIRT\_SUCCESS: Log level was successfully set
- QAIRT\_SYSTEM\_BUILDER\_ERROR\_INVALID\_HANDLE: Invalid builder handle

Note

Use corresponding API through [QairtSystemBuilder\_V1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystemBuilder__V1__t)

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystemBuilder\_setProfilingLevel([QairtSystemBuilder\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv427QairtSystemBuilder_Handle_t) builderHandle, [QairtProfile\_Level\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtProfile.html#_CPPv420QairtProfile_Level_t) level)

    - Set the profiling level.

Controls the level of performance profiling.

Example:

QairtSystemBuilder_setProfilingLevel(builder, QAIRT_PROFILE_LEVEL_BASIC);
    Copy to clipboard

- Parameters

    - - **builderHandle** – **[in]** Handle to the builder
- **level** – **[in]** Profiling level:

    - 0: OFF (no profiling)
    - QAIRT\_PROFILE\_LEVEL\_BASIC (1): Basic profiling
    - QAIRT\_PROFILE\_LEVEL\_DETAILED (2): Detailed profiling
    - QAIRT\_PROFILE\_LEVEL\_BACKEND (1000+): Backend-specific profiling Default is 0 (OFF)

- Returns

    - Error code:

- QAIRT\_SUCCESS: Profiling level was successfully set
- QAIRT\_SYSTEM\_BUILDER\_ERROR\_INVALID\_HANDLE: Invalid builder handle

Note

Use corresponding API through [QairtSystemBuilder\_V1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystemBuilder__V1__t)

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystemBuilder\_setProfilingOption([QairtSystemBuilder\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv427QairtSystemBuilder_Handle_t) builderHandle, uint32\_t option)

    - Set the profiling option.

Enables specific profiling features.

- Parameters

    - - **builderHandle** – **[in]** Handle to the builder
- **option** – **[in]** Profiling option (bitfield):

    - 0: NONE (no special profiling)
    - 1: OPTRACE (enable OpTrace profiling) Default is 0 (NONE)

- Returns

    - Error code:

- QAIRT\_SUCCESS: Profiling option was successfully set
- QAIRT\_SYSTEM\_BUILDER\_ERROR\_INVALID\_HANDLE: Invalid builder handle

Note

Use corresponding API through [QairtSystemBuilder\_V1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystemBuilder__V1__t)

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystemBuilder\_setPerfProfile([QairtSystemBuilder\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv427QairtSystemBuilder_Handle_t) builderHandle, [QairtSystem\_PerfProfile\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv425QairtSystem_PerfProfile_t) profile)

    - Set the performance profile.

Controls the power/performance trade-off for execution.

Example:

QairtSystemBuilder_setPerfProfile(builder, QAIRT_PERF_PROFILE_HIGH_PERFORMANCE);
    Copy to clipboard

- Parameters

    - - **builderHandle** – **[in]** Handle to the builder
- **profile** – **[in]** Performance profile:

    - QAIRT\_PERF\_PROFILE\_DEFAULT: Backend default
    - QAIRT\_PERF\_PROFILE\_HIGH\_PERFORMANCE: Maximum performance
    - QAIRT\_PERF\_PROFILE\_POWER\_SAVER: Power saving mode
    - QAIRT\_PERF\_PROFILE\_BALANCED: Balance power and performance
    - QAIRT\_PERF\_PROFILE\_BURST: Short burst of high performance
    - QAIRT\_PERF\_PROFILE\_SUSTAINED\_HIGH\_PERFORMANCE: Sustained high performance
    - QAIRT\_PERF\_PROFILE\_NO\_USER\_INPUT: No preference (default)

- Returns

    - Error code:

- QAIRT\_SUCCESS: Performance profile was successfully set
- QAIRT\_SYSTEM\_BUILDER\_ERROR\_INVALID\_HANDLE: Invalid builder handle

Note

Use corresponding API through [QairtSystemBuilder\_V1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystemBuilder__V1__t)

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystemBuilder\_setPlatformOptions([QairtSystemBuilder\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv427QairtSystemBuilder_Handle_t) builderHandle, const char \*options)

    - Set platform-specific options.

Configures platform-specific settings as a string.

- Parameters

    - - **builderHandle** – **[in]** Handle to the builder
- **options** – **[in]** Platform options string (format: “key1:value1,key2:value2”)

- Returns

    - Error code:

- QAIRT\_SUCCESS: Platform options were successfully set
- QAIRT\_SYSTEM\_BUILDER\_ERROR\_INVALID\_HANDLE: Invalid builder handle
- QAIRT\_SYSTEM\_BUILDER\_ERROR\_INVALID\_ARGUMENT: *options* is NULL

Note

Use corresponding API through [QairtSystemBuilder\_V1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystemBuilder__V1__t)

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystemBuilder\_setDeviceOptions([QairtSystemBuilder\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv427QairtSystemBuilder_Handle_t) builderHandle, const char \*options)

    - Set device-specific options.

Configures device-specific settings as a string.

- Parameters

    - - **builderHandle** – **[in]** Handle to the builder
- **options** – **[in]** Device options string (format: “deviceId:0,coreId:1”)

- Returns

    - Error code:

- QAIRT\_SUCCESS: Device options were successfully set
- QAIRT\_SYSTEM\_BUILDER\_ERROR\_INVALID\_HANDLE: Invalid builder handle
- QAIRT\_SYSTEM\_BUILDER\_ERROR\_INVALID\_ARGUMENT: *options* is NULL

Note

Use corresponding API through [QairtSystemBuilder\_V1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystemBuilder__V1__t)

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystemBuilder\_addOpPackage([QairtSystemBuilder\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv427QairtSystemBuilder_Handle_t) builderHandle, const char \*path, const char \*interfaceProvider, const char \*target)

    - Add an operator package specification.

Registers a custom operator package for use during inference.

- Parameters

    - - **builderHandle** – **[in]** Handle to the builder
- **path** – **[in]** Path to the operator package library
- **interfaceProvider** – **[in]** Interface provider name (can be NULL for default)
- **target** – **[in]** Target platform (e.g., “CPU”, “GPU”, “DSP”, can be NULL for default)

- Returns

    - Error code:

- QAIRT\_SUCCESS: Operator package was successfully added
- QAIRT\_SYSTEM\_BUILDER\_ERROR\_INVALID\_HANDLE: Invalid builder handle
- QAIRT\_SYSTEM\_BUILDER\_ERROR\_INVALID\_ARGUMENT: *path* is NULL

Note

Use corresponding API through [QairtSystemBuilder\_V1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystemBuilder__V1__t)

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystemBuilder\_setBackendType([QairtSystemBuilder\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv427QairtSystemBuilder_Handle_t) builderHandle, [QairtSystem\_BackendType\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv425QairtSystem_BackendType_t) backendType)

    - Set the backend type for inference execution.

Converts the backend type enum to the appropriate library name. The library will be loaded later by the underlying backend initialization.

Example:

QairtSystemBuilder_setBackendType(builder, QAIRT_BACKEND_TYPE_HTP);
    Copy to clipboard

- Parameters

    - - **builderHandle** – **[in]** Handle to the builder
- **backendType** – **[in]** Backend type to use. Valid values:

**SUPPORTED BACKENDS:**
                           - QAIRT_BACKEND_TYPE_CPU (0): CPU backend
                             Library: libQairtCpu.so (Linux) / QairtCpu.dll (Windows)
        
                           - QAIRT_BACKEND_TYPE_GPU (1): GPU backend
                             Library: libQairtGpu.so (Linux) / QairtGpu.dll (Windows)
        
                           - QAIRT_BACKEND_TYPE_HTP (3): HTP backend (HexNN v3)
                             Library: libQairtHtp.so (Linux) / QairtHtp.dll (Windows)
        
                           **NOT SUPPORTED IN QAIRT:**
                           - QAIRT_BACKEND_TYPE_DSP (2): DSP backend (HexNN v2)
                           - QAIRT_BACKEND_TYPE_HTA (4): HTA backend
                           - QAIRT_BACKEND_TYPE_AIP (5): AIP backend
                           - QAIRT_BACKEND_TYPE_LPAI (6): LPAI/EAI backend
        Copy to clipboard

- Returns

    - Error code:

- QAIRT\_SUCCESS: Backend type was successfully set
- QAIRT\_SYSTEM\_BUILDER\_ERROR\_INVALID\_HANDLE: Invalid builder handle
- QAIRT\_SYSTEM\_BUILDER\_ERROR\_INVALID\_ARGUMENT: Invalid backend type
- QAIRT\_SYSTEM\_BUILDER\_ERROR\_BACKEND\_NOT\_SUPPORTED: Backend not supported in QAIRT

Note

Use corresponding API through [QairtSystemBuilder\_V1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystemBuilder__V1__t)

Note

Only CPU, GPU, and HTP backends are currently supported in QAIRT

Note

The library must be in LD\_LIBRARY\_PATH for successful loading during initialization

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystemBuilder\_setPriority([QairtSystemBuilder\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv427QairtSystemBuilder_Handle_t) builderHandle, [Qairt\_Priority\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv416Qairt_Priority_t) priority)

    - Set the priority for context creation.

Sets the execution priority that will be applied to the context. Higher priority contexts may receive preferential scheduling and resource allocation.

Default: QAIRT\_PRIORITY\_NORMAL

Example:

QairtSystemBuilder_setPriority(builder, QAIRT_PRIORITY_HIGH);
    Copy to clipboard

- Parameters

    - - **builderHandle** – **[in]** Handle to the builder
- **priority** – **[in]** Priority value. Valid values:

    - QAIRT\_PRIORITY\_LOW : Always available for use
    - QAIRT\_PRIORITY\_LOWEST : Alias for QAIRT\_PRIORITY\_LOW
    - QAIRT\_PRIORITY\_NORMAL\_LOW : Between Low and Normal priorities
    - QAIRT\_PRIORITY\_NORMAL : Default priority
    - QAIRT\_PRIORITY\_DEFAULT : Alias for QAIRT\_PRIORITY\_NORMAL
    - QAIRT\_PRIORITY\_NORMAL\_HIGH : Between Normal and High priorities
    - QAIRT\_PRIORITY\_HIGH : Between Normal High and High Plus priorities
    - QAIRT\_PRIORITY\_HIGH\_PLUS : Between High and Critical priorities
    - QAIRT\_PRIORITY\_CRITICAL : Between High Plus and Critical Plus priorities
    - QAIRT\_PRIORITY\_CRITICAL\_PLUS : Highest available priority
    - QAIRT\_PRIORITY\_HIGHEST : Alias for QAIRT\_PRIORITY\_CRITICAL\_PLUS

- Returns

    - Error code:

- QAIRT\_SUCCESS: Priority was successfully set
- QAIRT\_SYSTEM\_BUILDER\_ERROR\_INVALID\_HANDLE: Invalid builder handle
- QAIRT\_SYSTEM\_BUILDER\_ERROR\_INVALID\_ARGUMENT: Invalid priority value

Note

Use corresponding API through [QairtSystemBuilder\_V1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystemBuilder__V1__t)

Note

Usage of priorities apart from QAIRT\_PRIORITY\_LOW may be restricted on some platforms

Note

Currently not usable, would be effective once backend extensions implemented for Qairt

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystemBuilder\_setEnabledGraphs([QairtSystemBuilder\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv427QairtSystemBuilder_Handle_t) builderHandle, const char \*const \*graphNames, uint32\_t numGraphs)

    - Set list of graphs to enable in context.

Specifies which graphs from the DLC should be enabled during context creation. If not set, all graphs in the DLC will be enabled by default.

Example:

const char* graphs[] = {"model1", "model2"};
    QairtSystemBuilder_setEnabledGraphs(builder, graphs, 2);
    Copy to clipboard

- Parameters

    - - **builderHandle** – **[in]** Handle to the builder
- **graphNames** – **[in]** Array of null-terminated graph name strings. Each string should match a graph name in the DLC.
- **numGraphs** – **[in]** Number of graph names in the array. Must be &gt; 0.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Enabled graphs were successfully set
- QAIRT\_SYSTEM\_BUILDER\_ERROR\_INVALID\_HANDLE: Invalid builder handle
- QAIRT\_SYSTEM\_BUILDER\_ERROR\_INVALID\_ARGUMENT: graphNames is NULL or numGraphs is 0

Note

Use corresponding API through [QairtSystemBuilder\_V1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystemBuilder__V1__t)

Note

Graph names must exactly match those in the DLC

Note

If a specified graph name doesn’t exist in the DLC, context creation may fail

Note

Currently not usable, would be effective once backend extensions implemented for Qairt

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystemBuilder\_setMemoryLimitHint([QairtSystemBuilder\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv427QairtSystemBuilder_Handle_t) builderHandle, uint64\_t memoryLimitHint)

    - Set memory limit hint for context.

Provides a hint to the backend about the maximum memory that should be used for this context. The backend may use this to optimize memory allocation.

Example:

// Set 1GB memory limit hint
    QairtSystemBuilder_setMemoryLimitHint(builder, 1073741824);
    Copy to clipboard

- Parameters

    - - **builderHandle** – **[in]** Handle to the builder
- **memoryLimitHint** – **[in]** Memory limit in bytes.

    - 0: No limit (default)
    - &gt;0: Suggested maximum memory usage in bytes

- Returns

    - Error code:

- QAIRT\_SUCCESS: Memory limit hint was successfully set
- QAIRT\_SYSTEM\_BUILDER\_ERROR\_INVALID\_HANDLE: Invalid builder handle

Note

Use corresponding API through [QairtSystemBuilder\_V1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystemBuilder__V1__t)

Note

This is a hint; the backend may not strictly enforce this limit

Note

Actual memory usage may exceed this value depending on model requirements

Note

Currently not usable, would be effective once backend extensions implemented for Qairt

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystemBuilder\_setIsPersistentBinary([QairtSystemBuilder\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv427QairtSystemBuilder_Handle_t) builderHandle, uint8\_t isPersistent)

    - Set whether binary should be persistent.

Controls whether the context binary cache should persist across application restarts. When enabled, the binary cache may be saved to persistent storage for faster subsequent loads.

Example:

QairtSystemBuilder_setIsPersistentBinary(builder, 1);  // Enable persistence
    Copy to clipboard

- Parameters

    - - **builderHandle** – **[in]** Handle to the builder
- **isPersistent** – **[in]** Persistent binary flag:

    - 0: Non-persistent (default) - binary cache is temporary
    - 1: Persistent - binary cache may be saved to disk

- Returns

    - Error code:

- QAIRT\_SUCCESS: Persistent binary flag was successfully set
- QAIRT\_SYSTEM\_BUILDER\_ERROR\_INVALID\_HANDLE: Invalid builder handle

Note

Use corresponding API through [QairtSystemBuilder\_V1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystemBuilder__V1__t)

Note

Backend support for persistent binaries varies by platform

Note

Persistent binaries may improve subsequent load times

Note

Currently not usable, would be effective once backend extensions implemented for Qairt

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystemBuilder\_setCacheCompatibilityMode([QairtSystemBuilder\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv427QairtSystemBuilder_Handle_t) builderHandle, [QairtContext\_BinaryCompatibilityType\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtContext.html#_CPPv438QairtContext_BinaryCompatibilityType_t) compatibilityMode)

    - Set cache compatibility mode.

Controls how strictly the binary cache compatibility is checked when loading a cached context binary. This affects whether a cached binary is considered compatible with the current hardware/software configuration.

- Parameters

    - - **builderHandle** – **[in]** Handle to the builder
- **compatibilityMode** – **[in]** Compatibility mode. Valid values:

    - QAIRT\_CONTEXT\_BINARY\_COMPATIBILITY\_PERMISSIVE
    - QAIRT\_CONTEXT\_BINARY\_COMPATIBILITY\_STRICT Default: QAIRT\_CONTEXT\_BINARY\_COMPATIBILITY\_PERMISSIVE (0)

- Returns

    - Error code:

- QAIRT\_SUCCESS: Cache compatibility mode was successfully set
- QAIRT\_SYSTEM\_BUILDER\_ERROR\_INVALID\_HANDLE: Invalid builder handle
- QAIRT\_SYSTEM\_BUILDER\_ERROR\_INVALID\_ARGUMENT: Invalid compatibility mode

Note

Use corresponding API through [QairtSystemBuilder\_V1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystemBuilder__V1__t)

Note

STRICT mode ensures optimal performance but may reject more cached binaries

Note

PERMISSIVE mode maximizes cache reuse but may not achieve peak performance

Note

Currently not usable, would be effective once backend extensions implemented for Qairt Example:

// Use strict mode for optimal performance
    QairtSystemBuilder_setCacheCompatibilityMode(builder,
        QAIRT_CONTEXT_BINARY_COMPATIBILITY_STRICT);
    Copy to clipboard

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystemBuilder\_setProfileMaxEvents([QairtSystemBuilder\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv427QairtSystemBuilder_Handle_t) builderHandle, uint64\_t maxEvents)

    - Set maximum number of profile events to capture.

Limits the number of profiling events that will be recorded during execution. This can be used to control memory usage when profiling is enabled.

Once the limit is reached, older events may be discarded or new events may not be recorded, depending on backend implementation.

Example:

// Limit to 1000 profile events
    QairtSystemBuilder_setProfileMaxEvents(builder, 1000);
    Copy to clipboard

- Parameters

    - - **builderHandle** – **[in]** Handle to the builder
- **maxEvents** – **[in]** Maximum number of profile events to record:

    - 0: No limit (default) - record all events
    - &gt;0: Maximum number of events to capture

- Returns

    - Error code:

- QAIRT\_SUCCESS: Profile max events was successfully set
- QAIRT\_SYSTEM\_BUILDER\_ERROR\_INVALID\_HANDLE: Invalid builder handle

Note

Use corresponding API through [QairtSystemBuilder\_V1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystemBuilder__V1__t)

Note

This setting only takes effect when profiling is enabled

Note

Backend support for this feature varies by platform

Note

Setting a limit can help prevent excessive memory usage during profiling

Note

Currently not usable, would be effective once backend extensions implemented for Qairt

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystemBuilder\_setInputDimensions([QairtSystemBuilder\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv427QairtSystemBuilder_Handle_t) builderHandle, const char \*graphName, const char \*\*inputNames, const size\_t \*\*inputDims, const uint32\_t \*numDimsPerInput, uint32\_t numInputs)

    - Set input tensor dimensions for dynamic resizing.

- Parameters

    - - **builderHandle** – **[in]** Handle to the builder
- **graphName** – **[in]** Name of the graph (“” for the first/only graph)
- **inputNames** – **[in]** Array of input tensor names
- **inputDims** – **[in]** Array of dimension arrays (one per tensor)
- **numDimsPerInput** – **[in]** Array of dimension counts (one per tensor)
- **numInputs** – **[in]** Number of tensors in inputNames/inputDims arrays

- Returns

    - QAIRT\_SUCCESS on success, error code otherwise

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystemBuilder\_validate([QairtSystemBuilder\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv427QairtSystemBuilder_Handle_t) builderHandle, char \*errorMsg, size\_t errorMsgSize)

    - Validate the current configuration.

Checks if the current builder configuration is valid and ready for building.

Example:

char errorMsg[256];
    Qairt_Status_t status = QairtSystemBuilder_validate(builder, errorMsg, sizeof(errorMsg));
    if (status != QAIRT_SUCCESS) {
      printf("Validation failed: %s\n", errorMsg);
    }
    Copy to clipboard

- Parameters

    - - **builderHandle** – **[in]** Handle to the builder
- **errorMsg** – **[out]** Buffer to receive error message if validation fails (can be NULL)
- **errorMsgSize** – **[in]** Size of the error message buffer

- Returns

    - Error code:

- QAIRT\_SUCCESS: Configuration is valid
- QAIRT\_SYSTEM\_BUILDER\_ERROR\_INVALID\_HANDLE: Invalid builder handle
- QAIRT\_SYSTEM\_BUILDER\_ERROR\_VALIDATION\_FAILED: Configuration validation failed

Note

Use corresponding API through [QairtSystemBuilder\_V1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystemBuilder__V1__t)

Note

If *errorMsg* is NULL, validation still occurs but no error message is returned

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystemBuilder\_build([QairtSystemBuilder\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv427QairtSystemBuilder_Handle_t) builderHandle, [Qairt\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv414Qairt_Handle_t) \*qairtHandle)

    - Build a Qairt instance with the current configuration.

Creates and initializes a Qairt runtime instance based on the current builder configuration. This performs full initialization including:

- Backend creation and configuration
- Operator package registration
- Device creation (if supported)
- Context creation from DLC
- Graph loading

If initialization fails, the function returns an error and no Qairt instance is created.

Example:

Qairt_Handle_t qairt;
    Qairt_Status_t status = QairtSystemBuilder_build(builder, &qairt);
    if (status == QAIRT_SUCCESS) {
      // Qairt is ready for inference
      // Can now free the builder
      QairtSystemBuilder_free(builder);
    }
    Copy to clipboard

- Parameters

    - - **builderHandle** – **[in]** Handle to the builder
- **qairtHandle** – **[out]** Handle to the created Qairt instance

- Returns

    - Error code:

- QAIRT\_SUCCESS: Qairt instance was successfully created and initialized
- QAIRT\_SYSTEM\_BUILDER\_ERROR\_INVALID\_HANDLE: Invalid builder handle
- QAIRT\_SYSTEM\_BUILDER\_ERROR\_INVALID\_ARGUMENT: *qairtHandle* is NULL
- QAIRT\_SYSTEM\_BUILDER\_ERROR\_VALIDATION\_FAILED: Configuration validation failed
- QAIRT\_SYSTEM\_BUILDER\_ERROR\_BUILD\_FAILED: Build or initialization failed

Note

Use corresponding API through [QairtSystemBuilder\_V1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystemBuilder__V1__t)

Note

The returned Qairt instance is ready to use immediately for inference

Note

The builder can be freed after successful build

Enums

- enum QairtSystem\_BackendType\_t

    - Backend type enum for selecting inference backend.

*Values:*

- enumerator QAIRT\_BACKEND\_TYPE\_CPU = 0

    - CPU backend (libQairtCpu.so / QairtCpu.dll) - SUPPORTED.

- enumerator QAIRT\_BACKEND\_TYPE\_GPU = 1

    - GPU backend (libQairtGpu.so / QairtGpu.dll) - SUPPORTED.

- enumerator QAIRT\_BACKEND\_TYPE\_DSP = 2

    - DSP backend / HexNN v2 (libQairtDsp.so / QairtDsp.dll) - NOT SUPPORTED.

- enumerator QAIRT\_BACKEND\_TYPE\_HTP = 3

    - HTP backend / HexNN v3 (libQairtHtp.so / QairtHtp.dll) - SUPPORTED.

- enumerator QAIRT\_BACKEND\_TYPE\_HTA = 4

    - HTA backend (libQairtHta.so / QairtHta.dll) - NOT SUPPORTED.

- enumerator QAIRT\_BACKEND\_TYPE\_AIP = 5

    - AIP backend (libQairtAip.so / QairtAip.dll) - NOT SUPPORTED.

- enumerator QAIRT\_BACKEND\_TYPE\_LPAI = 6

    - LPAI/EAI backend (libQairtLpai.so / QairtLpai.dll) - NOT SUPPORTED.

- enumerator QAIRT\_BACKEND\_TYPE\_EAI = 6

    - Alias for LPAI.

- enumerator QAIRT\_BACKEND\_TYPE\_UNDEFINED = 0x7FFFFFFF

    -

- enum QairtSystem\_PerfProfile\_t

    - Performance profile enum for power/performance trade-off.

*Values:*

- enumerator QAIRT\_PERF\_PROFILE\_DEFAULT = 0

    - Backend default.

- enumerator QAIRT\_PERF\_PROFILE\_LOW\_BALANCED = 1

    - Low balanced mode.

- enumerator QAIRT\_PERF\_PROFILE\_BALANCED = 2

    - Balanced power/performance.

- enumerator QAIRT\_PERF\_PROFILE\_HIGH\_PERFORMANCE = 3

    - Maximum performance.

- enumerator QAIRT\_PERF\_PROFILE\_SUSTAINED\_HIGH\_PERFORMANCE = 4

    - Sustained high performance.

- enumerator QAIRT\_PERF\_PROFILE\_BURST = 5

    - Short burst mode.

- enumerator QAIRT\_PERF\_PROFILE\_EXTREME\_POWER\_SAVER = 6

    - Extreme power saving.

- enumerator QAIRT\_PERF\_PROFILE\_LOW\_POWER\_SAVER = 7

    - Low power saver.

- enumerator QAIRT\_PERF\_PROFILE\_POWER\_SAVER = 8

    - Power saver mode.

- enumerator QAIRT\_PERF\_PROFILE\_HIGH\_POWER\_SAVER = 9

    - High power saver.

- enumerator QAIRT\_PERF\_PROFILE\_SYSTEM\_SETTINGS = 10

    - Use system settings.

- enumerator QAIRT\_PERF\_PROFILE\_NO\_USER\_INPUT = 11

    - No preference specified.

- enumerator QAIRT\_PERF\_PROFILE\_UNDEFINED = 0x7FFFFFFF

    - Undefined value.

- enum QairtSystemBuilder\_Error\_t

    - System Builder API error codes.

*Values:*

- enumerator QAIRT\_SYSTEM\_BUILDER\_MIN\_ERROR = QAIRT\_MIN\_ERROR\_SYSTEM + 100

    - 

- enumerator QAIRT\_SYSTEM\_BUILDER\_NO\_ERROR = QAIRT\_SUCCESS

    - System Builder success.

- enumerator QAIRT\_SYSTEM\_BUILDER\_ERROR\_INVALID\_HANDLE = 30100

    - Invalid/NULL System Builder handle.

- enumerator QAIRT\_SYSTEM\_BUILDER\_ERROR\_INVALID\_ARGUMENT = 30101

    - Invalid function argument.

- enumerator QAIRT\_SYSTEM\_BUILDER\_ERROR\_MEM\_ALLOC = 30102

    - Memory allocation error.

- enumerator QAIRT\_SYSTEM\_BUILDER\_ERROR\_VALIDATION\_FAILED = 30103

    - Configuration validation failed.

- enumerator QAIRT\_SYSTEM\_BUILDER\_ERROR\_BUILD\_FAILED = 30104

    - Build process failed.

- enumerator QAIRT\_SYSTEM\_BUILDER\_ERROR\_BACKEND\_NOT\_FOUND = 30105

    - Backend library not found.

- enumerator QAIRT\_SYSTEM\_BUILDER\_ERROR\_BACKEND\_NOT\_SUPPORTED = 30106

    - Backend type not supported in QAIRT.

- enumerator QAIRT\_SYSTEM\_BUILDER\_MAX\_ERROR = QAIRT\_MIN\_ERROR\_SYSTEM + 199

    - 

- enumerator QAIRT\_SYSTEM\_BUILDER\_ERROR\_UNDEFINED = 0x7FFFFFFF

    - Unused, present to ensure 32 bits.

Typedefs

- typedef void \*QairtSystemBuilder\_Handle\_t

    - Handle to a System Builder instance.

- typedef void \*Qairt\_Handle\_t

    - Handle to a Qairt runtime instance.

- typedef void \*QairtSystemApi\_Handle\_t

    - Handle to a SystemApi instance.

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystemBuilder\_CreateFn\_t)([QairtSystemBuilder\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv427QairtSystemBuilder_Handle_t)\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystemBuilder\_FreeFn\_t)([QairtSystemBuilder\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv427QairtSystemBuilder_Handle_t))

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystemBuilder\_SetDlcFn\_t)([QairtSystemBuilder\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv427QairtSystemBuilder_Handle_t), [QairtSystemDlc\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv423QairtSystemDlc_Handle_t))

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystemBuilder\_SetDlcPtrFn\_t)([QairtSystemBuilder\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv427QairtSystemBuilder_Handle_t), void\*)

    - Function pointer type for setDlcPtr — accepts a raw SystemDlc\* (as void\*) to preserve its API table across the CAPI boundary.

Used by the C++ wrapper.

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystemBuilder\_SetSystemApiFn\_t)([QairtSystemBuilder\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv427QairtSystemBuilder_Handle_t), [QairtSystemApi\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv423QairtSystemApi_Handle_t))

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystemBuilder\_SetLogLevelFn\_t)([QairtSystemBuilder\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv427QairtSystemBuilder_Handle_t), [QairtLog\_Level\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtLog.html#_CPPv416QairtLog_Level_t))

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystemBuilder\_SetProfilingLevelFn\_t)([QairtSystemBuilder\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv427QairtSystemBuilder_Handle_t), [QairtProfile\_Level\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtProfile.html#_CPPv420QairtProfile_Level_t))

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystemBuilder\_SetProfilingOptionFn\_t)([QairtSystemBuilder\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv427QairtSystemBuilder_Handle_t), uint32\_t)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystemBuilder\_SetPerfProfileFn\_t)([QairtSystemBuilder\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv427QairtSystemBuilder_Handle_t), [QairtSystem\_PerfProfile\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv425QairtSystem_PerfProfile_t))

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystemBuilder\_SetPlatformOptionsFn\_t)([QairtSystemBuilder\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv427QairtSystemBuilder_Handle_t), const char\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystemBuilder\_SetDeviceOptionsFn\_t)([QairtSystemBuilder\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv427QairtSystemBuilder_Handle_t), const char\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystemBuilder\_AddOpPackageFn\_t)([QairtSystemBuilder\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv427QairtSystemBuilder_Handle_t), const char\*, const char\*, const char\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystemBuilder\_SetBackendTypeFn\_t)([QairtSystemBuilder\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv427QairtSystemBuilder_Handle_t), [QairtSystem\_BackendType\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv425QairtSystem_BackendType_t))

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystemBuilder\_SetPriorityFn\_t)([QairtSystemBuilder\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv427QairtSystemBuilder_Handle_t), [Qairt\_Priority\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv416Qairt_Priority_t))

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystemBuilder\_SetEnabledGraphsFn\_t)([QairtSystemBuilder\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv427QairtSystemBuilder_Handle_t), const char\*const\*, uint32\_t)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystemBuilder\_SetMemoryLimitHintFn\_t)([QairtSystemBuilder\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv427QairtSystemBuilder_Handle_t), uint64\_t)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystemBuilder\_SetIsPersistentBinaryFn\_t)([QairtSystemBuilder\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv427QairtSystemBuilder_Handle_t), uint8\_t)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystemBuilder\_SetCacheCompatibilityModeFn\_t)([QairtSystemBuilder\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv427QairtSystemBuilder_Handle_t), [QairtContext\_BinaryCompatibilityType\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtContext.html#_CPPv438QairtContext_BinaryCompatibilityType_t))

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystemBuilder\_SetProfileMaxEventsFn\_t)([QairtSystemBuilder\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv427QairtSystemBuilder_Handle_t), uint64\_t)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystemBuilder\_SetInputDimensionsFn\_t)([QairtSystemBuilder\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv427QairtSystemBuilder_Handle_t), const char\*, const char\*\*, const size\_t\*\*, const uint32\_t\*, uint32\_t)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystemBuilder\_ValidateFn\_t)([QairtSystemBuilder\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv427QairtSystemBuilder_Handle_t), char\*, size\_t)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystemBuilder\_BuildFn\_t)([QairtSystemBuilder\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv427QairtSystemBuilder_Handle_t), [Qairt\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv414Qairt_Handle_t)\*)

    -

Defines

- QAIRT\_SYSTEM\_BUILDER\_V1\_ID (QAIRT\_MIN\_ID\_SYSTEM + 10)

    - Interface ID for QairtSystemBuilder V1.

* * *

Common error codes and version macros shared across the System API.

**Include:** `#include "QairtSystem/QairtSystemCommon.h"`

Functions

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystemInterface\_getInterface(uint64\_t id, void \*\*interfaceOut)

    -

Enums

- enum QairtSystemCommon\_Error\_t

    - QAIRT System Profile API result / error codes.

*Values:*

- enumerator QAIRT\_SYSTEM\_COMMON\_NO\_ERROR = QAIRT\_SUCCESS

    - QAIRT System success.

- enumerator QAIRT\_SYSTEM\_COMMON\_ERROR\_UNSUPPORTED\_FEATURE = [QAIRT\_COMMON\_ERROR\_NOT\_SUPPORTED](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv4N19QairtCommon_Error_t32QAIRT_COMMON_ERROR_NOT_SUPPORTEDE)

    - There is an API component that is not supported yet.

- enumerator QAIRT\_SYSTEM\_COMMON\_ERROR\_INVALID\_HANDLE = 30000

    - QAIRT System invalid handle.

- enumerator QAIRT\_SYSTEM\_COMMON\_ERROR\_INVALID\_ARGUMENT = 30001

    - One or more arguments to a System API is/are NULL/invalid.

Defines

- QAIRT\_SYSTEM\_COMMON\_MIN\_ERROR QAIRT\_MIN\_ERROR\_SYSTEM

    - 

- QAIRT\_SYSTEM\_COMMON\_MAX\_ERROR QAIRT\_MIN\_ERROR\_SYSTEM + 999

    - 

- QAIRT\_SYSTEM\_PROFILE\_MIN\_ERROR QAIRT\_MIN\_ERROR\_SYSTEM + 1000

    - 

- QAIRT\_SYSTEM\_PROFILE\_MAX\_ERROR QAIRT\_MIN\_ERROR\_SYSTEM + 1999

    - 

- QAIRT\_SYSTEM\_INTERFACE\_PROVIDER\_NAME "SYSTEM\_QTI\_AISW"

    - 

- QAIRT\_SYSTEM\_API

    - 

- QAIRT\_SYSTEM\_API\_VERSION\_MAJOR 0

    - 

- QAIRT\_SYSTEM\_API\_VERSION\_MINOR 1

    - 

- QAIRT\_SYSTEM\_API\_VERSION\_PATCH 0

    - 

- QAIRT\_SYSTEM\_CONTEXT\_MIN\_ERROR QAIRT\_MIN\_ERROR\_SYSTEM

    - 

- QAIRT\_SYSTEM\_CONTEXT\_MAX\_ERROR (QAIRT\_SYSTEM\_CONTEXT\_MIN\_ERROR + 999)

    - 

- QAIRT\_SYSTEM\_INTERFACE

    - Retrieve a system interface by its unique identifier.

This is the entry-point symbol exported by the QAIRT System library (libQairtSystem.so).

- Parameters

    - - **id** – **[in]** The unique identifier for the interface to retrieve.
- **interfaceOut** – **[out]** A pointer to be populated with the requested interface.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Interface was successfully retrieved.
- QAIRT\_INTERFACE\_ERROR\_NOT\_SUPPORTED: The requested interface ID is not supported.
- QAIRT\_COMMON\_ERROR\_INVALID\_ARGUMENT: *interfaceOut* is NULL.

* * *

System context API — inspect graph and tensor metadata from a serialized context binary.

**Include:** `#include "QairtSystem/QairtSystemContext.h"`

- struct QairtSystem\_ContextV1\_t

    - Public Members

- uint64\_t size

    - 

- [Qairt\_GetInterfaceFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv422Qairt_GetInterfaceFn_t) getInterface

    - 

- [QairtSystem\_Context\_CreateFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv430QairtSystem_Context_CreateFn_t) create

    - 

- [QairtSystem\_Context\_GetBinaryInfoFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv437QairtSystem_Context_GetBinaryInfoFn_t) getBinaryInfo

    - 

- [QairtSystemContext\_FreeFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv427QairtSystemContext_FreeFn_t) free

    -

- struct QairtSystem\_Context\_BinaryInfoV1\_t

    - Public Members

- uint64\_t size

    - 

- [Qairt\_GetInterfaceFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv422Qairt_GetInterfaceFn_t) getInterface

    - 

- [QairtSystem\_Context\_BinaryInfo\_GetBackendIdFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv447QairtSystem_Context_BinaryInfo_GetBackendIdFn_t) getBackendId

    - 

- [QairtSystem\_Context\_BinaryInfo\_GetBuildIdFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv445QairtSystem_Context_BinaryInfo_GetBuildIdFn_t) getBuildId

    - 

- [QairtSystem\_Context\_BinaryInfo\_GetApiVersionFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv448QairtSystem_Context_BinaryInfo_GetApiVersionFn_t) getApiVersion

    - 

- [QairtSystem\_Context\_BinaryInfo\_GetBackendApiVersionFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv455QairtSystem_Context_BinaryInfo_GetBackendApiVersionFn_t) getBackendApiVersion

    - 

- [QairtSystem\_Context\_BinaryInfo\_GetNumSocVersionsFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv452QairtSystem_Context_BinaryInfo_GetNumSocVersionsFn_t) getNumSocVersions

    - 

- [QairtSystem\_Context\_BinaryInfo\_GetSocVersionAtFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv450QairtSystem_Context_BinaryInfo_GetSocVersionAtFn_t) getSocVersionAt

    - 

- [QairtSystem\_Context\_BinaryInfo\_GetNumGraphInfosFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv451QairtSystem_Context_BinaryInfo_GetNumGraphInfosFn_t) getNumGraphInfos

    - 

- [QairtSystem\_Context\_BinaryInfo\_GetGraphInfoAtFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv449QairtSystem_Context_BinaryInfo_GetGraphInfoAtFn_t) getGraphInfoAt

    -

- struct QairtSystem\_Context\_GraphInfoV1\_t

    - Public Members

- uint64\_t size

    - 

- [Qairt\_GetInterfaceFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv422Qairt_GetInterfaceFn_t) getInterface

    - 

- [QairtSystem\_Context\_GraphInfo\_GetNameFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv441QairtSystem_Context_GraphInfo_GetNameFn_t) getName

    - 

- [QairtSystem\_Context\_GraphInfo\_GetNumInputsFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv446QairtSystem_Context_GraphInfo_GetNumInputsFn_t) getNumInputs

    - 

- [QairtSystem\_Context\_GraphInfo\_GetInputAtFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv444QairtSystem_Context_GraphInfo_GetInputAtFn_t) getInputAt

    - 

- [QairtSystem\_Context\_GraphInfo\_GetNumOutputsFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv447QairtSystem_Context_GraphInfo_GetNumOutputsFn_t) getNumOutputs

    - 

- [QairtSystem\_Context\_GraphInfo\_GetOutputAtFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv445QairtSystem_Context_GraphInfo_GetOutputAtFn_t) getOutputAt

    - 

- [QairtSystem\_Context\_GraphInfo\_GetNumUpdateablesFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv451QairtSystem_Context_GraphInfo_GetNumUpdateablesFn_t) getNumUpdateables

    - 

- [QairtSystem\_Context\_GraphInfo\_GetUpdateableAtFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv449QairtSystem_Context_GraphInfo_GetUpdateableAtFn_t) getUpdateableAt

    - 

- [QairtSystem\_Context\_GraphInfo\_GetGraphInfoBlobSizeFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv454QairtSystem_Context_GraphInfo_GetGraphInfoBlobSizeFn_t) getGraphInfoBlobSize

    - 

- [QairtSystem\_Context\_GraphInfo\_GetGraphInfoBlobFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv450QairtSystem_Context_GraphInfo_GetGraphInfoBlobFn_t) getGraphInfoBlob

    - 

- [QairtSystem\_Context\_GraphInfo\_GetStartOpIndexFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv449QairtSystem_Context_GraphInfo_GetStartOpIndexFn_t) getStartOpIndex

    - 

- [QairtSystem\_Context\_GraphInfo\_GetEndOpIndexFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv447QairtSystem_Context_GraphInfo_GetEndOpIndexFn_t) getEndOpIndex

    -

- struct QairtSystem\_Context\_GraphInfoSetV1\_t

    - Public Members

- uint64\_t size

    - 

- [Qairt\_GetInterfaceFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv422Qairt_GetInterfaceFn_t) getInterface

    - 

- [QairtSystem\_Context\_GraphInfoSet\_GetNumGraphInfosFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv453QairtSystem_Context_GraphInfoSet_GetNumGraphInfosFn_t) getNumGraphInfos

    - 

- [QairtSystem\_Context\_GraphInfoSet\_GetGraphInfoAtFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv451QairtSystem_Context_GraphInfoSet_GetGraphInfoAtFn_t) getGraphInfoAt

    -

- struct QairtSystem\_Context\_TensorInfoV1\_t

    - Public Members

- uint64\_t size

    - 

- [Qairt\_GetInterfaceFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv422Qairt_GetInterfaceFn_t) getInterface

    - 

- [QairtSystem\_Context\_TensorInfo\_GetIdFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv440QairtSystem_Context_TensorInfo_GetIdFn_t) getId

    - 

- [QairtSystem\_Context\_TensorInfo\_GetNameFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv442QairtSystem_Context_TensorInfo_GetNameFn_t) getName

    - 

- [QairtSystem\_Context\_TensorInfo\_GetRankFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv442QairtSystem_Context_TensorInfo_GetRankFn_t) getRank

    - 

- [QairtSystem\_Context\_TensorInfo\_GetDimensionsFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv448QairtSystem_Context_TensorInfo_GetDimensionsFn_t) getDimensions

    - 

- [QairtSystem\_Context\_TensorInfo\_GetDatatypeFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv446QairtSystem_Context_TensorInfo_GetDatatypeFn_t) getDatatype

    - 

- [QairtSystem\_Context\_TensorInfo\_GetQuantInfoFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv447QairtSystem_Context_TensorInfo_GetQuantInfoFn_t) getQuantInfo

    -

- struct QairtSystem\_Context\_QuantParamInfoV1\_t

    - Public Members

- uint64\_t size

    - 

- [Qairt\_GetInterfaceFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv422Qairt_GetInterfaceFn_t) getInterface

    - 

- [QairtSystem\_Context\_QuantParamInfo\_GetQuantizationTypeFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv458QairtSystem_Context_QuantParamInfo_GetQuantizationTypeFn_t) getQuantizationType

    - 

- [QairtSystem\_Context\_QuantParamInfo\_GetScaleOffsetFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv453QairtSystem_Context_QuantParamInfo_GetScaleOffsetFn_t) getScaleOffset

    - 

- [QairtSystem\_Context\_QuantParamInfo\_GetAxisScaleOffsetFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv457QairtSystem_Context_QuantParamInfo_GetAxisScaleOffsetFn_t) getAxisScaleOffset

    - 

- [QairtSystem\_Context\_QuantParamInfo\_GetBwScaleOffsetFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv455QairtSystem_Context_QuantParamInfo_GetBwScaleOffsetFn_t) getBwScaleOffset

    - 

- [QairtSystem\_Context\_QuantParamInfo\_GetBwAxisScaleOffsetFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv459QairtSystem_Context_QuantParamInfo_GetBwAxisScaleOffsetFn_t) getBwAxisScaleOffset

    - 

- [QairtSystem\_Context\_QuantParamInfo\_GetBwAxisScaleOffsetMappedFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv465QairtSystem_Context_QuantParamInfo_GetBwAxisScaleOffsetMappedFn_t) getBwAxisScaleOffsetMapped

    -

- struct QairtSystem\_Context\_QuantizeParams\_ScaleOffsetV1\_t

    - *#include &lt;QairtSystemContext.h&gt;*

Public Members

- uint64\_t size

    - 

- [Qairt\_GetInterfaceFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv422Qairt_GetInterfaceFn_t) getInterface

    - 

- [QairtSystem\_Context\_QuantizeParams\_ScaleOffset\_CreateFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv457QairtSystem_Context_QuantizeParams_ScaleOffset_CreateFn_t) create

    - 

- [QairtSystem\_Context\_QuantizeParams\_ScaleOffset\_FreeFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv455QairtSystem_Context_QuantizeParams_ScaleOffset_FreeFn_t) free

    - 

- [QairtSystem\_Context\_QuantizeParams\_ScaleOffset\_GetScaleFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv459QairtSystem_Context_QuantizeParams_ScaleOffset_GetScaleFn_t) getScale

    - 

- [QairtSystem\_Context\_QuantizeParams\_ScaleOffset\_GetOffsetFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv460QairtSystem_Context_QuantizeParams_ScaleOffset_GetOffsetFn_t) getOffset

    -

- struct QairtSystem\_Context\_QuantizeParams\_AxisScaleOffsetV1\_t

    - *#include &lt;QairtSystemContext.h&gt;*

Public Members

- uint64\_t size

    - 

- [Qairt\_GetInterfaceFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv422Qairt_GetInterfaceFn_t) getInterface

    - 

- [QairtSystem\_Context\_QuantizeParams\_AxisScaleOffset\_CreateFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv461QairtSystem_Context_QuantizeParams_AxisScaleOffset_CreateFn_t) create

    - 

- [QairtSystem\_Context\_QuantizeParams\_AxisScaleOffset\_FreeFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv459QairtSystem_Context_QuantizeParams_AxisScaleOffset_FreeFn_t) free

    - 

- [QairtSystem\_Context\_QuantizeParams\_AxisScaleOffset\_GetNumScaleOffsetsFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv473QairtSystem_Context_QuantizeParams_AxisScaleOffset_GetNumScaleOffsetsFn_t) getNumScaleOffsets

    - 

- [QairtSystem\_Context\_QuantizeParams\_AxisScaleOffset\_GetScaleOffsetAtFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv471QairtSystem_Context_QuantizeParams_AxisScaleOffset_GetScaleOffsetAtFn_t) getScaleOffsetAt

    - 

- [QairtSystem\_Context\_QuantizeParams\_AxisScaleOffset\_GetAxisFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv462QairtSystem_Context_QuantizeParams_AxisScaleOffset_GetAxisFn_t) getAxis

    -

- struct QairtSystem\_Context\_QuantizeParams\_BwScaleOffsetV1\_t

    - *#include &lt;QairtSystemContext.h&gt;*

Public Members

- uint64\_t size

    - 

- [Qairt\_GetInterfaceFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv422Qairt_GetInterfaceFn_t) getInterface

    - 

- [QairtSystem\_Context\_QuantizeParams\_BwScaleOffset\_CreateFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv459QairtSystem_Context_QuantizeParams_BwScaleOffset_CreateFn_t) create

    - 

- [QairtSystem\_Context\_QuantizeParams\_BwScaleOffset\_FreeFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv457QairtSystem_Context_QuantizeParams_BwScaleOffset_FreeFn_t) free

    - 

- [QairtSystem\_Context\_QuantizeParams\_BwScaleOffset\_GetScaleFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv461QairtSystem_Context_QuantizeParams_BwScaleOffset_GetScaleFn_t) getScale

    - 

- [QairtSystem\_Context\_QuantizeParams\_BwScaleOffset\_GetOffsetFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv462QairtSystem_Context_QuantizeParams_BwScaleOffset_GetOffsetFn_t) getOffset

    - 

- [QairtSystem\_Context\_QuantizeParams\_BwScaleOffset\_GetBwFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv458QairtSystem_Context_QuantizeParams_BwScaleOffset_GetBwFn_t) getBw

    -

- struct QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetV1\_t

    - *#include &lt;QairtSystemContext.h&gt;*

Public Members

- uint64\_t size

    - 

- [Qairt\_GetInterfaceFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv422Qairt_GetInterfaceFn_t) getInterface

    - 

- [QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffset\_CreateFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv463QairtSystem_Context_QuantizeParams_BwAxisScaleOffset_CreateFn_t) create

    - 

- [QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffset\_FreeFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv461QairtSystem_Context_QuantizeParams_BwAxisScaleOffset_FreeFn_t) free

    - 

- [QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffset\_GetNumScalesFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv469QairtSystem_Context_QuantizeParams_BwAxisScaleOffset_GetNumScalesFn_t) getNumScales

    - 

- [QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffset\_GetScaleAtFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv467QairtSystem_Context_QuantizeParams_BwAxisScaleOffset_GetScaleAtFn_t) getScaleAt

    - 

- [QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffset\_GetNumOffsetsFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv470QairtSystem_Context_QuantizeParams_BwAxisScaleOffset_GetNumOffsetsFn_t) getNumOffsets

    - 

- [QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffset\_GetOffsetAtFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv468QairtSystem_Context_QuantizeParams_BwAxisScaleOffset_GetOffsetAtFn_t) getOffsetAt

    - 

- [QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffset\_GetAxisFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv464QairtSystem_Context_QuantizeParams_BwAxisScaleOffset_GetAxisFn_t) getAxis

    - 

- [QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffset\_GetBwFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv462QairtSystem_Context_QuantizeParams_BwAxisScaleOffset_GetBwFn_t) getBw

    -

- struct QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetMappedV1\_t

    - *#include &lt;QairtSystemContext.h&gt;*

Public Members

- uint64\_t size

    - 

- [Qairt\_GetInterfaceFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv422Qairt_GetInterfaceFn_t) getInterface

    - 

- [QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetMapped\_CreateFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv469QairtSystem_Context_QuantizeParams_BwAxisScaleOffsetMapped_CreateFn_t) create

    - 

- [QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetMapped\_FreeFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv467QairtSystem_Context_QuantizeParams_BwAxisScaleOffsetMapped_FreeFn_t) free

    - 

- [QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetMapped\_GetNumScalesFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv475QairtSystem_Context_QuantizeParams_BwAxisScaleOffsetMapped_GetNumScalesFn_t) getNumScales

    - 

- [QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetMapped\_GetScaleAtFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv473QairtSystem_Context_QuantizeParams_BwAxisScaleOffsetMapped_GetScaleAtFn_t) getScaleAt

    - 

- [QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetMapped\_GetNumOffsetsFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv476QairtSystem_Context_QuantizeParams_BwAxisScaleOffsetMapped_GetNumOffsetsFn_t) getNumOffsets

    - 

- [QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetMapped\_GetOffsetAtFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv474QairtSystem_Context_QuantizeParams_BwAxisScaleOffsetMapped_GetOffsetAtFn_t) getOffsetAt

    - 

- [QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetMapped\_GetAxisFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv470QairtSystem_Context_QuantizeParams_BwAxisScaleOffsetMapped_GetAxisFn_t) getAxis

    - 

- [QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetMapped\_GetBwFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv468QairtSystem_Context_QuantizeParams_BwAxisScaleOffsetMapped_GetBwFn_t) getBw

    - 

- [QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetMapped\_GetMappingFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv473QairtSystem_Context_QuantizeParams_BwAxisScaleOffsetMapped_GetMappingFn_t) getMapping

    -

Functions

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Context\_create([QairtSystem\_Context\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv428QairtSystem_Context_Handle_t) \*sysContext)

    - System Context.

Create a system context handle.

- Parameters

    - **sysContext** – **[out]** A handle to the created system context.

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_ARGUMENT: *sysContext* is NULL
- QAIRT\_COMMON\_ERROR\_MEM\_ALLOC: Memory allocation error while creating system context

Note

Use corresponding API through [QairtSystem\_ContextV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__ContextV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Context\_getBinaryInfo([QairtSystem\_Context\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv428QairtSystem_Context_Handle_t) sysContext, const void \*binaryBuffer, uint64\_t bufferSize, [QairtSystem\_Context\_BinaryInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv438QairtSystem_Context_BinaryInfoHandle_t) \*binaryInfo)

    - Get binary information from a context binary buffer.

- Parameters

    - - **sysContext** – **[in]** A handle to the system context.
- **binaryBuffer** – **[in]** A pointer to the context binary buffer.
- **bufferSize** – **[in]** The size of the context binary buffer in bytes.
- **binaryInfo** – **[out]** A handle to the retrieved binary information.

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_HANDLE: *sysContext* is not a valid handle
- QAIRT\_COMMON\_ERROR\_INVALID\_ARGUMENT: *binaryBuffer* or *binaryInfo* is NULL, or *bufferSize* is 0
- QAIRT\_SYSTEM\_CONTEXT\_ERROR\_MALFORMED\_BINARY: *binaryBuffer* does not contain a valid context binary

Note

Use corresponding API through [QairtSystem\_ContextV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__ContextV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystemContext\_free([QairtSystem\_Context\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv428QairtSystem_Context_Handle_t) sysContext)

    - Free a system context handle.

- Parameters

    - **sysContext** – **[in]** A handle to the system context to be freed.

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_HANDLE: *sysContext* is not a valid handle

Note

Use corresponding API through [QairtSystem\_ContextV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__ContextV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Context\_BinaryInfo\_getBackendId([QairtSystem\_Context\_BinaryInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv438QairtSystem_Context_BinaryInfoHandle_t) info, uint32\_t \*backendId)

    - Binary Context Info.

Get the backend ID from binary information.

- Parameters

    - - **info** – **[in]** A handle to the binary information.
- **backendId** – **[out]** The retrieved backend ID.

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_HANDLE: *info* is not a valid handle
- QAIRT\_COMMON\_ERROR\_INVALID\_ARGUMENT: *backendId* is NULL

Note

Use corresponding API through [QairtSystem\_Context\_BinaryInfoV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Context__BinaryInfoV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Context\_BinaryInfo\_getBuildId([QairtSystem\_Context\_BinaryInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv438QairtSystem_Context_BinaryInfoHandle_t) info, const char \*\*buildId)

    - Get the build ID string from binary information.

- Parameters

    - - **info** – **[in]** A handle to the binary information.
- **buildId** – **[out]** The retrieved build ID string. The string is owned by the binary info handle and must not be freed by the caller.

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_HANDLE: *info* is not a valid handle
- QAIRT\_COMMON\_ERROR\_INVALID\_ARGUMENT: *buildId* is NULL

Note

Use corresponding API through [QairtSystem\_Context\_BinaryInfoV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Context__BinaryInfoV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Context\_BinaryInfo\_getApiVersion([QairtSystem\_Context\_BinaryInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv438QairtSystem_Context_BinaryInfoHandle_t) info, uint32\_t \*major, uint32\_t \*minor, uint32\_t \*patch)

    - Get the API version from binary information.

- Parameters

    - - **info** – **[in]** A handle to the binary information.
- **major** – **[out]** The retrieved major version number.
- **minor** – **[out]** The retrieved minor version number.
- **patch** – **[out]** The retrieved patch version number.

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_HANDLE: *info* is not a valid handle
- QAIRT\_COMMON\_ERROR\_INVALID\_ARGUMENT: *major*, *minor*, or *patch* is NULL

Note

Use corresponding API through [QairtSystem\_Context\_BinaryInfoV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Context__BinaryInfoV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Context\_BinaryInfo\_getBackendApiVersion([QairtSystem\_Context\_BinaryInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv438QairtSystem_Context_BinaryInfoHandle_t) info, uint32\_t \*major, uint32\_t \*minor, uint32\_t \*patch)

    - Get the backend API version from binary information.

- Parameters

    - - **info** – **[in]** A handle to the binary information.
- **major** – **[out]** The retrieved major version number.
- **minor** – **[out]** The retrieved minor version number.
- **patch** – **[out]** The retrieved patch version number.

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_HANDLE: *info* is not a valid handle
- QAIRT\_COMMON\_ERROR\_INVALID\_ARGUMENT: *major*, *minor*, or *patch* is NULL

Note

Use corresponding API through [QairtSystem\_Context\_BinaryInfoV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Context__BinaryInfoV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Context\_BinaryInfo\_getNumSocVersions([QairtSystem\_Context\_BinaryInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv438QairtSystem_Context_BinaryInfoHandle_t) info, uint32\_t \*numVersions)

    - Get the number of SoC versions from binary information.

- Parameters

    - - **info** – **[in]** A handle to the binary information.
- **numVersions** – **[out]** The retrieved number of SoC versions.

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_HANDLE: *info* is not a valid handle
- QAIRT\_COMMON\_ERROR\_INVALID\_ARGUMENT: *numVersions* is NULL

Note

Use corresponding API through [QairtSystem\_Context\_BinaryInfoV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Context__BinaryInfoV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Context\_BinaryInfo\_getSocVersionAt([QairtSystem\_Context\_BinaryInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv438QairtSystem_Context_BinaryInfoHandle_t) info, uint32\_t index, const char \*\*socVersion)

    - Get the SoC version string at an index from binary information.

- Parameters

    - - **info** – **[in]** A handle to the binary information.
- **index** – **[in]** Index of the SoC version to retrieve.
- **socVersion** – **[out]** The retrieved SoC version string. The string is owned by the binary info handle and must not be freed by the caller.

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_HANDLE: *info* is not a valid handle
- QAIRT\_COMMON\_ERROR\_INVALID\_ARGUMENT: *socVersion* is NULL or *index* is greater than or equal to the number of SoC versions

Note

Use corresponding API through [QairtSystem\_Context\_BinaryInfoV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Context__BinaryInfoV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Context\_BinaryInfo\_getNumGraphInfos([QairtSystem\_Context\_BinaryInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv438QairtSystem_Context_BinaryInfoHandle_t) info, uint32\_t \*numGraphInfos)

    - Get the number of graph infos from binary information.

- Parameters

    - - **info** – **[in]** A handle to the binary information.
- **numGraphInfos** – **[out]** The retrieved number of graph infos.

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_HANDLE: *info* is not a valid handle
- QAIRT\_COMMON\_ERROR\_INVALID\_ARGUMENT: *numGraphInfos* is NULL

Note

Use corresponding API through [QairtSystem\_Context\_BinaryInfoV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Context__BinaryInfoV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Context\_BinaryInfo\_getGraphInfoAt([QairtSystem\_Context\_BinaryInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv438QairtSystem_Context_BinaryInfoHandle_t) info, uint32\_t index, [QairtSystem\_Context\_GraphInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv437QairtSystem_Context_GraphInfoHandle_t) \*graphInfo)

    - Get the graph info at an index from binary information.

- Parameters

    - - **info** – **[in]** A handle to the binary information.
- **index** – **[in]** Index of the graph info to retrieve.
- **graphInfo** – **[out]** A handle to the retrieved graph information.

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_HANDLE: *info* is not a valid handle
- QAIRT\_COMMON\_ERROR\_INVALID\_ARGUMENT: *graphInfo* is NULL or *index* is greater than or equal to the number of graph infos

Note

Use corresponding API through [QairtSystem\_Context\_BinaryInfoV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Context__BinaryInfoV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Context\_GraphInfo\_getName([QairtSystem\_Context\_GraphInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv437QairtSystem_Context_GraphInfoHandle_t) graphInfo, const char \*\*name)

    - Graph Info.

Get the name of a graph.

- Parameters

    - - **graphInfo** – **[in]** A handle to the graph information.
- **name** – **[out]** The retrieved graph name string. The string is owned by the graph info handle and must not be freed by the caller.

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_HANDLE: *graphInfo* is not a valid handle
- QAIRT\_COMMON\_ERROR\_INVALID\_ARGUMENT: *name* is NULL

Note

Use corresponding API through [QairtSystem\_Context\_GraphInfoV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Context__GraphInfoV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Context\_GraphInfo\_getNumInputs([QairtSystem\_Context\_GraphInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv437QairtSystem_Context_GraphInfoHandle_t) graphInfo, uint32\_t \*numInputs)

    - Get the number of inputs for a graph.

- Parameters

    - - **graphInfo** – **[in]** A handle to the graph information.
- **numInputs** – **[out]** The retrieved number of graph inputs.

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_HANDLE: *graphInfo* is not a valid handle
- QAIRT\_COMMON\_ERROR\_INVALID\_ARGUMENT: *numInputs* is NULL

Note

Use corresponding API through [QairtSystem\_Context\_GraphInfoV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Context__GraphInfoV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Context\_GraphInfo\_getInputAt([QairtSystem\_Context\_GraphInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv437QairtSystem_Context_GraphInfoHandle_t) graphInfo, uint32\_t index, [QairtSystem\_Context\_TensorInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv438QairtSystem_Context_TensorInfoHandle_t) \*inputs)

    - Get the input tensor info at an index for a graph.

- Parameters

    - - **graphInfo** – **[in]** A handle to the graph information.
- **index** – **[in]** Index of the input tensor to retrieve.
- **inputs** – **[out]** A handle to the retrieved input tensor information.

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_HANDLE: *graphInfo* is not a valid handle
- QAIRT\_COMMON\_ERROR\_INVALID\_ARGUMENT: *inputs* is NULL or *index* is greater than or equal to the number of inputs

Note

Use corresponding API through [QairtSystem\_Context\_GraphInfoV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Context__GraphInfoV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Context\_GraphInfo\_getNumOutputs([QairtSystem\_Context\_GraphInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv437QairtSystem_Context_GraphInfoHandle_t) graphInfo, uint32\_t \*numOutputs)

    - Get the number of outputs for a graph.

- Parameters

    - - **graphInfo** – **[in]** A handle to the graph information.
- **numOutputs** – **[out]** The retrieved number of graph outputs.

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_HANDLE: *graphInfo* is not a valid handle
- QAIRT\_COMMON\_ERROR\_INVALID\_ARGUMENT: *numOutputs* is NULL

Note

Use corresponding API through [QairtSystem\_Context\_GraphInfoV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Context__GraphInfoV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Context\_GraphInfo\_getOutputAt([QairtSystem\_Context\_GraphInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv437QairtSystem_Context_GraphInfoHandle_t) graphInfo, uint32\_t index, [QairtSystem\_Context\_TensorInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv438QairtSystem_Context_TensorInfoHandle_t) \*output)

    - Get the output tensor info at an index for a graph.

- Parameters

    - - **graphInfo** – **[in]** A handle to the graph information.
- **index** – **[in]** Index of the output tensor to retrieve.
- **output** – **[out]** A handle to the retrieved output tensor information.

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_HANDLE: *graphInfo* is not a valid handle
- QAIRT\_COMMON\_ERROR\_INVALID\_ARGUMENT: *output* is NULL or *index* is greater than or equal to the number of outputs

Note

Use corresponding API through [QairtSystem\_Context\_GraphInfoV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Context__GraphInfoV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Context\_GraphInfo\_getNumUpdateables([QairtSystem\_Context\_GraphInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv437QairtSystem_Context_GraphInfoHandle_t) graphInfo, uint32\_t \*numUpdateables)

    - Get the number of updateable tensors for a graph.

- Parameters

    - - **graphInfo** – **[in]** A handle to the graph information.
- **numUpdateables** – **[out]** The retrieved number of updateable tensors.

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_HANDLE: *graphInfo* is not a valid handle
- QAIRT\_COMMON\_ERROR\_INVALID\_ARGUMENT: *numUpdateables* is NULL

Note

Use corresponding API through [QairtSystem\_Context\_GraphInfoV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Context__GraphInfoV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Context\_GraphInfo\_getUpdateableAt([QairtSystem\_Context\_GraphInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv437QairtSystem_Context_GraphInfoHandle_t) graphInfo, uint32\_t index, [QairtSystem\_Context\_TensorInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv438QairtSystem_Context_TensorInfoHandle_t) \*updateable)

    - Get the updateable tensor info at an index for a graph.

- Parameters

    - - **graphInfo** – **[in]** A handle to the graph information.
- **index** – **[in]** Index of the updateable tensor to retrieve.
- **updateable** – **[out]** A handle to the retrieved updateable tensor information.

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_HANDLE: *graphInfo* is not a valid handle
- QAIRT\_COMMON\_ERROR\_INVALID\_ARGUMENT: *updateable* is NULL or *index* is greater than or equal to the number of updateable tensors

Note

Use corresponding API through [QairtSystem\_Context\_GraphInfoV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Context__GraphInfoV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Context\_GraphInfo\_getGraphInfoBlobSize([QairtSystem\_Context\_GraphInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv437QairtSystem_Context_GraphInfoHandle_t) graphInfo, uint32\_t \*size)

    - Get the graph info blob size for a graph.

- Parameters

    - - **graphInfo** – **[in]** A handle to the graph information.
- **size** – **[out]** The retrieved graph info blob size in bytes.

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_HANDLE: *graphInfo* is not a valid handle
- QAIRT\_COMMON\_ERROR\_INVALID\_ARGUMENT: *size* is NULL

Note

Use corresponding API through [QairtSystem\_Context\_GraphInfoV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Context__GraphInfoV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Context\_GraphInfo\_getGraphInfoBlob([QairtSystem\_Context\_GraphInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv437QairtSystem_Context_GraphInfoHandle_t) graphInfo, void \*\*graphInfoBlob)

    - Get the graph info blob for a graph.

- Parameters

    - - **graphInfo** – **[in]** A handle to the graph information.
- **graphInfoBlob** – **[out]** A pointer to the retrieved graph info blob. The memory is owned by the graph info handle and must not be freed by the caller.

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_HANDLE: *graphInfo* is not a valid handle
- QAIRT\_COMMON\_ERROR\_INVALID\_ARGUMENT: *graphInfoBlob* is NULL

Note

Use corresponding API through [QairtSystem\_Context\_GraphInfoV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Context__GraphInfoV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Context\_GraphInfo\_getStartOpIndex([QairtSystem\_Context\_GraphInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv437QairtSystem_Context_GraphInfoHandle_t) graphInfo, uint32\_t \*start)

    - Get the start operation index for a graph.

- Parameters

    - - **graphInfo** – **[in]** A handle to the graph information.
- **start** – **[out]** The retrieved start operation index.

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_HANDLE: *graphInfo* is not a valid handle
- QAIRT\_COMMON\_ERROR\_INVALID\_ARGUMENT: *start* is NULL

Note

Use corresponding API through [QairtSystem\_Context\_GraphInfoV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Context__GraphInfoV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Context\_GraphInfo\_getEndOpIndex([QairtSystem\_Context\_GraphInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv437QairtSystem_Context_GraphInfoHandle_t) graphInfo, uint32\_t \*end)

    - Get the end operation index for a graph.

- Parameters

    - - **graphInfo** – **[in]** A handle to the graph information.
- **end** – **[out]** The retrieved end operation index.

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_HANDLE: *graphInfo* is not a valid handle
- QAIRT\_COMMON\_ERROR\_INVALID\_ARGUMENT: *end* is NULL

Note

Use corresponding API through [QairtSystem\_Context\_GraphInfoV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Context__GraphInfoV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Context\_GraphInfoSet\_getNumGraphInfos([QairtSystem\_Context\_GraphInfoSetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv440QairtSystem_Context_GraphInfoSetHandle_t) graphInfoSetHandle, uint32\_t \*numGraphInfos)

    - Graph Info Set.

Get the number of graph infos in a set.

- Parameters

    - - **graphInfoSetHandle** – **[in]** A handle to the graph info set.
- **numGraphInfos** – **[out]** The retrieved number of graph infos.

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_HANDLE: *graphInfoSetHandle* is not a valid handle
- QAIRT\_COMMON\_ERROR\_INVALID\_ARGUMENT: *numGraphInfos* is NULL

Note

Use corresponding API through QairtSystem\_Context\_GraphInfoSetHandle\_t.

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Context\_GraphInfoSet\_getGraphInfoAt([QairtSystem\_Context\_GraphInfoSetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv440QairtSystem_Context_GraphInfoSetHandle_t) graphInfoSetHandle, uint32\_t index, [QairtSystem\_Context\_GraphInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv437QairtSystem_Context_GraphInfoHandle_t) \*graphInfoHandle)

    - Get the graph info at an index.

- Parameters

    - - **graphInfoSetHandle** – **[in]** A handle to the graph info set.
- **index** – **[in]** Index of graph info that should be retrieved.
- **graphInfoHandle** – **[out]** The retrieved graph info handle.

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_HANDLE: *graphInfoSetHandle* is not a valid handle
- QAIRT\_COMMON\_ERROR\_INVALID\_ARGUMENT: *graphInfoHandle* is NULL or *index* is greater than number of graph infos in the set.

Note

Use corresponding API through QairtSystem\_Context\_GraphInfoSetHandle\_t.

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Context\_TensorInfo\_getId([QairtSystem\_Context\_TensorInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv438QairtSystem_Context_TensorInfoHandle_t) tensor, uint64\_t \*id)

    - Tensor Info Id, Name, Quant Params, Rank, Dimensions, isDynamicDimensions.

Get the ID of a tensor.

- Parameters

    - - **tensor** – **[in]** A handle to the tensor information.
- **id** – **[out]** The retrieved tensor ID.

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_HANDLE: *tensor* is not a valid handle
- QAIRT\_COMMON\_ERROR\_INVALID\_ARGUMENT: *id* is NULL

Note

Use corresponding API through [QairtSystem\_Context\_TensorInfoV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Context__TensorInfoV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Context\_TensorInfo\_getName([QairtSystem\_Context\_TensorInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv438QairtSystem_Context_TensorInfoHandle_t) tensor, const char \*\*name)

    - Get the name of a tensor.

- Parameters

    - - **tensor** – **[in]** A handle to the tensor information.
- **name** – **[out]** The retrieved tensor name string. The string is owned by the tensor info handle and must not be freed by the caller.

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_HANDLE: *tensor* is not a valid handle
- QAIRT\_COMMON\_ERROR\_INVALID\_ARGUMENT: *name* is NULL

Note

Use corresponding API through [QairtSystem\_Context\_TensorInfoV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Context__TensorInfoV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Context\_TensorInfo\_getRank([QairtSystem\_Context\_TensorInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv438QairtSystem_Context_TensorInfoHandle_t) tensor, uint32\_t \*rank)

    - Get the rank of a tensor.

- Parameters

    - - **tensor** – **[in]** A handle to the tensor information.
- **rank** – **[out]** The retrieved tensor rank (number of dimensions).

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_HANDLE: *tensor* is not a valid handle
- QAIRT\_COMMON\_ERROR\_INVALID\_ARGUMENT: *rank* is NULL

Note

Use corresponding API through [QairtSystem\_Context\_TensorInfoV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Context__TensorInfoV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Context\_TensorInfo\_getDimensions([QairtSystem\_Context\_TensorInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv438QairtSystem_Context_TensorInfoHandle_t) tensor, const uint32\_t \*\*dimensions)

    - Get the dimensions of a tensor.

- Parameters

    - - **tensor** – **[in]** A handle to the tensor information.
- **dimensions** – **[out]** A pointer to the retrieved array of dimension sizes. The array is owned by the tensor info handle and must not be freed by the caller. The number of elements equals the tensor rank.

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_HANDLE: *tensor* is not a valid handle
- QAIRT\_COMMON\_ERROR\_INVALID\_ARGUMENT: *dimensions* is NULL

Note

Use corresponding API through [QairtSystem\_Context\_TensorInfoV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Context__TensorInfoV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Context\_TensorInfo\_getDatatype([QairtSystem\_Context\_TensorInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv438QairtSystem_Context_TensorInfoHandle_t) tensor, [Qairt\_DataType\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv416Qairt_DataType_t) \*datatype)

    - Get the data type of a tensor.

- Parameters

    - - **tensor** – **[in]** A handle to the tensor information.
- **datatype** – **[out]** The retrieved tensor data type.

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_HANDLE: *tensor* is not a valid handle
- QAIRT\_COMMON\_ERROR\_INVALID\_ARGUMENT: *datatype* is NULL

Note

Use corresponding API through [QairtSystem\_Context\_TensorInfoV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Context__TensorInfoV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Context\_TensorInfo\_getQuantInfo([QairtSystem\_Context\_TensorInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv438QairtSystem_Context_TensorInfoHandle_t) tensor, [QairtSystem\_Context\_QuantInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv437QairtSystem_Context_QuantInfoHandle_t) \*quantInfo)

    - Get the quantization information for a tensor.

- Parameters

    - - **tensor** – **[in]** A handle to the tensor information.
- **quantInfo** – **[out]** A handle to the retrieved quantization information.

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_HANDLE: *tensor* is not a valid handle
- QAIRT\_COMMON\_ERROR\_INVALID\_ARGUMENT: *quantInfo* is NULL

Note

Use corresponding API through [QairtSystem\_Context\_TensorInfoV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Context__TensorInfoV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Context\_QuantParamInfo\_getQuantizationType([QairtSystem\_Context\_QuantInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv437QairtSystem_Context_QuantInfoHandle_t) quantInfo, [Qairt\_QuantizationInfoType\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv428Qairt_QuantizationInfoType_t) \*type)

    - Quant Info.

Get the quantization type from quantization parameter information.

- Parameters

    - - **quantInfo** – **[in]** A handle to the quantization parameter information.
- **type** – **[out]** The retrieved quantization type.

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_HANDLE: *quantInfo* is not a valid handle
- QAIRT\_COMMON\_ERROR\_INVALID\_ARGUMENT: *type* is NULL

Note

Use corresponding API through [QairtSystem\_Context\_QuantParamInfoV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Context__QuantParamInfoV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Context\_QuantParamInfo\_getScaleOffset([QairtSystem\_Context\_QuantInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv437QairtSystem_Context_QuantInfoHandle_t) quantInfo, [QairtSystem\_Context\_QuantizeParams\_ScaleOffsetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv454QairtSystem_Context_QuantizeParams_ScaleOffsetHandle_t) \*scaleOffsetHandle)

    - Get the per-tensor scale-offset quantization parameters.

- Parameters

    - - **quantInfo** – **[in]** A handle to the quantization parameter information.
- **scaleOffsetHandle** – **[out]** A handle to the retrieved scale-offset quantization parameters.

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_HANDLE: *quantInfo* is not a valid handle
- QAIRT\_COMMON\_ERROR\_INVALID\_ARGUMENT: *scaleOffsetHandle* is NULL

Note

Use corresponding API through [QairtSystem\_Context\_QuantParamInfoV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Context__QuantParamInfoV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Context\_QuantParamInfo\_getAxisScaleOffset([QairtSystem\_Context\_QuantInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv437QairtSystem_Context_QuantInfoHandle_t) quantInfo, [QairtSystem\_Context\_QuantizeParams\_AxisScaleOffsetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv458QairtSystem_Context_QuantizeParams_AxisScaleOffsetHandle_t) \*axisScaleOffsetHandle)

    - Get the per-axis scale-offset quantization parameters.

- Parameters

    - - **quantInfo** – **[in]** A handle to the quantization parameter information.
- **axisScaleOffsetHandle** – **[out]** A handle to the retrieved axis scale-offset quantization parameters.

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_HANDLE: *quantInfo* is not a valid handle
- QAIRT\_COMMON\_ERROR\_INVALID\_ARGUMENT: *axisScaleOffsetHandle* is NULL

Note

Use corresponding API through [QairtSystem\_Context\_QuantParamInfoV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Context__QuantParamInfoV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Context\_QuantParamInfo\_getBwScaleOffset([QairtSystem\_Context\_QuantInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv437QairtSystem_Context_QuantInfoHandle_t) quantInfo, [QairtSystem\_Context\_QuantizeParams\_BwScaleOffsetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv456QairtSystem_Context_QuantizeParams_BwScaleOffsetHandle_t) \*BwScaleOffsetHandle)

    - Get the per-tensor bit-width scale-offset quantization parameters.

- Parameters

    - - **quantInfo** – **[in]** A handle to the quantization parameter information.
- **BwScaleOffsetHandle** – **[out]** A handle to the retrieved bit-width scale-offset quantization parameters.

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_HANDLE: *quantInfo* is not a valid handle
- QAIRT\_COMMON\_ERROR\_INVALID\_ARGUMENT: *BwScaleOffsetHandle* is NULL

Note

Use corresponding API through [QairtSystem\_Context\_QuantParamInfoV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Context__QuantParamInfoV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Context\_QuantParamInfo\_getBwAxisScaleOffset([QairtSystem\_Context\_QuantInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv437QairtSystem_Context_QuantInfoHandle_t) quantInfo, [QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv460QairtSystem_Context_QuantizeParams_BwAxisScaleOffsetHandle_t) \*BwAxisScaleOffsetHandle)

    - Get the per-axis bit-width scale-offset quantization parameters.

- Parameters

    - - **quantInfo** – **[in]** A handle to the quantization parameter information.
- **BwAxisScaleOffsetHandle** – **[out]** A handle to the retrieved bit-width axis scale-offset quantization parameters.

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_HANDLE: *quantInfo* is not a valid handle
- QAIRT\_COMMON\_ERROR\_INVALID\_ARGUMENT: *BwAxisScaleOffsetHandle* is NULL

Note

Use corresponding API through [QairtSystem\_Context\_QuantParamInfoV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Context__QuantParamInfoV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Context\_QuantParamInfo\_getBwAxisScaleOffsetMapped([QairtSystem\_Context\_QuantInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv437QairtSystem_Context_QuantInfoHandle_t) quantInfo, [QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetMappedHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv466QairtSystem_Context_QuantizeParams_BwAxisScaleOffsetMappedHandle_t) \*BwAxisScaleOffsetMappedHandle)

    - Get the per-axis bit-width scale-offset mapped quantization parameters.

- Parameters

    - - **quantInfo** – **[in]** A handle to the quantization parameter information.
- **BwAxisScaleOffsetMappedHandle** – **[out]** A handle to the retrieved bit-width axis scale-offset mapped quantization parameters.

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_HANDLE: *quantInfo* is not a valid handle
- QAIRT\_COMMON\_ERROR\_INVALID\_ARGUMENT: *BwAxisScaleOffsetMappedHandle* is NULL

Note

Use corresponding API through [QairtSystem\_Context\_QuantParamInfoV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Context__QuantParamInfoV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Context\_QuantizeParams\_ScaleOffset\_create([QairtSystem\_Context\_QuantizeParams\_ScaleOffsetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv454QairtSystem_Context_QuantizeParams_ScaleOffsetHandle_t) \*scaleOffsetHandle)

    - Create a scale-offset handle for per-tensor quantization.

- Parameters

    - **scaleOffsetHandle** – **[out]** A handle to the created scale-offset.

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_ARGUMENT: *scaleOffsetHandle* is NULL
- QAIRT\_COMMON\_ERROR\_MEM\_ALLOC: Memory allocation error while creating scale-offset

Note

Use corresponding API through [QairtQuantizeParams\_ScaleOffsetV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtQuantizeParams.html#structQairtQuantizeParams__ScaleOffsetV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Context\_QuantizeParams\_ScaleOffset\_free([QairtSystem\_Context\_QuantizeParams\_ScaleOffsetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv454QairtSystem_Context_QuantizeParams_ScaleOffsetHandle_t) scaleOffsetHandle)

    - Free a scale-offset handle.

- Parameters

    - **scaleOffsetHandle** – **[in]** A handle to the scale-offset to be freed.

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_HANDLE: *scaleOffsetHandle* is not a valid handle
- QAIRT\_COMMON\_ERROR\_MEM\_ALLOC: Memory deallocation error

Note

Use corresponding API through [QairtQuantizeParams\_ScaleOffsetV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtQuantizeParams.html#structQairtQuantizeParams__ScaleOffsetV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Context\_QuantizeParams\_ScaleOffset\_getScale([QairtSystem\_Context\_QuantizeParams\_ScaleOffsetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv454QairtSystem_Context_QuantizeParams_ScaleOffsetHandle_t) scaleOffsetHandle, float \*scale)

    - Get the scale value from a scale-offset.

- Parameters

    - - **scaleOffsetHandle** – **[in]** A handle to the scale-offset.
- **scale** – **[out]** The retrieved scale value.

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_HANDLE: *scaleOffsetHandle* is not a valid handle
- QAIRT\_COMMON\_ERROR\_INVALID\_ARGUMENT: *scale* is NULL

Note

Use corresponding API through [QairtQuantizeParams\_ScaleOffsetV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtQuantizeParams.html#structQairtQuantizeParams__ScaleOffsetV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Context\_QuantizeParams\_ScaleOffset\_getOffset([QairtSystem\_Context\_QuantizeParams\_ScaleOffsetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv454QairtSystem_Context_QuantizeParams_ScaleOffsetHandle_t) scaleOffsetHandle, int32\_t \*offset)

    - Get the offset value from a scale-offset.

- Parameters

    - - **scaleOffsetHandle** – **[in]** A handle to the scale-offset.
- **offset** – **[out]** The retrieved offset value.

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_HANDLE: *scaleOffsetHandle* is not a valid handle
- QAIRT\_COMMON\_ERROR\_INVALID\_ARGUMENT: *offset* is NULL

Note

Use corresponding API through [QairtQuantizeParams\_ScaleOffsetV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtQuantizeParams.html#structQairtQuantizeParams__ScaleOffsetV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Context\_QuantizeParams\_AxisScaleOffset\_create([QairtSystem\_Context\_QuantizeParams\_AxisScaleOffsetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv458QairtSystem_Context_QuantizeParams_AxisScaleOffsetHandle_t) \*axisScaleOffsetHandle)

    - Create an axis scale-offset handle for per-axis quantization.

- Parameters

    - **axisScaleOffsetHandle** – **[out]** A handle to the created axis scale-offset.

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_ARGUMENT: *axisScaleOffsetHandle* is NULL
- QAIRT\_COMMON\_ERROR\_MEM\_ALLOC: Memory allocation error while creating axis scale-offset

Note

Use corresponding API through [QairtQuantizeParams\_AxisScaleOffsetV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtQuantizeParams.html#structQairtQuantizeParams__AxisScaleOffsetV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Context\_QuantizeParams\_AxisScaleOffset\_free([QairtSystem\_Context\_QuantizeParams\_AxisScaleOffsetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv458QairtSystem_Context_QuantizeParams_AxisScaleOffsetHandle_t) axisScaleOffsetHandle)

    - Free an axis scale-offset handle.

- Parameters

    - **axisScaleOffsetHandle** – **[in]** A handle to the axis scale-offset to be freed.

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_HANDLE: *axisScaleOffsetHandle* is not a valid handle
- QAIRT\_COMMON\_ERROR\_MEM\_ALLOC: Memory deallocation error

Note

Use corresponding API through [QairtQuantizeParams\_AxisScaleOffsetV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtQuantizeParams.html#structQairtQuantizeParams__AxisScaleOffsetV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Context\_QuantizeParams\_AxisScaleOffset\_getNumScaleOffsets([QairtSystem\_Context\_QuantizeParams\_AxisScaleOffsetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv458QairtSystem_Context_QuantizeParams_AxisScaleOffsetHandle_t) axisScaleOffsetHandle, uint32\_t \*numScaleOffsets)

    - Get the number of scale-offsets in an axis scale-offset.

- Parameters

    - - **axisScaleOffsetHandle** – **[in]** A handle to the axis scale-offset.
- **numScaleOffsets** – **[out]** The retrieved number of scale-offsets.

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_HANDLE: *axisScaleOffsetHandle* is not a valid handle
- QAIRT\_COMMON\_ERROR\_INVALID\_ARGUMENT: *numScaleOffsets* is NULL

Note

Use corresponding API through [QairtQuantizeParams\_AxisScaleOffsetV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtQuantizeParams.html#structQairtQuantizeParams__AxisScaleOffsetV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Context\_QuantizeParams\_AxisScaleOffset\_getScaleOffsetAt([QairtSystem\_Context\_QuantizeParams\_AxisScaleOffsetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv458QairtSystem_Context_QuantizeParams_AxisScaleOffsetHandle_t) axisScaleOffsetHandle, uint32\_t index, [QairtSystem\_Context\_QuantizeParams\_ScaleOffsetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv454QairtSystem_Context_QuantizeParams_ScaleOffsetHandle_t) \*scaleOffsetHandle)

    - Get the scale-offset at an index from an axis scale-offset.

- Parameters

    - - **axisScaleOffsetHandle** – **[in]** A handle to the axis scale-offset.
- **index** – **[in]** Index of the scale-offset to retrieve.
- **scaleOffsetHandle** – **[out]** A handle to the retrieved scale-offset.

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_HANDLE: *axisScaleOffsetHandle* is not a valid handle
- QAIRT\_COMMON\_ERROR\_INVALID\_ARGUMENT: *scaleOffsetHandle* is NULL or *index* is greater than or equal to the number of scale-offsets

Note

Use corresponding API through [QairtQuantizeParams\_AxisScaleOffsetV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtQuantizeParams.html#structQairtQuantizeParams__AxisScaleOffsetV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Context\_QuantizeParams\_AxisScaleOffset\_getAxis([QairtSystem\_Context\_QuantizeParams\_AxisScaleOffsetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv458QairtSystem_Context_QuantizeParams_AxisScaleOffsetHandle_t) axisScaleOffsetHandle, int32\_t \*axis)

    - Get the axis value from an axis scale-offset.

- Parameters

    - - **axisScaleOffsetHandle** – **[in]** A handle to the axis scale-offset.
- **axis** – **[out]** The retrieved axis value.

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_HANDLE: *axisScaleOffsetHandle* is not a valid handle
- QAIRT\_COMMON\_ERROR\_INVALID\_ARGUMENT: *axis* is NULL

Note

Use corresponding API through [QairtQuantizeParams\_AxisScaleOffsetV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtQuantizeParams.html#structQairtQuantizeParams__AxisScaleOffsetV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Context\_QuantizeParams\_BwScaleOffset\_create([QairtSystem\_Context\_QuantizeParams\_BwScaleOffsetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv456QairtSystem_Context_QuantizeParams_BwScaleOffsetHandle_t) \*bwScaleOffsetHandle)

    - Create a bit-width scale-offset handle for per-tensor quantization.

- Parameters

    - **bwScaleOffsetHandle** – **[out]** A handle to the created bit-width scale-offset.

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_ARGUMENT: *bwScaleOffsetHandle* is NULL
- QAIRT\_COMMON\_ERROR\_MEM\_ALLOC: Memory allocation error while creating bit-width scale-offset

Note

Use corresponding API through [QairtSystem\_Context\_QuantizeParams\_BwScaleOffsetV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Context__QuantizeParams__BwScaleOffsetV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Context\_QuantizeParams\_BwScaleOffset\_free([QairtSystem\_Context\_QuantizeParams\_BwScaleOffsetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv456QairtSystem_Context_QuantizeParams_BwScaleOffsetHandle_t) bwScaleOffsetHandle)

    - Free a bit-width scale-offset handle.

- Parameters

    - **bwScaleOffsetHandle** – **[in]** A handle to the bit-width scale-offset to be freed.

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_HANDLE: *bwScaleOffsetHandle* is not a valid handle
- QAIRT\_COMMON\_ERROR\_MEM\_ALLOC: Memory deallocation error

Note

Use corresponding API through [QairtSystem\_Context\_QuantizeParams\_BwScaleOffsetV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Context__QuantizeParams__BwScaleOffsetV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Context\_QuantizeParams\_BwScaleOffset\_getScale([QairtSystem\_Context\_QuantizeParams\_BwScaleOffsetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv456QairtSystem_Context_QuantizeParams_BwScaleOffsetHandle_t) bwScaleOffsetHandle, float \*scale)

    - Get the scale value from a bit-width scale-offset.

- Parameters

    - - **bwScaleOffsetHandle** – **[in]** A handle to the bit-width scale-offset.
- **scale** – **[out]** The retrieved scale value.

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_HANDLE: *bwScaleOffsetHandle* is not a valid handle
- QAIRT\_COMMON\_ERROR\_INVALID\_ARGUMENT: *scale* is NULL

Note

Use corresponding API through [QairtSystem\_Context\_QuantizeParams\_BwScaleOffsetV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Context__QuantizeParams__BwScaleOffsetV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Context\_QuantizeParams\_BwScaleOffset\_getOffset([QairtSystem\_Context\_QuantizeParams\_BwScaleOffsetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv456QairtSystem_Context_QuantizeParams_BwScaleOffsetHandle_t) bwScaleOffsetHandle, int32\_t \*offset)

    - Get the offset value from a bit-width scale-offset.

- Parameters

    - - **bwScaleOffsetHandle** – **[in]** A handle to the bit-width scale-offset.
- **offset** – **[out]** The retrieved offset value.

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_HANDLE: *bwScaleOffsetHandle* is not a valid handle
- QAIRT\_COMMON\_ERROR\_INVALID\_ARGUMENT: *offset* is NULL

Note

Use corresponding API through [QairtSystem\_Context\_QuantizeParams\_BwScaleOffsetV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Context__QuantizeParams__BwScaleOffsetV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Context\_QuantizeParams\_BwScaleOffset\_getBw([QairtSystem\_Context\_QuantizeParams\_BwScaleOffsetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv456QairtSystem_Context_QuantizeParams_BwScaleOffsetHandle_t) bwScaleOffsetHandle, uint32\_t \*bw)

    - Get the bit-width value from a bit-width scale-offset.

- Parameters

    - - **bwScaleOffsetHandle** – **[in]** A handle to the bit-width scale-offset.
- **bw** – **[out]** The retrieved bit-width value.

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_HANDLE: *bwScaleOffsetHandle* is not a valid handle
- QAIRT\_COMMON\_ERROR\_INVALID\_ARGUMENT: *bw* is NULL

Note

Use corresponding API through [QairtSystem\_Context\_QuantizeParams\_BwScaleOffsetV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Context__QuantizeParams__BwScaleOffsetV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffset\_create([QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv460QairtSystem_Context_QuantizeParams_BwAxisScaleOffsetHandle_t) \*bwAxisScaleOffsetHandle)

    - Create a bit-width axis scale-offset handle for per-axis quantization.

- Parameters

    - **bwAxisScaleOffsetHandle** – **[out]** A handle to the created bit-width axis scale-offset.

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_ARGUMENT: *bwAxisScaleOffsetHandle* is NULL
- QAIRT\_COMMON\_ERROR\_MEM\_ALLOC: Memory allocation error while creating bit-width axis scale-offset

Note

Use corresponding API through [QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Context__QuantizeParams__BwAxisScaleOffsetV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffset\_free([QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv460QairtSystem_Context_QuantizeParams_BwAxisScaleOffsetHandle_t) bwAxisScaleOffsetHandle)

    - Free a bit-width axis scale-offset handle.

- Parameters

    - **bwAxisScaleOffsetHandle** – **[in]** A handle to the bit-width axis scale-offset to be freed.

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_HANDLE: *bwAxisScaleOffsetHandle* is not a valid handle
- QAIRT\_COMMON\_ERROR\_MEM\_ALLOC: Memory deallocation error

Note

Use corresponding API through [QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Context__QuantizeParams__BwAxisScaleOffsetV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffset\_getNumScales([QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv460QairtSystem_Context_QuantizeParams_BwAxisScaleOffsetHandle_t) bwAxisScaleOffsetHandle, uint32\_t \*numScales)

    - Get the number of scales in a bit-width axis scale-offset.

- Parameters

    - - **bwAxisScaleOffsetHandle** – **[in]** A handle to the bit-width axis scale-offset.
- **numScales** – **[out]** The retrieved number of scales.

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_HANDLE: *bwAxisScaleOffsetHandle* is not a valid handle
- QAIRT\_COMMON\_ERROR\_INVALID\_ARGUMENT: *numScales* is NULL

Note

Use corresponding API through [QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Context__QuantizeParams__BwAxisScaleOffsetV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffset\_getScaleAt([QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv460QairtSystem_Context_QuantizeParams_BwAxisScaleOffsetHandle_t) bwAxisScaleOffsetHandle, uint32\_t index, float \*scale)

    - Get the scale at an index from a bit-width axis scale-offset.

- Parameters

    - - **bwAxisScaleOffsetHandle** – **[in]** A handle to the bit-width axis scale-offset.
- **index** – **[in]** Index of the scale to retrieve.
- **scale** – **[out]** The retrieved scale value.

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_HANDLE: *bwAxisScaleOffsetHandle* is not a valid handle
- QAIRT\_COMMON\_ERROR\_INVALID\_ARGUMENT: *scale* is NULL or *index* is greater than or equal to the number of scales

Note

Use corresponding API through [QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Context__QuantizeParams__BwAxisScaleOffsetV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffset\_getNumOffsets([QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv460QairtSystem_Context_QuantizeParams_BwAxisScaleOffsetHandle_t) bwAxisScaleOffsetHandle, uint32\_t \*numOffsets)

    - Get the number of offsets in a bit-width axis scale-offset.

- Parameters

    - - **bwAxisScaleOffsetHandle** – **[in]** A handle to the bit-width axis scale-offset.
- **numOffsets** – **[out]** The retrieved number of offsets.

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_HANDLE: *bwAxisScaleOffsetHandle* is not a valid handle
- QAIRT\_COMMON\_ERROR\_INVALID\_ARGUMENT: *numOffsets* is NULL

Note

Use corresponding API through [QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Context__QuantizeParams__BwAxisScaleOffsetV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffset\_getOffsetAt([QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv460QairtSystem_Context_QuantizeParams_BwAxisScaleOffsetHandle_t) bwAxisScaleOffsetHandle, uint32\_t index, int32\_t \*offset)

    - Get the offset at an index from a bit-width axis scale-offset.

- Parameters

    - - **bwAxisScaleOffsetHandle** – **[in]** A handle to the bit-width axis scale-offset.
- **index** – **[in]** Index of the offset to retrieve.
- **offset** – **[out]** The retrieved offset value.

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_HANDLE: *bwAxisScaleOffsetHandle* is not a valid handle
- QAIRT\_COMMON\_ERROR\_INVALID\_ARGUMENT: *offset* is NULL or *index* is greater than or equal to the number of offsets

Note

Use corresponding API through [QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Context__QuantizeParams__BwAxisScaleOffsetV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffset\_getAxis([QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv460QairtSystem_Context_QuantizeParams_BwAxisScaleOffsetHandle_t) bwAxisScaleOffsetHandle, int32\_t \*axis)

    - Get the axis value from a bit-width axis scale-offset.

- Parameters

    - - **bwAxisScaleOffsetHandle** – **[in]** A handle to the bit-width axis scale-offset.
- **axis** – **[out]** The retrieved axis value.

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_HANDLE: *bwAxisScaleOffsetHandle* is not a valid handle
- QAIRT\_COMMON\_ERROR\_INVALID\_ARGUMENT: *axis* is NULL

Note

Use corresponding API through [QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Context__QuantizeParams__BwAxisScaleOffsetV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffset\_getBw([QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv460QairtSystem_Context_QuantizeParams_BwAxisScaleOffsetHandle_t) bwAxisScaleOffsetHandle, uint32\_t \*bw)

    - Get the bit-width value from a bit-width axis scale-offset.

- Parameters

    - - **bwAxisScaleOffsetHandle** – **[in]** A handle to the bit-width axis scale-offset.
- **bw** – **[out]** The retrieved bit-width value.

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_HANDLE: *bwAxisScaleOffsetHandle* is not a valid handle
- QAIRT\_COMMON\_ERROR\_INVALID\_ARGUMENT: *bw* is NULL

Note

Use corresponding API through [QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Context__QuantizeParams__BwAxisScaleOffsetV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetMapped\_create([QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetMappedHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv466QairtSystem_Context_QuantizeParams_BwAxisScaleOffsetMappedHandle_t) \*bwAxisScaleOffsetMappedHandle)

    - Create a bit-width axis scale-offset mapped handle.

- Parameters

    - **bwAxisScaleOffsetMappedHandle** – **[out]** A handle to the created bit-width axis scale-offset mapped.

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_ARGUMENT: *bwAxisScaleOffsetMappedHandle* is NULL
- QAIRT\_COMMON\_ERROR\_MEM\_ALLOC: Memory allocation error while creating bit-width axis scale-offset mapped

Note

Use corresponding API through [QairtQuantizeParams\_BwAxisScaleOffsetMappedV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtQuantizeParams.html#structQairtQuantizeParams__BwAxisScaleOffsetMappedV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetMapped\_free([QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetMappedHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv466QairtSystem_Context_QuantizeParams_BwAxisScaleOffsetMappedHandle_t) bwAxisScaleOffsetMappedHandle)

    - Free a bit-width axis scale-offset mapped handle.

- Parameters

    - **bwAxisScaleOffsetMappedHandle** – **[in]** A handle to the bit-width axis scale-offset mapped to be freed.

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_HANDLE: *bwAxisScaleOffsetMappedHandle* is not a valid handle
- QAIRT\_COMMON\_ERROR\_MEM\_ALLOC: Memory deallocation error

Note

Use corresponding API through [QairtQuantizeParams\_BwAxisScaleOffsetMappedV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtQuantizeParams.html#structQairtQuantizeParams__BwAxisScaleOffsetMappedV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetMapped\_getNumOffsets([QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetMappedHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv466QairtSystem_Context_QuantizeParams_BwAxisScaleOffsetMappedHandle_t) bwAxisScaleOffsetMappedHandle, uint32\_t \*numOffsets)

    - Get the number of offsets in a bit-width axis scale-offset mapped.

- Parameters

    - - **bwAxisScaleOffsetMappedHandle** – **[in]** A handle to the bit-width axis scale-offset mapped.
- **numOffsets** – **[out]** The retrieved number of offsets.

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_HANDLE: *bwAxisScaleOffsetMappedHandle* is not a valid handle
- QAIRT\_COMMON\_ERROR\_INVALID\_ARGUMENT: *numOffsets* is NULL

Note

Use corresponding API through [QairtQuantizeParams\_BwAxisScaleOffsetMappedV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtQuantizeParams.html#structQairtQuantizeParams__BwAxisScaleOffsetMappedV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetMapped\_getNumScales([QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetMappedHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv466QairtSystem_Context_QuantizeParams_BwAxisScaleOffsetMappedHandle_t) bwAxisScaleOffsetMappedHandle, uint32\_t \*numScales)

    - Get the number of scales in a bit-width axis scale-offset mapped.

- Parameters

    - - **bwAxisScaleOffsetMappedHandle** – **[in]** A handle to the bit-width axis scale-offset mapped.
- **numScales** – **[out]** The retrieved number of scales.

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_HANDLE: *bwAxisScaleOffsetMappedHandle* is not a valid handle
- QAIRT\_COMMON\_ERROR\_INVALID\_ARGUMENT: *numScales* is NULL

Note

Use corresponding API through [QairtQuantizeParams\_BwAxisScaleOffsetMappedV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtQuantizeParams.html#structQairtQuantizeParams__BwAxisScaleOffsetMappedV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetMapped\_getScaleAt([QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetMappedHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv466QairtSystem_Context_QuantizeParams_BwAxisScaleOffsetMappedHandle_t) bwAxisScaleOffsetMappedHandle, uint32\_t index, float \*scale)

    - Get the scale at an index from a bit-width axis scale-offset mapped.

- Parameters

    - - **bwAxisScaleOffsetMappedHandle** – **[in]** A handle to the bit-width axis scale-offset mapped.
- **index** – **[in]** The index of the scale to retrieve.
- **scale** – **[out]** The retrieved scale value.

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_HANDLE: *bwAxisScaleOffsetMappedHandle* is not a valid handle
- QAIRT\_COMMON\_ERROR\_INVALID\_ARGUMENT: *scale* is NULL or *index* &gt;= total number of scales.

Note

Use corresponding API through [QairtQuantizeParams\_BwAxisScaleOffsetMappedV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtQuantizeParams.html#structQairtQuantizeParams__BwAxisScaleOffsetMappedV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetMapped\_getOffsetAt([QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetMappedHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv466QairtSystem_Context_QuantizeParams_BwAxisScaleOffsetMappedHandle_t) bwAxisScaleOffsetMappedHandle, uint32\_t index, int32\_t \*offset)

    - Get the offset array from a bit-width axis scale-offset mapped.

- Parameters

    - - **bwAxisScaleOffsetMappedHandle** – **[in]** A handle to the bit-width axis scale-offset mapped.
- **index** – **[in]** Index of the offset to retrieve.
- **offset** – **[out]** The retrieved offset value.

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_HANDLE: *bwAxisScaleOffsetMappedHandle* is not a valid handle
- QAIRT\_COMMON\_ERROR\_INVALID\_ARGUMENT: *offset* is NULL or *index* &gt;= the total number of offsets

Note

Use corresponding API through [QairtQuantizeParams\_BwAxisScaleOffsetMappedV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtQuantizeParams.html#structQairtQuantizeParams__BwAxisScaleOffsetMappedV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetMapped\_getAxis([QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetMappedHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv466QairtSystem_Context_QuantizeParams_BwAxisScaleOffsetMappedHandle_t) bwAxisScaleOffsetMappedHandle, int32\_t \*axis)

    - Get the axis from a bit-width axis scale-offset mapped.

- Parameters

    - - **bwAxisScaleOffsetMappedHandle** – **[in]** A handle to the bit-width axis scale-offset mapped.
- **axis** – **[out]** The retrieved axis value.

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_HANDLE: *bwAxisScaleOffsetMappedHandle* is not a valid handle
- QAIRT\_COMMON\_ERROR\_INVALID\_ARGUMENT: *axis* is NULL

Note

Use corresponding API through [QairtQuantizeParams\_BwAxisScaleOffsetMappedV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtQuantizeParams.html#structQairtQuantizeParams__BwAxisScaleOffsetMappedV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetMapped\_getBw([QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetMappedHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv466QairtSystem_Context_QuantizeParams_BwAxisScaleOffsetMappedHandle_t) bwAxisScaleOffsetMappedHandle, uint32\_t \*bw)

    - Get the bit-width from a bit-width axis scale-offset mapped.

- Parameters

    - - **bwAxisScaleOffsetMappedHandle** – **[in]** A handle to the bit-width axis scale-offset mapped.
- **bw** – **[out]** The retrieved bit-width value.

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_HANDLE: *bwAxisScaleOffsetMappedHandle* is not a valid handle
- QAIRT\_COMMON\_ERROR\_INVALID\_ARGUMENT: *bw* is NULL

Note

Use corresponding API through [QairtQuantizeParams\_BwAxisScaleOffsetMappedV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtQuantizeParams.html#structQairtQuantizeParams__BwAxisScaleOffsetMappedV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetMapped\_getMapping([QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetMappedHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv466QairtSystem_Context_QuantizeParams_BwAxisScaleOffsetMappedHandle_t) bwAxisScaleOffsetMappedHandle, [Qairt\_QuantizationInfoEncodingMapping\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv439Qairt_QuantizationInfoEncodingMapping_t) \*mapping)

    - Get the mapping from a bit-width axis scale-offset mapped.

- Parameters

    - - **bwAxisScaleOffsetMappedHandle** – **[in]** A handle to the bit-width axis scale-offset mapped.
- **mapping** – **[out]** The retrieved mapping value.

- Returns

    - Error code:

- QAIRT\_SUCCESS: No error encountered
- QAIRT\_COMMON\_ERROR\_INVALID\_HANDLE: *bwAxisScaleOffsetMappedHandle* is not a valid handle
- QAIRT\_COMMON\_ERROR\_INVALID\_ARGUMENT: *mapping* is NULL

Note

Use corresponding API through [QairtQuantizeParams\_BwAxisScaleOffsetMappedV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtQuantizeParams.html#structQairtQuantizeParams__BwAxisScaleOffsetMappedV1__t).

Enums

- enum QairtSystemContext\_Error\_t

    - QAIRT System Context API result / error codes.

*Values:*

- enumerator QAIRT\_SYSTEM\_CONTEXT\_MINERROR = QAIRT\_MIN\_ERROR\_SYSTEM

    - 

- enumerator QAIRT\_SYSTEM\_CONTEXT\_NO\_ERROR = [QAIRT\_SYSTEM\_COMMON\_NO\_ERROR](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv4N25QairtSystemCommon_Error_t28QAIRT_SYSTEM_COMMON_NO_ERRORE)

    - QAIRT System Context success.

- enumerator QAIRT\_SYSTEM\_CONTEXT\_ERROR\_UNSUPPORTED\_FEATURE = [QAIRT\_SYSTEM\_COMMON\_ERROR\_UNSUPPORTED\_FEATURE](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv4N25QairtSystemCommon_Error_t45QAIRT_SYSTEM_COMMON_ERROR_UNSUPPORTED_FEATUREE)

    - There is optional API component that is not supported yet.

- enumerator QAIRT\_SYSTEM\_CONTEXT\_ERROR\_INVALID\_HANDLE = [QAIRT\_SYSTEM\_COMMON\_ERROR\_INVALID\_HANDLE](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv4N25QairtSystemCommon_Error_t40QAIRT_SYSTEM_COMMON_ERROR_INVALID_HANDLEE)

    - QAIRT System Context invalid handle.

- enumerator QAIRT\_SYSTEM\_CONTEXT\_ERROR\_INVALID\_ARGUMENT = [QAIRT\_SYSTEM\_COMMON\_ERROR\_INVALID\_ARGUMENT](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv4N25QairtSystemCommon_Error_t42QAIRT_SYSTEM_COMMON_ERROR_INVALID_ARGUMENTE)

    - One or more arguments to a System Context API is/are NULL/invalid.

- enumerator QAIRT\_SYSTEM\_CONTEXT\_ERROR\_OPERATION\_FAILED = 30002

    - Generic Failure in achieving the objective of a System Context API.

- enumerator QAIRT\_SYSTEM\_CONTEXT\_ERROR\_MALFORMED\_BINARY = 30010

    - Malformed context binary.

- enumerator QAIRT\_SYSTEM\_CONTEXT\_MAXERROR = QAIRT\_MAX\_ERROR\_SYSTEM

    -

- enum Qairt\_QuantizationInfoType\_t

    - *Values:*

- enumerator QAIRT\_QUANTIZATION\_INFO\_SCALE\_OFFSET = 0

    - Indicates per-tensor scale-offset encoding type.

- enumerator QAIRT\_QUANTIZATION\_INFO\_AXIS\_SCALE\_OFFSET = 1

    - Indicates per-axis (e.g. per-channel) scale-offset encoding type.

- enumerator QAIRT\_QUANTIZATION\_INFO\_BW\_SCALE\_OFFSET = 2

    - 

- enumerator QAIRT\_QUANTIZATION\_INFO\_BW\_AXIS\_SCALE\_OFFSET = 3

    - 

- enumerator QAIRT\_QUANTIZATION\_INFO\_BW\_AXIS\_SCALE\_OFFSET\_MAPPED = 8

    - 

- enumerator QAIRT\_QUANTIZATION\_INFO\_UNDEFINED = 0x7FFFFFFF

    -

- enum Qairt\_QuantizationInfoEncodingMapping\_t

    - An enum to specify quantized value mapping scheme.

*Values:*

- enumerator QAIRT\_QUANTIZATION\_INFO\_ENCODING\_MAPPING\_STANDARD\_SYMMETRIC = 0

    - Indicates standard symmetric 2’s compliment mapping.

- enumerator QAIRT\_QUANTIZATION\_INFO\_ENCODING\_MAPPING\_ASYMMETRIC\_PLUS\_ONE = 1

    - Indicates 2’s compliment mapping with a positive shift of one.

- enumerator QAIRT\_QUANTIZATION\_INFO\_ENCODING\_MAPPING\_LINEAR\_SYMMETRIC\_EXCLUDE\_ZERO = 2

    - Indicates linear mapping symmetric about zero, but excluding zero from the range.

- enumerator QAIRT\_QUANTIZATION\_INFO\_ENCODING\_MAPPING\_UNDEFINED = 0x7FFFFFFF

    -

Typedefs

- typedef struct \_QairtSystem\_Context\_Handle\_t \*QairtSystem\_Context\_Handle\_t

    - 

- typedef struct \_QairtSystem\_Context\_BinaryInfoHandle\_t \*QairtSystem\_Context\_BinaryInfoHandle\_t

    - 

- typedef struct \_QairtSystem\_Context\_GraphInfoHandle\_t \*QairtSystem\_Context\_GraphInfoHandle\_t

    - 

- typedef struct \_QairtSystem\_Context\_TensorInfoHandle\_t \*QairtSystem\_Context\_TensorInfoHandle\_t

    - 

- typedef struct \_QairtSystem\_Context\_QuantInfoHandle\_t \*QairtSystem\_Context\_QuantInfoHandle\_t

    - 

- typedef struct \_QairtSystem\_Context\_QuantizeParams\_ScaleOffsetHandle\_t \*QairtSystem\_Context\_QuantizeParams\_ScaleOffsetHandle\_t

    - 

- typedef struct \_QairtSystem\_Context\_QuantizeParams\_AxisScaleOffsetHandle\_t \*QairtSystem\_Context\_QuantizeParams\_AxisScaleOffsetHandle\_t

    - 

- typedef struct \_QairtSystem\_Context\_QuantizeParams\_BwScaleOffsetHandle\_t \*QairtSystem\_Context\_QuantizeParams\_BwScaleOffsetHandle\_t

    - 

- typedef struct \_QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetHandle\_t \*QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetHandle\_t

    - 

- typedef struct \_QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetMappedHandle\_t \*QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetMappedHandle\_t

    - 

- typedef struct \_QairtSystem\_Context\_GraphInfoSetHandle\_t \*QairtSystem\_Context\_GraphInfoSetHandle\_t

    - A handle to a set of graph information.

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Context\_CreateFn\_t)([QairtSystem\_Context\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv428QairtSystem_Context_Handle_t)\*)

    - QuantInfo PCQ, PTQ.

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Context\_GetBinaryInfoFn\_t)([QairtSystem\_Context\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv428QairtSystem_Context_Handle_t), const void\*, uint64\_t, [QairtSystem\_Context\_BinaryInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv438QairtSystem_Context_BinaryInfoHandle_t)\*)

    - Binary Info.

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystemContext\_FreeFn\_t)([QairtSystem\_Context\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv428QairtSystem_Context_Handle_t))

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Context\_BinaryInfo\_GetBackendIdFn\_t)([QairtSystem\_Context\_BinaryInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv438QairtSystem_Context_BinaryInfoHandle_t), uint32\_t\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Context\_BinaryInfo\_GetBuildIdFn\_t)([QairtSystem\_Context\_BinaryInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv438QairtSystem_Context_BinaryInfoHandle_t), const char\*\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Context\_BinaryInfo\_GetApiVersionFn\_t)([QairtSystem\_Context\_BinaryInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv438QairtSystem_Context_BinaryInfoHandle_t), uint32\_t\*, uint32\_t\*, uint32\_t\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Context\_BinaryInfo\_GetBackendApiVersionFn\_t)([QairtSystem\_Context\_BinaryInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv438QairtSystem_Context_BinaryInfoHandle_t), uint32\_t\*, uint32\_t\*, uint32\_t\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Context\_BinaryInfo\_GetNumSocVersionsFn\_t)([QairtSystem\_Context\_BinaryInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv438QairtSystem_Context_BinaryInfoHandle_t), uint32\_t\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Context\_BinaryInfo\_GetSocVersionAtFn\_t)([QairtSystem\_Context\_BinaryInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv438QairtSystem_Context_BinaryInfoHandle_t), uint32\_t, const char\*\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Context\_BinaryInfo\_GetNumGraphInfosFn\_t)([QairtSystem\_Context\_BinaryInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv438QairtSystem_Context_BinaryInfoHandle_t), uint32\_t\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Context\_BinaryInfo\_GetGraphInfoAtFn\_t)([QairtSystem\_Context\_BinaryInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv438QairtSystem_Context_BinaryInfoHandle_t), uint32\_t, [QairtSystem\_Context\_GraphInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv437QairtSystem_Context_GraphInfoHandle_t)\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Context\_GraphInfo\_GetNameFn\_t)([QairtSystem\_Context\_GraphInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv437QairtSystem_Context_GraphInfoHandle_t), const char\*\*)

    - Graph Info.

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Context\_GraphInfo\_GetNumInputsFn\_t)([QairtSystem\_Context\_GraphInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv437QairtSystem_Context_GraphInfoHandle_t), uint32\_t\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Context\_GraphInfo\_GetInputAtFn\_t)([QairtSystem\_Context\_GraphInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv437QairtSystem_Context_GraphInfoHandle_t), uint32\_t, [QairtSystem\_Context\_TensorInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv438QairtSystem_Context_TensorInfoHandle_t)\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Context\_GraphInfo\_GetNumOutputsFn\_t)([QairtSystem\_Context\_GraphInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv437QairtSystem_Context_GraphInfoHandle_t), uint32\_t\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Context\_GraphInfo\_GetOutputAtFn\_t)([QairtSystem\_Context\_GraphInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv437QairtSystem_Context_GraphInfoHandle_t), uint32\_t, [QairtSystem\_Context\_TensorInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv438QairtSystem_Context_TensorInfoHandle_t)\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Context\_GraphInfo\_GetNumUpdateablesFn\_t)([QairtSystem\_Context\_GraphInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv437QairtSystem_Context_GraphInfoHandle_t), uint32\_t\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Context\_GraphInfo\_GetUpdateableAtFn\_t)([QairtSystem\_Context\_GraphInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv437QairtSystem_Context_GraphInfoHandle_t), uint32\_t, [QairtSystem\_Context\_TensorInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv438QairtSystem_Context_TensorInfoHandle_t)\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Context\_GraphInfo\_GetGraphInfoBlobSizeFn\_t)([QairtSystem\_Context\_GraphInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv437QairtSystem_Context_GraphInfoHandle_t), uint32\_t\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Context\_GraphInfo\_GetGraphInfoBlobFn\_t)([QairtSystem\_Context\_GraphInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv437QairtSystem_Context_GraphInfoHandle_t), void\*\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Context\_GraphInfo\_GetStartOpIndexFn\_t)([QairtSystem\_Context\_GraphInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv437QairtSystem_Context_GraphInfoHandle_t), uint32\_t\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Context\_GraphInfo\_GetEndOpIndexFn\_t)([QairtSystem\_Context\_GraphInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv437QairtSystem_Context_GraphInfoHandle_t), uint32\_t\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Context\_GraphInfoSet\_GetNumGraphInfosFn\_t)([QairtSystem\_Context\_GraphInfoSetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv440QairtSystem_Context_GraphInfoSetHandle_t), uint32\_t\*)

    - Graph Info Set.

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Context\_GraphInfoSet\_GetGraphInfoAtFn\_t)([QairtSystem\_Context\_GraphInfoSetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv440QairtSystem_Context_GraphInfoSetHandle_t), uint32\_t, [QairtSystem\_Context\_GraphInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv437QairtSystem_Context_GraphInfoHandle_t)\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Context\_TensorInfo\_GetIdFn\_t)([QairtSystem\_Context\_TensorInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv438QairtSystem_Context_TensorInfoHandle_t) tensor, uint64\_t \*id)

    - Tensor Info.

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Context\_TensorInfo\_GetNameFn\_t)([QairtSystem\_Context\_TensorInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv438QairtSystem_Context_TensorInfoHandle_t) tensor, const char \*\*name)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Context\_TensorInfo\_GetRankFn\_t)([QairtSystem\_Context\_TensorInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv438QairtSystem_Context_TensorInfoHandle_t) tensor, uint32\_t \*rank)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Context\_TensorInfo\_GetDimensionsFn\_t)([QairtSystem\_Context\_TensorInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv438QairtSystem_Context_TensorInfoHandle_t) tensor, const uint32\_t \*\*dimensions)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Context\_TensorInfo\_GetDatatypeFn\_t)([QairtSystem\_Context\_TensorInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv438QairtSystem_Context_TensorInfoHandle_t) tensor, [Qairt\_DataType\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv416Qairt_DataType_t) \*datatype)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Context\_TensorInfo\_GetQuantInfoFn\_t)([QairtSystem\_Context\_TensorInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv438QairtSystem_Context_TensorInfoHandle_t) tensor, [QairtSystem\_Context\_QuantInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv437QairtSystem_Context_QuantInfoHandle_t) \*quantInfo)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Context\_QuantParamInfo\_GetQuantizationTypeFn\_t)([QairtSystem\_Context\_QuantInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv437QairtSystem_Context_QuantInfoHandle_t) quantInfo, [Qairt\_QuantizationInfoType\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv428Qairt_QuantizationInfoType_t) \*type)

    - Quant Info.

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Context\_QuantParamInfo\_GetScaleOffsetFn\_t)([QairtSystem\_Context\_QuantInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv437QairtSystem_Context_QuantInfoHandle_t) quantInfoHandle, [QairtSystem\_Context\_QuantizeParams\_ScaleOffsetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv454QairtSystem_Context_QuantizeParams_ScaleOffsetHandle_t) \*scaleOffsetHandle)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Context\_QuantParamInfo\_GetAxisScaleOffsetFn\_t)([QairtSystem\_Context\_QuantInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv437QairtSystem_Context_QuantInfoHandle_t) quantInfoHandle, [QairtSystem\_Context\_QuantizeParams\_AxisScaleOffsetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv458QairtSystem_Context_QuantizeParams_AxisScaleOffsetHandle_t) \*axisScaleOffsetHandle)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Context\_QuantParamInfo\_GetBwScaleOffsetFn\_t)([QairtSystem\_Context\_QuantInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv437QairtSystem_Context_QuantInfoHandle_t) quantInfoHandle, [QairtSystem\_Context\_QuantizeParams\_BwScaleOffsetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv456QairtSystem_Context_QuantizeParams_BwScaleOffsetHandle_t) \*bwScaleOffsetHandle)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Context\_QuantParamInfo\_GetBwAxisScaleOffsetFn\_t)([QairtSystem\_Context\_QuantInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv437QairtSystem_Context_QuantInfoHandle_t) quantInfoHandle, [QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv460QairtSystem_Context_QuantizeParams_BwAxisScaleOffsetHandle_t) \*bwAxisScaleOffsetHandle)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Context\_QuantizeParams\_ScaleOffset\_CreateFn\_t)([QairtSystem\_Context\_QuantizeParams\_ScaleOffsetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv454QairtSystem_Context_QuantizeParams_ScaleOffsetHandle_t) \*scaleOffsetHandle)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Context\_QuantizeParams\_ScaleOffset\_FreeFn\_t)([QairtSystem\_Context\_QuantizeParams\_ScaleOffsetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv454QairtSystem_Context_QuantizeParams_ScaleOffsetHandle_t) scaleOffsetHandle)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Context\_QuantizeParams\_ScaleOffset\_GetScaleFn\_t)([QairtSystem\_Context\_QuantizeParams\_ScaleOffsetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv454QairtSystem_Context_QuantizeParams_ScaleOffsetHandle_t) scaleOffsetHandle, float \*scale)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Context\_QuantizeParams\_ScaleOffset\_GetOffsetFn\_t)([QairtSystem\_Context\_QuantizeParams\_ScaleOffsetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv454QairtSystem_Context_QuantizeParams_ScaleOffsetHandle_t) scaleOffsetHandle, int32\_t \*offset)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Context\_QuantizeParams\_AxisScaleOffset\_CreateFn\_t)([QairtSystem\_Context\_QuantizeParams\_AxisScaleOffsetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv458QairtSystem_Context_QuantizeParams_AxisScaleOffsetHandle_t) \*axisScaleOffsetHandle)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Context\_QuantizeParams\_AxisScaleOffset\_FreeFn\_t)([QairtSystem\_Context\_QuantizeParams\_AxisScaleOffsetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv458QairtSystem_Context_QuantizeParams_AxisScaleOffsetHandle_t) axisScaleOffsetHandle)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Context\_QuantizeParams\_AxisScaleOffset\_GetNumScaleOffsetsFn\_t)([QairtSystem\_Context\_QuantizeParams\_AxisScaleOffsetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv458QairtSystem_Context_QuantizeParams_AxisScaleOffsetHandle_t) axisScaleOffsetHandle, uint32\_t \*numScaleOffsets)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Context\_QuantizeParams\_AxisScaleOffset\_GetScaleOffsetAtFn\_t)([QairtSystem\_Context\_QuantizeParams\_AxisScaleOffsetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv458QairtSystem_Context_QuantizeParams_AxisScaleOffsetHandle_t) axisScaleOffsetHandle, uint32\_t index, [QairtSystem\_Context\_QuantizeParams\_ScaleOffsetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv454QairtSystem_Context_QuantizeParams_ScaleOffsetHandle_t) \*scaleOffsetHandle)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Context\_QuantizeParams\_AxisScaleOffset\_GetAxisFn\_t)([QairtSystem\_Context\_QuantizeParams\_AxisScaleOffsetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv458QairtSystem_Context_QuantizeParams_AxisScaleOffsetHandle_t) axisScaleOffsetHandle, int32\_t \*axis)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Context\_QuantizeParams\_BwScaleOffset\_CreateFn\_t)([QairtSystem\_Context\_QuantizeParams\_BwScaleOffsetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv456QairtSystem_Context_QuantizeParams_BwScaleOffsetHandle_t) \*bwScaleOffsetHandle)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Context\_QuantizeParams\_BwScaleOffset\_FreeFn\_t)([QairtSystem\_Context\_QuantizeParams\_BwScaleOffsetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv456QairtSystem_Context_QuantizeParams_BwScaleOffsetHandle_t) bwScaleOffsetHandle)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Context\_QuantizeParams\_BwScaleOffset\_GetScaleFn\_t)([QairtSystem\_Context\_QuantizeParams\_BwScaleOffsetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv456QairtSystem_Context_QuantizeParams_BwScaleOffsetHandle_t) bwScaleOffsetHandle, float \*scale)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Context\_QuantizeParams\_BwScaleOffset\_GetOffsetFn\_t)([QairtSystem\_Context\_QuantizeParams\_BwScaleOffsetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv456QairtSystem_Context_QuantizeParams_BwScaleOffsetHandle_t) bwScaleOffsetHandle, int32\_t \*offset)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Context\_QuantizeParams\_BwScaleOffset\_GetBwFn\_t)([QairtSystem\_Context\_QuantizeParams\_BwScaleOffsetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv456QairtSystem_Context_QuantizeParams_BwScaleOffsetHandle_t) bwScaleOffsetHandle, uint32\_t \*bw)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffset\_CreateFn\_t)([QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv460QairtSystem_Context_QuantizeParams_BwAxisScaleOffsetHandle_t) \*bwAxisScaleOffsetHandle)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffset\_FreeFn\_t)([QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv460QairtSystem_Context_QuantizeParams_BwAxisScaleOffsetHandle_t) bwAxisScaleOffsetHandle)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffset\_GetNumScalesFn\_t)([QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv460QairtSystem_Context_QuantizeParams_BwAxisScaleOffsetHandle_t) bwAxisScaleOffsetHandle, uint32\_t \*numScales)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffset\_GetScaleAtFn\_t)([QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv460QairtSystem_Context_QuantizeParams_BwAxisScaleOffsetHandle_t) bwAxisScaleOffsetHandle, uint32\_t index, float \*scale)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffset\_GetNumOffsetsFn\_t)([QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv460QairtSystem_Context_QuantizeParams_BwAxisScaleOffsetHandle_t) bwAxisScaleOffsetHandle, uint32\_t \*numOffsets)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffset\_GetOffsetAtFn\_t)([QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv460QairtSystem_Context_QuantizeParams_BwAxisScaleOffsetHandle_t) bwAxisScaleOffsetHandle, uint32\_t index, int32\_t \*offset)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffset\_GetAxisFn\_t)([QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv460QairtSystem_Context_QuantizeParams_BwAxisScaleOffsetHandle_t) bwAxisScaleOffsetHandle, int32\_t \*axis)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffset\_GetBwFn\_t)([QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv460QairtSystem_Context_QuantizeParams_BwAxisScaleOffsetHandle_t) bwAxisScaleOffsetHandle, uint32\_t \*bw)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetMapped\_CreateFn\_t)([QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetMappedHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv466QairtSystem_Context_QuantizeParams_BwAxisScaleOffsetMappedHandle_t) \*bwAxisScaleOffsetMappedHandle)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetMapped\_FreeFn\_t)([QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetMappedHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv466QairtSystem_Context_QuantizeParams_BwAxisScaleOffsetMappedHandle_t) bwAxisScaleOffsetMappedHandle)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetMapped\_GetNumScalesFn\_t)([QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetMappedHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv466QairtSystem_Context_QuantizeParams_BwAxisScaleOffsetMappedHandle_t) bwAxisScaleOffsetMappedHandle, uint32\_t \*numScales)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetMapped\_GetScaleAtFn\_t)([QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetMappedHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv466QairtSystem_Context_QuantizeParams_BwAxisScaleOffsetMappedHandle_t) bwAxisScaleOffsetMappedHandle, uint32\_t index, float \*scale)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetMapped\_GetNumOffsetsFn\_t)([QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetMappedHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv466QairtSystem_Context_QuantizeParams_BwAxisScaleOffsetMappedHandle_t) bwAxisScaleOffsetMappedHandle, uint32\_t \*numOffsets)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetMapped\_GetOffsetAtFn\_t)([QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetMappedHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv466QairtSystem_Context_QuantizeParams_BwAxisScaleOffsetMappedHandle_t) bwAxisScaleOffsetMappedHandle, uint32\_t index, int32\_t \*offset)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetMapped\_GetAxisFn\_t)([QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetMappedHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv466QairtSystem_Context_QuantizeParams_BwAxisScaleOffsetMappedHandle_t) bwAxisScaleOffsetMappedHandle, int32\_t \*axis)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetMapped\_GetBwFn\_t)([QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetMappedHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv466QairtSystem_Context_QuantizeParams_BwAxisScaleOffsetMappedHandle_t) bwAxisScaleOffsetMappedHandle, uint32\_t \*bw)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetMapped\_GetMappingFn\_t)([QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetMappedHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv466QairtSystem_Context_QuantizeParams_BwAxisScaleOffsetMappedHandle_t) bwAxisScaleOffsetMappedHandle, [Qairt\_QuantizationInfoEncodingMapping\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv439Qairt_QuantizationInfoEncodingMapping_t) \*mapping)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Context\_QuantParamInfo\_GetBwAxisScaleOffsetMappedFn\_t)([QairtSystem\_Context\_QuantInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv437QairtSystem_Context_QuantInfoHandle_t) quantInfoHandle, [QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetMappedHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv466QairtSystem_Context_QuantizeParams_BwAxisScaleOffsetMappedHandle_t) \*bwAxisScaleOffsetMappedHandle)

    -

Defines

- QAIRT\_SYSTEM\_CONTEXT\_V1\_ID QAIRT\_MIN\_ID\_SYSTEM

    - 

- QAIRT\_SYSTEM\_CONTEXT\_BINARY\_INFO\_V1\_ID QAIRT\_MIN\_ID\_SYSTEM + 1

    - 

- QAIRT\_SYSTEM\_CONTEXT\_GRAPH\_INFO\_V1\_ID QAIRT\_MIN\_ID\_SYSTEM + 2

    - 

- QAIRT\_SYSTEM\_CONTEXT\_TENSOR\_INFO\_V1\_ID QAIRT\_MIN\_ID\_SYSTEM + 3

    - 

- QAIRT\_SYSTEM\_CONTEXT\_QUANT\_INFO\_V1\_ID QAIRT\_MIN\_ID\_SYSTEM + 4

    - 

- QAIRT\_SYSTEM\_CONTEXT\_GRAPH\_INFO\_SET\_V1\_ID QAIRT\_MIN\_ID\_SYSTEM + 5

    - 

- QAIRT\_SYSTEM\_CONTEXT\_QUANTIZE\_PARAMS\_SCALE\_OFFSET\_V1\_ID QAIRT\_MIN\_ID\_SYSTEM + 6

    - 

- QAIRT\_SYSTEM\_CONTEXT\_QUANTIZE\_PARAMS\_AXIS\_SCALE\_OFFSET\_V1\_ID QAIRT\_MIN\_ID\_SYSTEM + 7

    - 

- QAIRT\_SYSTEM\_CONTEXT\_QUANTIZE\_PARAMS\_BW\_SCALE\_OFFSET\_V1\_ID QAIRT\_MIN\_ID\_SYSTEM + 8

    - 

- QAIRT\_SYSTEM\_CONTEXT\_QUANTIZE\_PARAMS\_BW\_AXIS\_SCALE\_OFFSET\_V1\_ID QAIRT\_MIN\_ID\_SYSTEM + 9

    - 

- QAIRT\_SYSTEM\_CONTEXT\_QUANTIZE\_PARAMS\_BW\_AXIS\_SCALE\_OFFSET\_MAPPED\_V1\_ID   QAIRT\_MIN\_ID\_SYSTEM + 10

    -

* * *

DLC loading API — load and inspect DLC model files.

**Include:** `#include "QairtSystem/QairtSystemDlc.h"`

- struct QairtSystem\_DlcV1\_t

    - Public Members

- uint64\_t size

    - 

- [Qairt\_GetInterfaceFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv422Qairt_GetInterfaceFn_t) getInterface

    - 

- [QairtSystemDlc\_CreateFromFileFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv433QairtSystemDlc_CreateFromFileFn_t) createFromFile

    - 

- [QairtSystemDlc\_CreateFromBinaryFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv435QairtSystemDlc_CreateFromBinaryFn_t) createFromBinary

    - 

- [QairtSystemDlc\_ComposeGraphsFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv432QairtSystemDlc_ComposeGraphsFn_t) composeGraphs

    - 

- [QairtSystemDlc\_GetOpMappingsFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv432QairtSystemDlc_GetOpMappingsFn_t) getOpMappings

    - 

- [QairtSystemDlc\_FreeFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv423QairtSystemDlc_FreeFn_t) free

    -

- struct QairtSystem\_Dlc\_GraphConfigInfoV1\_t

    - Public Members

- uint64\_t size

    - 

- [Qairt\_GetInterfaceFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv422Qairt_GetInterfaceFn_t) getInterface

    - 

- [QairtSystemDlc\_GraphConfigInfo\_CreateFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv441QairtSystemDlc_GraphConfigInfo_CreateFn_t) create

    - 

- [QairtSystemDlc\_GraphConfigInfo\_FreeFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv439QairtSystemDlc_GraphConfigInfo_FreeFn_t) free

    - 

- [QairtSystemDlc\_GraphConfigInfo\_SetGraphNameFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv447QairtSystemDlc_GraphConfigInfo_SetGraphNameFn_t) setGraphName

    - 

- [QairtSystemDlc\_GraphConfigInfo\_GetGraphNameFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv447QairtSystemDlc_GraphConfigInfo_GetGraphNameFn_t) getGraphName

    - 

- [QairtSystemDlc\_GraphConfigInfo\_SetGraphConfigFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv449QairtSystemDlc_GraphConfigInfo_SetGraphConfigFn_t) setGraphConfig

    -

Functions

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystemDlc\_GraphConfigInfo\_create([QairtSystemDlc\_GraphConfigInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv438QairtSystemDlc_GraphConfigInfoHandle_t) \*graphConfigInfoHandle)

    - Create a graph configuration information instance.

- Parameters

    - **graphConfigInfoHandle** – **[out]** Handle to the created graph config info.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Successfully created graph config info instance.
- QAIRT\_SYSTEM\_DLC\_ERROR\_INVALID\_ARGUMENT: *graphConfigInfoHandle* is NULL.
- QAIRT\_SYSTEM\_DLC\_ERROR\_OPERATION\_FAILED: Failed to create graph config info instance.

Note

Use corresponding API through QairtSystemDlc\_GraphConfigInfoV1\_t.

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystemDlc\_GraphConfigInfo\_free([QairtSystemDlc\_GraphConfigInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv438QairtSystemDlc_GraphConfigInfoHandle_t) graphConfigInfoHandle)

    - Free a graph configuration information instance.

- Parameters

    - **graphConfigInfoHandle** – **[in]** Handle to the graph config info.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Successfully freed graph config info instance.
- QAIRT\_SYSTEM\_DLC\_ERROR\_INVALID\_HANDLE: Invalid graph config info handle.

Note

Use corresponding API through QairtSystemDlc\_GraphConfigInfoV1\_t.

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystemDlc\_GraphConfigInfo\_setGraphName([QairtSystemDlc\_GraphConfigInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv438QairtSystemDlc_GraphConfigInfoHandle_t) graphConfigInfoHandle, const char \*graphName)

    - Set the graph name for the configuration.

- Parameters

    - - **graphConfigInfoHandle** – **[in]** Handle to the graph config info.
- **graphName** – **[in]** Name of the graph.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Successfully set graph name.
- QAIRT\_SYSTEM\_DLC\_ERROR\_INVALID\_ARGUMENT: *graphName* is NULL.
- QAIRT\_SYSTEM\_DLC\_ERROR\_INVALID\_HANDLE: Invalid graph config info handle.
- QAIRT\_SYSTEM\_DLC\_ERROR\_OPERATION\_FAILED: Failed to set graph name.

Note

Use corresponding API through QairtSystemDlc\_GraphConfigInfoV1\_t.

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystemDlc\_GraphConfigInfo\_getGraphName([QairtSystemDlc\_GraphConfigInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv438QairtSystemDlc_GraphConfigInfoHandle_t) graphConfigInfoHandle, const char \*\*graphName)

    - Get the graph name from the configuration.

- Parameters

    - - **graphConfigInfoHandle** – **[in]** Handle to the graph config info.
- **graphName** – **[out]** Name of the graph.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Successfully retrieved graph name.
- QAIRT\_SYSTEM\_DLC\_ERROR\_INVALID\_ARGUMENT: *graphName* is NULL.
- QAIRT\_SYSTEM\_DLC\_ERROR\_INVALID\_HANDLE: Invalid graph config info handle.
- QAIRT\_SYSTEM\_DLC\_ERROR\_OPERATION\_FAILED: Failed to retrieve graph name.

Note

Use corresponding API through QairtSystemDlc\_GraphConfigInfoV1\_t.

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystemDlc\_GraphConfigInfo\_setGraphConfig([QairtSystemDlc\_GraphConfigInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv438QairtSystemDlc_GraphConfigInfoHandle_t) graphConfigInfoHandle, [QairtGraph\_ConfigHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtGraph.html#_CPPv425QairtGraph_ConfigHandle_t) graphConfig)

    - Set the graph configuration.

- Parameters

    - - **graphConfigInfoHandle** – **[in]** Handle to the graph config info.
- **graphConfig** – **[in]** A graph configuration handle representing the configuration for this graph.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Successfully set graph configuration.
- QAIRT\_SYSTEM\_DLC\_ERROR\_INVALID\_HANDLE: Invalid graph config info handle.
- QAIRT\_SYSTEM\_DLC\_ERROR\_INVALID\_ARGUMENT: *graphConfig* is NULL/invalid.

Note

Use corresponding API through QairtSystemDlc\_GraphConfigInfoV1\_t.

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystemDlc\_createFromFile([QairtSystemLog\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv423QairtSystemLog_Handle_t) systemLogHandle, const char \*dlcPath, [QairtSystemDlc\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv423QairtSystemDlc_Handle_t) \*dlcHandle)

    - Create a System DLC instance from a file.

- Parameters

    - - **systemLogHandle** – **[in]** Handle to system log for logging.
- **dlcPath** – **[in]** Path to the DLC file.
- **dlcHandle** – **[out]** A handle to the created System DLC instance.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Successfully created a System DLC instance.
- QAIRT\_SYSTEM\_DLC\_ERROR\_INVALID\_ARGUMENT: *systemLogHandle*, *dlcPath*, or *dlcHandle* is NULL.
- QAIRT\_SYSTEM\_DLC\_ERROR\_MEM\_ALLOC: Error encountered in allocating memory for System DLC instance.
- QAIRT\_SYSTEM\_DLC\_ERROR\_UNSUPPORTED\_FEATURE: System DLC features not supported.
- QAIRT\_SYSTEM\_DLC\_ERROR\_MALFORMED\_BINARY: DLC file is malformed or corrupted.
- QAIRT\_SYSTEM\_DLC\_ERROR\_OPERATION\_FAILED: Failed to create System DLC instance.

Note

Use corresponding API through QairtSystemDlc\_V1\_t.

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystemDlc\_createFromBinary([QairtSystemLog\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv423QairtSystemLog_Handle_t) systemLogHandle, const uint8\_t \*buffer, const uint64\_t bufferSize, [QairtSystemDlc\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv423QairtSystemDlc_Handle_t) \*dlcHandle)

    - Create a System DLC instance from a binary buffer.

- Parameters

    - - **systemLogHandle** – **[in]** Handle to system log for logging.
- **buffer** – **[in]** Pointer to buffer representing the DLC.
- **bufferSize** – **[in]** Size of the binary buffer in bytes.
- **dlcHandle** – **[out]** A handle to the created System DLC instance.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Successfully created a System DLC instance.
- QAIRT\_SYSTEM\_DLC\_ERROR\_INVALID\_ARGUMENT: *systemLogHandle*, *buffer*, or *dlcHandle* is NULL, or *bufferSize* is 0.
- QAIRT\_SYSTEM\_DLC\_ERROR\_MEM\_ALLOC: Error encountered in allocating memory for System DLC instance.
- QAIRT\_SYSTEM\_DLC\_ERROR\_UNSUPPORTED\_FEATURE: System DLC features not supported.
- QAIRT\_SYSTEM\_DLC\_ERROR\_MALFORMED\_BINARY: DLC buffer is malformed, corrupted, or an error occurred during creation.

Note

Use corresponding API through QairtSystemDlc\_V1\_t.

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystemDlc\_composeGraphs([QairtSystemDlc\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv423QairtSystemDlc_Handle_t) dlcHandle, const [QairtSystemDlc\_GraphConfigInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv438QairtSystemDlc_GraphConfigInfoHandle_t) \*graphConfigHandles, const uint32\_t numGraphConfigs, [QairtBackend\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtBackend.html#_CPPv421QairtBackend_Handle_t) backendHandle, [QairtContext\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtContext.html#_CPPv421QairtContext_Handle_t) contextHandle, [QairtApi\_Interface\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv420QairtApi_Interface_t) qairtInterface, [QairtSystem\_Context\_GraphInfoSetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv440QairtSystem_Context_GraphInfoSetHandle_t) \*graphInfoSetHandle)

    - Compose graphs from a DLC on a particular backend and context.

Memory allocated in *graphHandles* is owned by clients and may be released with calls to free().

- Parameters

    - - **dlcHandle** – **[in]** The DLC handle to retrieve graphs from.
- **graphConfigHandles** – **[in]** Array of graph configuration information handles for specific graphs. NULL is allowed and indicates default configuration for all graphs.
- **numGraphConfigs** – **[in]** Number of graph configurations in the array. Must be 0 if *graphConfigHandles* is NULL.
- **backendHandle** – **[in]** The backend handle on which to compose the graphs.
- **contextHandle** – **[in]** The context handle on which to compose the graphs.
- **qairtInterface** – **[in]** Pointer to the QAIRT API interface retrieved via QairtInterface\_getInterface for the backend.
- **graphInfoSetHandle** – **[out]** A handle to a set of graph information representing what was created with the backend. Memory is owned by the client.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Successfully composed graphs.
- QAIRT\_SYSTEM\_DLC\_ERROR\_INVALID\_ARGUMENT: *dlcHandle*, *backendHandle*, *contextHandle*, *backendInterface*, or *graphInfoSetHandle* is NULL.
- QAIRT\_SYSTEM\_DLC\_ERROR\_INVALID\_HANDLE: Invalid DLC, backend, or context handle.
- QAIRT\_SYSTEM\_DLC\_ERROR\_MEM\_ALLOC: Error encountered in allocating memory.
- QAIRT\_SYSTEM\_DLC\_ERROR\_UNSUPPORTED\_FEATURE: DLC features not supported.
- QAIRT\_SYSTEM\_DLC\_ERROR\_OPERATION\_FAILED: Failed to compose graphs.
- QAIRT\_COMMON\_ERROR\_SYSTEM\_COMMUNICATION: SSR occurrence (successful recovery).
- QAIRT\_COMMON\_ERROR\_SYSTEM\_COMMUNICATION\_FATAL: SSR occurrence (unsuccessful recovery).

Note

Use corresponding API through QairtSystemDlc\_V1\_t.

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystemDlc\_getOpMappings([QairtSystemDlc\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv423QairtSystemDlc_Handle_t) dlcHandle, const void \*\*opMappings, uint32\_t \*numOpMappings)

    - Retrieve operation mapping information from a DLC.

- Parameters

    - - **dlcHandle** – **[in]** Handle to the DLC.
- **opMappings** – **[out]** A list of operation mappings. The memory allocated here is owned by the System DLC library and is released when the corresponding DLC handle is freed.
- **numOpMappings** – **[out]** The number of operation mappings.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Successfully retrieved operation mappings.
- QAIRT\_SYSTEM\_DLC\_ERROR\_INVALID\_HANDLE: Invalid DLC handle.
- QAIRT\_SYSTEM\_DLC\_ERROR\_INVALID\_ARGUMENT: *opMappings* or *numOpMappings* is NULL.
- QAIRT\_SYSTEM\_DLC\_ERROR\_UNSUPPORTED\_FEATURE: Operation mappings not supported.
- QAIRT\_SYSTEM\_DLC\_ERROR\_OPERATION\_FAILED: Failed to retrieve operation mappings.

Note

Use corresponding API through QairtSystemDlc\_V1\_t.

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystemDlc\_free([QairtSystemDlc\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv423QairtSystemDlc_Handle_t) dlcHandle)

    - Free the System DLC instance.

This API clears any intermediate memory allocated and associated with a valid handle.

- Parameters

    - **dlcHandle** – **[in]** Handle to the System DLC instance.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Successfully freed System DLC instance.
- QAIRT\_SYSTEM\_DLC\_ERROR\_INVALID\_HANDLE: Invalid System DLC handle.
- QAIRT\_SYSTEM\_DLC\_ERROR\_UNSUPPORTED\_FEATURE: Free operation not supported.
- QAIRT\_SYSTEM\_DLC\_ERROR\_OPERATION\_FAILED: Failed to free System DLC instance.

Note

Use corresponding API through QairtSystemDlc\_V1\_t.

Enums

- enum QairtSystemDlc\_Error\_t

    - QAIRT System DLC API result / error codes.

*Values:*

- enumerator QAIRT\_SYSTEM\_DLC\_MIN\_ERROR = QAIRT\_MIN\_ERROR\_SYSTEM\_DLC

    - 

- enumerator QAIRT\_SYSTEM\_DLC\_NO\_ERROR = QAIRT\_SUCCESS

    - System DLC success.

- enumerator QAIRT\_SYSTEM\_DLC\_ERROR\_UNSUPPORTED\_FEATURE = [QAIRT\_COMMON\_ERROR\_NOT\_SUPPORTED](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv4N19QairtCommon_Error_t32QAIRT_COMMON_ERROR_NOT_SUPPORTEDE)

    - There is optional API component that is not supported yet.

- enumerator QAIRT\_SYSTEM\_DLC\_ERROR\_MEM\_ALLOC = [QAIRT\_COMMON\_ERROR\_MEM\_ALLOC](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv4N19QairtCommon_Error_t28QAIRT_COMMON_ERROR_MEM_ALLOCE)

    - General error relating to memory allocation in processing System DLC API.

- enumerator QAIRT\_SYSTEM\_DLC\_ERROR\_GENERAL = [QAIRT\_COMMON\_ERROR\_GENERAL](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv4N19QairtCommon_Error_t26QAIRT_COMMON_ERROR_GENERALE)

    - General type of System DLC error, which has not been identified as any other error type.

- enumerator QAIRT\_SYSTEM\_DLC\_ERROR\_INVALID\_HANDLE = 35000

    - Invalid System DLC handle.

- enumerator QAIRT\_SYSTEM\_DLC\_ERROR\_INVALID\_ARGUMENT = 35001

    - One or more arguments to a System DLC API is/are NULL/invalid.

- enumerator QAIRT\_SYSTEM\_DLC\_ERROR\_OPERATION\_FAILED = 35002

    - Generic failure in achieving the objective of a System DLC API.

- enumerator QAIRT\_SYSTEM\_DLC\_ERROR\_MALFORMED\_BINARY = 35003

    - Malformed DLC binary.

- enumerator QAIRT\_SYSTEM\_DLC\_MAX\_ERROR = QAIRT\_MAX\_ERROR\_SYSTEM\_DLC

    - 

- enumerator QAIRT\_SYSTEM\_DLC\_ERROR\_UNDEFINED = 0x7FFFFFFF

    -

Typedefs

- typedef struct \_QairtSystemDlc\_Handle\_t \*QairtSystemDlc\_Handle\_t

    - A handle to a System DLC instance.

- typedef struct \_QairtSystemDlc\_GraphConfigInfoHandle\_t \*QairtSystemDlc\_GraphConfigInfoHandle\_t

    - A handle to graph configuration information.

- typedef const void \*QairtApi\_Interface\_t

    - Typedef for a pointer to the QAIRT API interface.

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystemDlc\_CreateFromFileFn\_t)([QairtSystemLog\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv423QairtSystemLog_Handle_t), const char\*, [QairtSystemDlc\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv423QairtSystemDlc_Handle_t)\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystemDlc\_CreateFromBinaryFn\_t)([QairtSystemLog\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv423QairtSystemLog_Handle_t), const uint8\_t\*, const uint64\_t, [QairtSystemDlc\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv423QairtSystemDlc_Handle_t)\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystemDlc\_ComposeGraphsFn\_t)([QairtSystemDlc\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv423QairtSystemDlc_Handle_t), const [QairtSystemDlc\_GraphConfigInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv438QairtSystemDlc_GraphConfigInfoHandle_t)\*, const uint32\_t, [QairtBackend\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtBackend.html#_CPPv421QairtBackend_Handle_t), [QairtContext\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtContext.html#_CPPv421QairtContext_Handle_t), [QairtApi\_Interface\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv420QairtApi_Interface_t), [QairtSystem\_Context\_GraphInfoSetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv440QairtSystem_Context_GraphInfoSetHandle_t)\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystemDlc\_GetOpMappingsFn\_t)([QairtSystemDlc\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv423QairtSystemDlc_Handle_t), const void\*\*, uint32\_t\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystemDlc\_FreeFn\_t)([QairtSystemDlc\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv423QairtSystemDlc_Handle_t))

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystemDlc\_GraphConfigInfo\_CreateFn\_t)([QairtSystemDlc\_GraphConfigInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv438QairtSystemDlc_GraphConfigInfoHandle_t)\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystemDlc\_GraphConfigInfo\_FreeFn\_t)([QairtSystemDlc\_GraphConfigInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv438QairtSystemDlc_GraphConfigInfoHandle_t))

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystemDlc\_GraphConfigInfo\_SetGraphNameFn\_t)([QairtSystemDlc\_GraphConfigInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv438QairtSystemDlc_GraphConfigInfoHandle_t), const char\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystemDlc\_GraphConfigInfo\_GetGraphNameFn\_t)([QairtSystemDlc\_GraphConfigInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv438QairtSystemDlc_GraphConfigInfoHandle_t), const char\*\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystemDlc\_GraphConfigInfo\_SetGraphConfigFn\_t)([QairtSystemDlc\_GraphConfigInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv438QairtSystemDlc_GraphConfigInfoHandle_t), [QairtGraph\_ConfigHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtGraph.html#_CPPv425QairtGraph_ConfigHandle_t))

    -

Defines

- QAIRT\_SYSTEM\_DLC\_V1\_ID QAIRT\_MIN\_ID\_SYSTEM\_DLC

    - 

- QAIRT\_SYSTEM\_DLC\_GRAPH\_CONFIG\_INFO\_V1\_ID QAIRT\_MIN\_ID\_SYSTEM\_DLC + 1

    -

* * *

System-level logging configuration.

**Include:** `#include "QairtSystem/QairtSystemLog.h"`

- struct QairtSystemLog\_V1\_t

    - *#include &lt;QairtSystemLog.h&gt;*

Public Members

- uint64\_t size

    - 

- [Qairt\_GetInterfaceFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv422Qairt_GetInterfaceFn_t) getInterface

    - 

- [QairtSystemLog\_CreateFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv425QairtSystemLog_CreateFn_t) create

    - 

- [QairtSystemLog\_SetLogLevelFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv430QairtSystemLog_SetLogLevelFn_t) setLogLevel

    - 

- [QairtSystemLog\_FreeFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv423QairtSystemLog_FreeFn_t) free

    -

Functions

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystemLog\_create([QairtLog\_CallbackHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtLog.html#_CPPv425QairtLog_CallbackHandle_t) callback, [QairtLog\_Level\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtLog.html#_CPPv416QairtLog_Level_t) maxLogLevel, void \*userData, [QairtSystemLog\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv423QairtSystemLog_Handle_t) \*logger)

    - Create a handle to a logger object.

- Parameters

    - - **callback** – **[in]** Callback handle to handle system library generated logging messages.
- **maxLogLevel** – **[in]** Maximum level of messages which the system library will generate.
- **userData** – **[in]** Opaque user data pointer that will be forwarded to the callback supplied in *callbackHandle* on every invocation. May be NULL. The same callback function may be registered with multiple loggers using different userData values.
- **logger** – **[out]** The created log handle.

- Returns

    - Error code:

- QAIRT\_SUCCESS: if logging is successfully initialized.
- QAIRT\_COMMON\_ERROR\_NOT\_SUPPORTED: logging is not supported.
- QAIRT\_LOG\_ERROR\_INVALID\_ARGUMENT: if one or more arguments is invalid.
- QAIRT\_LOG\_ERROR\_MEM\_ALLOC: for memory allocation errors.
- QAIRT\_LOG\_ERROR\_INITIALIZATION: log init failed.

Note

Use corresponding API through [QairtSystemLog\_V1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystemLog__V1__t).

Warning

The callback function pointer and userData are currently global and will be overwritten by each subsequent call to QairtSystemLog\_create that supplies a non-null callback. Only the most recently registered (callback, userData) pair will be active at any given time. Loggers created with a NULL (default) callback will still use the default callback regardless of non-null callback registration. This limitation will be removed in a future release.

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystemLog\_setLogLevel([QairtSystemLog\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv423QairtSystemLog_Handle_t) logger, [QairtLog\_Level\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtLog.html#_CPPv416QairtLog_Level_t) maxLogLevel)

    - A function to change the log level for the supplied log handle.

- Parameters

    - - **logger** – **[in]** A log handle.
- **maxLogLevel** – **[in]** New maximum log level.

- Returns

    - Error code:

- QAIRT\_SUCCESS: if the level is changed successfully.
- QAIRT\_LOG\_ERROR\_INVALID\_ARGUMENT: if maxLogLevel is not a valid QairtLog\_Level\_t level.
- QAIRT\_LOG\_ERROR\_INVALID\_HANDLE: logger is not a valid handle

Note

Use corresponding API through [QairtSystemLog\_V1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystemLog__V1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystemLog\_free([QairtSystemLog\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv423QairtSystemLog_Handle_t) logger)

    - A function to free the memory associated with the log handle.

- Parameters

    - **logger** – **[in]** A log handle.

- Returns

    - Error code:

- QAIRT\_SUCCESS: indicates logging is terminated.
- QAIRT\_LOG\_ERROR\_MEM\_ALLOC: for memory de-allocation errors.
- QAIRT\_LOG\_ERROR\_INVALID\_HANDLE: logger is not a valid handle

Note

Use corresponding API through [QairtSystemLog\_V1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystemLog__V1__t).

Typedefs

- typedef struct \_QairtSystemLog\_Handle\_t \*QairtSystemLog\_Handle\_t

    - A handle to a system log instance.

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystemLog\_CreateFn\_t)([QairtLog\_CallbackHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtLog.html#_CPPv425QairtLog_CallbackHandle_t), [QairtLog\_Level\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtLog.html#_CPPv416QairtLog_Level_t), void\*, [QairtSystemLog\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv423QairtSystemLog_Handle_t)\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystemLog\_SetLogLevelFn\_t)([QairtSystemLog\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv423QairtSystemLog_Handle_t), [QairtLog\_Level\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtLog.html#_CPPv416QairtLog_Level_t))

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystemLog\_FreeFn\_t)([QairtSystemLog\_Handle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv423QairtSystemLog_Handle_t))

    -

Defines

- QAIRT\_SYSTEM\_LOG\_V1\_ID QAIRT\_MIN\_ID\_SYSTEM\_LOG

    -

* * *

System-level profiling API.

**Include:** `#include "QairtSystem/QairtSystemProfile.h"`

- struct QairtSystem\_Profile\_HeaderV1\_t

    - Public Members

- uint64\_t size

    - 

- [Qairt\_GetInterfaceFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv422Qairt_GetInterfaceFn_t) getInterface

    - 

- [QairtSystem\_Profile\_Header\_CreateFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv437QairtSystem_Profile_Header_CreateFn_t) create

    - 

- [QairtSystem\_Profile\_Header\_FreeFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv435QairtSystem_Profile_Header_FreeFn_t) free

    - 

- [QairtSystem\_Profile\_Header\_GetStartTimeFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv443QairtSystem_Profile_Header_GetStartTimeFn_t) getStartTime

    - 

- [QairtSystem\_Profile\_Header\_SetStartTimeFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv443QairtSystem_Profile_Header_SetStartTimeFn_t) setStartTime

    - 

- [QairtSystem\_Profile\_Header\_GetStopTimeFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv442QairtSystem_Profile_Header_GetStopTimeFn_t) getStopTime

    - 

- [QairtSystem\_Profile\_Header\_SetStopTimeFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv442QairtSystem_Profile_Header_SetStopTimeFn_t) setStopTime

    - 

- [QairtSystem\_Profile\_Header\_GetStartMemFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv442QairtSystem_Profile_Header_GetStartMemFn_t) getStartMem

    - 

- [QairtSystem\_Profile\_Header\_SetStartMemFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv442QairtSystem_Profile_Header_SetStartMemFn_t) setStartMem

    - 

- [QairtSystem\_Profile\_Header\_GetStopMemFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv441QairtSystem_Profile_Header_GetStopMemFn_t) getStopMem

    - 

- [QairtSystem\_Profile\_Header\_SetStopMemFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv441QairtSystem_Profile_Header_SetStopMemFn_t) setStopMem

    - 

- [QairtSystem\_Profile\_Header\_GetMethodTypeFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv444QairtSystem_Profile_Header_GetMethodTypeFn_t) getMethodType

    - 

- [QairtSystem\_Profile\_Header\_SetMethodTypeFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv444QairtSystem_Profile_Header_SetMethodTypeFn_t) setMethodType

    - 

- [QairtSystem\_Profile\_Header\_GetVisibilityFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv444QairtSystem_Profile_Header_GetVisibilityFn_t) getVisibility

    - 

- [QairtSystem\_Profile\_Header\_SetVisibilityFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv444QairtSystem_Profile_Header_SetVisibilityFn_t) setVisibility

    - 

- [QairtSystem\_Profile\_Header\_GetGraphNameFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv443QairtSystem_Profile_Header_GetGraphNameFn_t) getGraphName

    - 

- [QairtSystem\_Profile\_Header\_SetGraphNameFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv443QairtSystem_Profile_Header_SetGraphNameFn_t) setGraphName

    -

- struct QairtSystem\_Profile\_EventV1\_t

    - Public Members

- uint64\_t size

    - 

- [Qairt\_GetInterfaceFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv422Qairt_GetInterfaceFn_t) getInterface

    - 

- [QairtSystem\_Profile\_Event\_CreateFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv436QairtSystem_Profile_Event_CreateFn_t) create

    - 

- [QairtSystem\_Profile\_Event\_FreeFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv434QairtSystem_Profile_Event_FreeFn_t) free

    - 

- [QairtSystem\_Profile\_Event\_GetEventDataTypeFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv446QairtSystem_Profile_Event_GetEventDataTypeFn_t) getEventDataType

    - 

- [QairtSystem\_Profile\_Event\_SetEventDataFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv442QairtSystem_Profile_Event_SetEventDataFn_t) setEventData

    - 

- [QairtSystem\_Profile\_Event\_GetEventDataFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv442QairtSystem_Profile_Event_GetEventDataFn_t) getEventData

    - 

- [QairtSystem\_Profile\_Event\_GetNumSubEventsFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv445QairtSystem_Profile_Event_GetNumSubEventsFn_t) getNumSubEvents

    - 

- [QairtSystem\_Profile\_Event\_GetSubEventAtFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv443QairtSystem_Profile_Event_GetSubEventAtFn_t) getSubEventAt

    - 

- [QairtSystem\_Profile\_Event\_SetSubEventDataFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv445QairtSystem_Profile_Event_SetSubEventDataFn_t) setSubEventData

    - 

- [QairtSystem\_Profile\_Event\_AddSubEventFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv441QairtSystem_Profile_Event_AddSubEventFn_t) addSubEvent

    -

- struct QairtSystem\_Profile\_ProfileDataV1\_t

    - Public Members

- uint64\_t size

    - 

- [Qairt\_GetInterfaceFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv422Qairt_GetInterfaceFn_t) getInterface

    - 

- [QairtSystem\_Profile\_ProfileData\_CreateFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv442QairtSystem_Profile_ProfileData_CreateFn_t) create

    - 

- [QairtSystem\_Profile\_ProfileData\_FreeFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv440QairtSystem_Profile_ProfileData_FreeFn_t) free

    - 

- [QairtSystem\_Profile\_ProfileData\_SetHeaderFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv445QairtSystem_Profile_ProfileData_SetHeaderFn_t) setHeader

    - 

- [QairtSystem\_Profile\_ProfileData\_GetHeaderFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv445QairtSystem_Profile_ProfileData_GetHeaderFn_t) getHeader

    - 

- [QairtSystem\_Profile\_ProfileData\_GetNumProfilingEventsFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv457QairtSystem_Profile_ProfileData_GetNumProfilingEventsFn_t) getNumProfilingEvents

    - 

- [QairtSystem\_Profile\_ProfileData\_GetEventAtFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv446QairtSystem_Profile_ProfileData_GetEventAtFn_t) getEventAt

    - 

- [QairtSystem\_Profile\_ProfileData\_SetEventsFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv445QairtSystem_Profile_ProfileData_SetEventsFn_t) setEvents

    - 

- [QairtSystem\_Profile\_ProfileData\_AddEventFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv444QairtSystem_Profile_ProfileData_AddEventFn_t) addEvent

    -

- struct QairtSystem\_Profile\_DataV1\_t

    - Public Members

- uint64\_t size

    - 

- [Qairt\_GetInterfaceFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv422Qairt_GetInterfaceFn_t) getInterface

    - 

- [QairtSystem\_Profile\_Data\_CreateFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv435QairtSystem_Profile_Data_CreateFn_t) create

    - 

- [QairtSystem\_Profile\_Data\_FreeFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv433QairtSystem_Profile_Data_FreeFn_t) free

    - 

- [QairtSystem\_Profile\_Data\_GetVersionFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv439QairtSystem_Profile_Data_GetVersionFn_t) getVersion

    - 

- [QairtSystem\_Profile\_Data\_SetProfileDataV1Fn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv445QairtSystem_Profile_Data_SetProfileDataV1Fn_t) setProfileDataV1

    - 

- [QairtSystem\_Profile\_Data\_GetProfileDataV1Fn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv445QairtSystem_Profile_Data_GetProfileDataV1Fn_t) getProfileDataV1

    -

- struct QairtSystem\_Profile\_SerializationFileHeaderV1\_t

    - Public Members

- uint64\_t size

    - 

- [Qairt\_GetInterfaceFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv422Qairt_GetInterfaceFn_t) getInterface

    - 

- [QairtSystem\_Profile\_SerializationFileHeader\_CreateFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv454QairtSystem_Profile_SerializationFileHeader_CreateFn_t) create

    - 

- [QairtSystem\_Profile\_SerializationFileHeader\_FreeFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv452QairtSystem_Profile_SerializationFileHeader_FreeFn_t) free

    - 

- [QairtSystem\_Profile\_SerializationFileHeader\_GetAppNameFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv458QairtSystem_Profile_SerializationFileHeader_GetAppNameFn_t) getAppName

    - 

- [QairtSystem\_Profile\_SerializationFileHeader\_SetAppNameFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv458QairtSystem_Profile_SerializationFileHeader_SetAppNameFn_t) setAppName

    - 

- [QairtSystem\_Profile\_SerializationFileHeader\_GetAppVersionFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv461QairtSystem_Profile_SerializationFileHeader_GetAppVersionFn_t) getAppVersion

    - 

- [QairtSystem\_Profile\_SerializationFileHeader\_SetAppVersionFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv461QairtSystem_Profile_SerializationFileHeader_SetAppVersionFn_t) setAppVersion

    - 

- [QairtSystem\_Profile\_SerializationFileHeader\_GetBackendVersionFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv465QairtSystem_Profile_SerializationFileHeader_GetBackendVersionFn_t) getBackendVersion

    - 

- [QairtSystem\_Profile\_SerializationFileHeader\_SetBackendVersionFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv465QairtSystem_Profile_SerializationFileHeader_SetBackendVersionFn_t) setBackendVersion

    -

- struct QairtSystem\_Profile\_SerializationTargetConfigurationV1\_t

    - Public Members

- uint64\_t size

    - 

- [Qairt\_GetInterfaceFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv422Qairt_GetInterfaceFn_t) getInterface

    - 

- [QairtSystem\_Profile\_SerializationTargetConfiguration\_CreateFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv463QairtSystem_Profile_SerializationTargetConfiguration_CreateFn_t) create

    - 

- [QairtSystem\_Profile\_SerializationTargetConfiguration\_FreeFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv461QairtSystem_Profile_SerializationTargetConfiguration_FreeFn_t) free

    - 

- [QairtSystem\_Profile\_SerializationTargetConfiguration\_SetMaxNumMessagesFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv474QairtSystem_Profile_SerializationTargetConfiguration_SetMaxNumMessagesFn_t) setMaxNumMessages

    - 

- [QairtSystem\_Profile\_SerializationTargetConfiguration\_GetMaxNumMessagesFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv474QairtSystem_Profile_SerializationTargetConfiguration_GetMaxNumMessagesFn_t) getMaxNumMessages

    - 

- [QairtSystem\_Profile\_SerializationTargetConfiguration\_SetFileHeaderFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv470QairtSystem_Profile_SerializationTargetConfiguration_SetFileHeaderFn_t) setFileHeader

    - 

- [QairtSystem\_Profile\_SerializationTargetConfiguration\_GetFileHeaderFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv470QairtSystem_Profile_SerializationTargetConfiguration_GetFileHeaderFn_t) getFileHeader

    -

- struct QairtSystem\_Profile\_SerializationTargetFileV1\_t

    - Public Members

- uint64\_t size

    - 

- [Qairt\_GetInterfaceFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv422Qairt_GetInterfaceFn_t) getInterface

    - 

- [QairtSystem\_Profile\_SerializationTargetFile\_CreateFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv454QairtSystem_Profile_SerializationTargetFile_CreateFn_t) create

    - 

- [QairtSystem\_Profile\_SerializationTargetFile\_FreeFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv452QairtSystem_Profile_SerializationTargetFile_FreeFn_t) free

    - 

- [QairtSystem\_Profile\_SerializationTargetFile\_SetFileNameFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv459QairtSystem_Profile_SerializationTargetFile_SetFileNameFn_t) setFileName

    - 

- [QairtSystem\_Profile\_SerializationTargetFile\_GetFileNameFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv459QairtSystem_Profile_SerializationTargetFile_GetFileNameFn_t) getFileName

    - 

- [QairtSystem\_Profile\_SerializationTargetFile\_SetFileDirectoryFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv464QairtSystem_Profile_SerializationTargetFile_SetFileDirectoryFn_t) setFileDirectory

    - 

- [QairtSystem\_Profile\_SerializationTargetFile\_GetFileDirectoryFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv464QairtSystem_Profile_SerializationTargetFile_GetFileDirectoryFn_t) getFileDirectory

    -

- struct QairtSystem\_Profile\_SerializationTargetInfoV1\_t

    - Public Members

- uint64\_t size

    - 

- [Qairt\_GetInterfaceFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv422Qairt_GetInterfaceFn_t) getInterface

    - 

- [QairtSystem\_Profile\_SerializationTargetInfo\_CreateFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv454QairtSystem_Profile_SerializationTargetInfo_CreateFn_t) create

    - 

- [QairtSystem\_Profile\_SerializationTargetInfo\_FreeFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv452QairtSystem_Profile_SerializationTargetInfo_FreeFn_t) free

    - 

- [QairtSystem\_Profile\_SerializationTargetInfo\_GetTypeFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv455QairtSystem_Profile_SerializationTargetInfo_GetTypeFn_t) getType

    - 

- [QairtSystem\_Profile\_SerializationTargetInfo\_SetTargetFileFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv461QairtSystem_Profile_SerializationTargetInfo_SetTargetFileFn_t) setTargetFile

    - 

- [QairtSystem\_Profile\_SerializationTargetInfo\_GetTargetFileFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv461QairtSystem_Profile_SerializationTargetInfo_GetTargetFileFn_t) getTargetFile

    -

- struct QairtSystem\_Profile\_SerializationTargetV1\_t

    - Public Members

- uint64\_t size

    - 

- [Qairt\_GetInterfaceFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv422Qairt_GetInterfaceFn_t) getInterface

    - 

- [QairtSystem\_Profile\_SerializationTarget\_CreateFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv450QairtSystem_Profile_SerializationTarget_CreateFn_t) create

    - 

- [QairtSystem\_Profile\_SerializationTarget\_FreeFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv448QairtSystem_Profile_SerializationTarget_FreeFn_t) free

    - 

- [QairtSystem\_Profile\_SerializationTarget\_SerializeEventDataFn\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv462QairtSystem_Profile_SerializationTarget_SerializeEventDataFn_t) serializeEventData

    -

Functions

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Profile\_Header\_create([QairtSystem\_Profile\_HeaderHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv434QairtSystem_Profile_HeaderHandle_t) \*headerHandle)

    - Create a system profile header object.

- Parameters

    - **headerHandle** – **[out]** A handle to the created system profile header.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Header was successfully created.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_ARGUMENT: *headerHandle* is NULL.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_MEM\_ALLOC: Memory allocation failed.

Note

Use corresponding API through [QairtSystem\_Profile\_HeaderV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Profile__HeaderV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Profile\_Header\_free([QairtSystem\_Profile\_HeaderHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv434QairtSystem_Profile_HeaderHandle_t) headerHandle)

    - Free a system profile header and associated resources.

- Parameters

    - **headerHandle** – **[in]** A handle to a created system profile header.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Header was successfully freed.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_HANDLE: *headerHandle* is not a valid handle.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_MEM\_ALLOC: Memory deallocation error.

Note

Use corresponding API through [QairtSystem\_Profile\_HeaderV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Profile__HeaderV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Profile\_Header\_getStartTime([QairtSystem\_Profile\_HeaderHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv434QairtSystem_Profile_HeaderHandle_t) headerHandle, uint64\_t \*startTime)

    - Get the start time from a system profile header.

- Parameters

    - - **headerHandle** – **[in]** A handle to a system profile header.
- **startTime** – **[out]** The start time value.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Start time was successfully retrieved.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_HANDLE: *headerHandle* is not a valid handle.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_ARGUMENT: *startTime* is NULL.

Note

Use corresponding API through [QairtSystem\_Profile\_HeaderV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Profile__HeaderV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Profile\_Header\_setStartTime([QairtSystem\_Profile\_HeaderHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv434QairtSystem_Profile_HeaderHandle_t) headerHandle, uint64\_t startTime)

    - Set the start time in a system profile header.

- Parameters

    - - **headerHandle** – **[in]** A handle to a system profile header.
- **startTime** – **[in]** The start time value to set.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Start time was successfully set.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_HANDLE: *headerHandle* is not a valid handle.

Note

Use corresponding API through [QairtSystem\_Profile\_HeaderV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Profile__HeaderV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Profile\_Header\_getStopTime([QairtSystem\_Profile\_HeaderHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv434QairtSystem_Profile_HeaderHandle_t) headerHandle, uint64\_t \*stopTime)

    - Get the stop time from a system profile header.

- Parameters

    - - **headerHandle** – **[in]** A handle to a system profile header.
- **stopTime** – **[out]** The stop time value.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Stop time was successfully retrieved.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_HANDLE: *headerHandle* is not a valid handle.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_ARGUMENT: *stopTime* is NULL.

Note

Use corresponding API through [QairtSystem\_Profile\_HeaderV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Profile__HeaderV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Profile\_Header\_setStopTime([QairtSystem\_Profile\_HeaderHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv434QairtSystem_Profile_HeaderHandle_t) headerHandle, uint64\_t stopTime)

    - Set the stop time in a system profile header.

- Parameters

    - - **headerHandle** – **[in]** A handle to a system profile header.
- **stopTime** – **[in]** The stop time value to set.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Stop time was successfully set.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_HANDLE: *headerHandle* is not a valid handle.

Note

Use corresponding API through [QairtSystem\_Profile\_HeaderV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Profile__HeaderV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Profile\_Header\_getStartMem([QairtSystem\_Profile\_HeaderHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv434QairtSystem_Profile_HeaderHandle_t) headerHandle, uint64\_t \*startMem)

    - Get the start memory value from a system profile header.

- Parameters

    - - **headerHandle** – **[in]** A handle to a system profile header.
- **startMem** – **[out]** The start memory value.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Start memory was successfully retrieved.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_HANDLE: *headerHandle* is not a valid handle.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_ARGUMENT: *startMem* is NULL.

Note

Use corresponding API through [QairtSystem\_Profile\_HeaderV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Profile__HeaderV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Profile\_Header\_setStartMem([QairtSystem\_Profile\_HeaderHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv434QairtSystem_Profile_HeaderHandle_t) headerHandle, uint64\_t startMem)

    - Set the start memory value in a system profile header.

- Parameters

    - - **headerHandle** – **[in]** A handle to a system profile header.
- **startMem** – **[in]** The start memory value to set.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Start memory was successfully set.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_HANDLE: *headerHandle* is not a valid handle.

Note

Use corresponding API through [QairtSystem\_Profile\_HeaderV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Profile__HeaderV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Profile\_Header\_getStopMem([QairtSystem\_Profile\_HeaderHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv434QairtSystem_Profile_HeaderHandle_t) headerHandle, uint64\_t \*stopMem)

    - Get the stop memory value from a system profile header.

- Parameters

    - - **headerHandle** – **[in]** A handle to a system profile header.
- **stopMem** – **[out]** The stop memory value.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Stop memory was successfully retrieved.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_HANDLE: *headerHandle* is not a valid handle.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_ARGUMENT: *stopMem* is NULL.

Note

Use corresponding API through [QairtSystem\_Profile\_HeaderV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Profile__HeaderV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Profile\_Header\_setStopMem([QairtSystem\_Profile\_HeaderHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv434QairtSystem_Profile_HeaderHandle_t) headerHandle, uint64\_t stopMem)

    - Set the stop memory value in a system profile header.

- Parameters

    - - **headerHandle** – **[in]** A handle to a system profile header.
- **stopMem** – **[in]** The stop memory value to set.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Stop memory was successfully set.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_HANDLE: *headerHandle* is not a valid handle.

Note

Use corresponding API through [QairtSystem\_Profile\_HeaderV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Profile__HeaderV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Profile\_Header\_getMethodType([QairtSystem\_Profile\_HeaderHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv434QairtSystem_Profile_HeaderHandle_t) headerHandle, [QairtSystem\_Profile\_MethodType\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv432QairtSystem_Profile_MethodType_t) \*methodType)

    - Get the method type from a system profile header.

- Parameters

    - - **headerHandle** – **[in]** A handle to a system profile header.
- **methodType** – **[out]** The method type value.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Method type was successfully retrieved.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_HANDLE: *headerHandle* is not a valid handle.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_ARGUMENT: *methodType* is NULL.

Note

Use corresponding API through [QairtSystem\_Profile\_HeaderV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Profile__HeaderV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Profile\_Header\_setMethodType([QairtSystem\_Profile\_HeaderHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv434QairtSystem_Profile_HeaderHandle_t) headerHandle, [QairtSystem\_Profile\_MethodType\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv432QairtSystem_Profile_MethodType_t) methodType)

    - Set the method type in a system profile header.

- Parameters

    - - **headerHandle** – **[in]** A handle to a system profile header.
- **methodType** – **[in]** The method type value to set.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Method type was successfully set.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_HANDLE: *headerHandle* is not a valid handle.

Note

Use corresponding API through [QairtSystem\_Profile\_HeaderV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Profile__HeaderV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Profile\_Header\_getVisibility([QairtSystem\_Profile\_HeaderHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv434QairtSystem_Profile_HeaderHandle_t) headerHandle, [QairtSystem\_Profile\_Visibility\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv432QairtSystem_Profile_Visibility_t) \*visibility)

    - Get the visibility from a system profile header.

- Parameters

    - - **headerHandle** – **[in]** A handle to a system profile header.
- **visibility** – **[out]** The visibility value.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Visibility was successfully retrieved.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_HANDLE: *headerHandle* is not a valid handle.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_ARGUMENT: *visibility* is NULL.

Note

Use corresponding API through [QairtSystem\_Profile\_HeaderV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Profile__HeaderV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Profile\_Header\_setVisibility([QairtSystem\_Profile\_HeaderHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv434QairtSystem_Profile_HeaderHandle_t) headerHandle, [QairtSystem\_Profile\_Visibility\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv432QairtSystem_Profile_Visibility_t) visibility)

    - Set the visibility in a system profile header.

- Parameters

    - - **headerHandle** – **[in]** A handle to a system profile header.
- **visibility** – **[in]** The visibility value to set.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Visibility was successfully set.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_HANDLE: *headerHandle* is not a valid handle.

Note

Use corresponding API through [QairtSystem\_Profile\_HeaderV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Profile__HeaderV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Profile\_Header\_getGraphName([QairtSystem\_Profile\_HeaderHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv434QairtSystem_Profile_HeaderHandle_t) headerHandle, const char \*\*graphName)

    - Get the graph name from a system profile header.

- Parameters

    - - **headerHandle** – **[in]** A handle to a system profile header.
- **graphName** – **[out]** The graph name string.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Graph name was successfully retrieved.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_HANDLE: *headerHandle* is not a valid handle.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_ARGUMENT: *graphName* is NULL.

Note

Use corresponding API through [QairtSystem\_Profile\_HeaderV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Profile__HeaderV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Profile\_Header\_setGraphName([QairtSystem\_Profile\_HeaderHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv434QairtSystem_Profile_HeaderHandle_t) headerHandle, const char \*graphName)

    - Set the graph name in a system profile header.

- Parameters

    - - **headerHandle** – **[in]** A handle to a system profile header.
- **graphName** – **[in]** The graph name string to set.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Graph name was successfully set.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_HANDLE: *headerHandle* is not a valid handle.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_ARGUMENT: *graphName* is NULL.

Note

Use corresponding API through [QairtSystem\_Profile\_HeaderV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Profile__HeaderV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Profile\_Event\_create([QairtSystem\_Profile\_EventHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv433QairtSystem_Profile_EventHandle_t) \*eventHandle)

    - Create a system profile event object.

- Parameters

    - **eventHandle** – **[out]** A handle to the created system profile event.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Event was successfully created.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_ARGUMENT: *eventHandle* is NULL.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_MEM\_ALLOC: Memory allocation failed.

Note

Use corresponding API through [QairtSystem\_Profile\_EventV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Profile__EventV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Profile\_Event\_free([QairtSystem\_Profile\_EventHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv433QairtSystem_Profile_EventHandle_t) eventHandle)

    - Free a system profile event and associated resources.

- Parameters

    - **eventHandle** – **[in]** A handle to a created system profile event.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Event was successfully freed.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_HANDLE: *eventHandle* is not a valid handle.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_MEM\_ALLOC: Memory deallocation error.

Note

Use corresponding API through [QairtSystem\_Profile\_EventV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Profile__EventV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Profile\_Event\_getEventDataType([QairtSystem\_Profile\_EventHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv433QairtSystem_Profile_EventHandle_t) eventHandle, [QairtSystem\_Profile\_EventDataType\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv435QairtSystem_Profile_EventDataType_t) \*eventDataType)

    - Get the event data type from a system profile event.

- Parameters

    - - **eventHandle** – **[in]** A handle to a system profile event.
- **eventDataType** – **[out]** The event data type.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Event data type was successfully retrieved.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_HANDLE: *eventHandle* is not a valid handle.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_ARGUMENT: *eventDataType* is NULL.

Note

Use corresponding API through [QairtSystem\_Profile\_EventV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Profile__EventV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Profile\_Event\_setEventData([QairtSystem\_Profile\_EventHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv433QairtSystem_Profile_EventHandle_t) eventHandle, [QairtProfile\_EventHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtProfile.html#_CPPv426QairtProfile_EventHandle_t) profileEventHandle)

    - Set the event data in a system profile event.

- Parameters

    - - **eventHandle** – **[in]** A handle to a system profile event.
- **profileEventHandle** – **[in]** A handle to a profile event to associate with this system profile event.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Event data was successfully set.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_HANDLE: *eventHandle* or *profileEventHandle* is not a valid handle.

Note

Use corresponding API through [QairtSystem\_Profile\_EventV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Profile__EventV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Profile\_Event\_getEventData([QairtSystem\_Profile\_EventHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv433QairtSystem_Profile_EventHandle_t) event, [QairtProfile\_EventHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtProfile.html#_CPPv426QairtProfile_EventHandle_t) \*profileEventHandle)

    - Get the event data from a system profile event.

- Parameters

    - - **event** – **[in]** A handle to a system profile event.
- **profileEventHandle** – **[out]** A handle to the associated profile event.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Event data was successfully retrieved.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_HANDLE: *event* is not a valid handle.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_ARGUMENT: *profileEventHandle* is NULL.

Note

Use corresponding API through [QairtSystem\_Profile\_EventV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Profile__EventV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Profile\_Event\_getNumSubEvents([QairtSystem\_Profile\_EventHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv433QairtSystem_Profile_EventHandle_t) eventHandle, uint32\_t \*numSubEvents)

    - Get the number of sub-events in a system profile event.

- Parameters

    - - **eventHandle** – **[in]** A handle to a system profile event.
- **numSubEvents** – **[out]** The number of sub-events.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Number of sub-events was successfully retrieved.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_HANDLE: *eventHandle* is not a valid handle.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_ARGUMENT: *numSubEvents* is NULL.

Note

Use corresponding API through [QairtSystem\_Profile\_EventV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Profile__EventV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Profile\_Event\_getSubEventAt([QairtSystem\_Profile\_EventHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv433QairtSystem_Profile_EventHandle_t) eventHandle, uint32\_t index, [QairtSystem\_Profile\_EventHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv433QairtSystem_Profile_EventHandle_t) \*subEventHandle)

    - Get a sub-event at a specific index from a system profile event.

- Parameters

    - - **eventHandle** – **[in]** A handle to a system profile event.
- **index** – **[in]** The index of the sub-event to retrieve.
- **subEventHandle** – **[out]** A handle to the sub-event at the specified index.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Sub-event was successfully retrieved.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_HANDLE: *eventHandle* is not a valid handle.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_ARGUMENT: *subEventHandle* is NULL or *index* is out of bounds.

Note

Use corresponding API through [QairtSystem\_Profile\_EventV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Profile__EventV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Profile\_Event\_setSubEventData([QairtSystem\_Profile\_EventHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv433QairtSystem_Profile_EventHandle_t) eventHandle, [QairtSystem\_Profile\_EventHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv433QairtSystem_Profile_EventHandle_t) \*subEventHandles, uint32\_t numSubEvents)

    - Set the sub-events in a system profile event.

- Parameters

    - - **eventHandle** – **[in]** A handle to a system profile event.
- **subEventHandles** – **[in]** An array of sub-event handles to set.
- **numSubEvents** – **[in]** The number of sub-events in the array.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Sub-events were successfully set.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_HANDLE: *eventHandle* is not a valid handle.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_ARGUMENT: *subEventHandles* is NULL or *numSubEvents* is invalid.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_MEM\_ALLOC: Memory allocation failed.

Note

Use corresponding API through [QairtSystem\_Profile\_EventV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Profile__EventV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Profile\_Event\_addSubEvent([QairtSystem\_Profile\_EventHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv433QairtSystem_Profile_EventHandle_t) eventHandle, [QairtSystem\_Profile\_EventHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv433QairtSystem_Profile_EventHandle_t) subEventHandle)

    - Add a sub-event to a system profile event.

- Parameters

    - - **eventHandle** – **[in]** A handle to a system profile event.
- **subEventHandle** – **[in]** A handle to the sub-event to add.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Sub-event was successfully added.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_HANDLE: *eventHandle* or *subEventHandle* is not a valid handle.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_MEM\_ALLOC: Memory allocation failed.

Note

Use corresponding API through [QairtSystem\_Profile\_EventV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Profile__EventV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Profile\_ProfileData\_create([QairtSystem\_Profile\_ProfileDataHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv439QairtSystem_Profile_ProfileDataHandle_t) \*profileDataHandle)

    - Create a system profile profile data object.

- Parameters

    - **profileDataHandle** – **[out]** A handle to the created system profile profile data.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Profile data was successfully created.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_ARGUMENT: *profileDataHandle* is NULL.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_MEM\_ALLOC: Memory allocation failed.

Note

Use corresponding API through [QairtSystem\_Profile\_ProfileDataV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Profile__ProfileDataV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Profile\_ProfileData\_free([QairtSystem\_Profile\_ProfileDataHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv439QairtSystem_Profile_ProfileDataHandle_t) profileDataHandle)

    - Free a system profile profile data object and associated resources.

- Parameters

    - **profileDataHandle** – **[in]** A handle to a created system profile profile data.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Profile data was successfully freed.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_HANDLE: *profileDataHandle* is not a valid handle.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_MEM\_ALLOC: Memory deallocation error.

Note

Use corresponding API through [QairtSystem\_Profile\_ProfileDataV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Profile__ProfileDataV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Profile\_ProfileData\_setHeader([QairtSystem\_Profile\_ProfileDataHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv439QairtSystem_Profile_ProfileDataHandle_t) profileDataHandle, [QairtSystem\_Profile\_HeaderHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv434QairtSystem_Profile_HeaderHandle_t) headerHandle)

    - Set the header in a system profile profile data object.

- Parameters

    - - **profileDataHandle** – **[in]** A handle to a system profile profile data.
- **headerHandle** – **[in]** A handle to the header to associate with this profile data.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Header was successfully set.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_HANDLE: *profileDataHandle* or *headerHandle* is not a valid handle.

Note

Use corresponding API through [QairtSystem\_Profile\_ProfileDataV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Profile__ProfileDataV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Profile\_ProfileData\_getHeader([QairtSystem\_Profile\_ProfileDataHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv439QairtSystem_Profile_ProfileDataHandle_t) profileDataHandle, [QairtSystem\_Profile\_HeaderHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv434QairtSystem_Profile_HeaderHandle_t) \*headerHandle)

    - Get the header from a system profile profile data object.

- Parameters

    - - **profileDataHandle** – **[in]** A handle to a system profile profile data.
- **headerHandle** – **[out]** A handle to the associated header.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Header was successfully retrieved.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_HANDLE: *profileDataHandle* is not a valid handle.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_ARGUMENT: *headerHandle* is NULL.

Note

Use corresponding API through [QairtSystem\_Profile\_ProfileDataV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Profile__ProfileDataV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Profile\_ProfileData\_getNumProfilingEvents([QairtSystem\_Profile\_ProfileDataHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv439QairtSystem_Profile_ProfileDataHandle_t) profileDataHandle, uint32\_t \*numEvents)

    - Get the number of profiling events in a system profile profile data object.

- Parameters

    - - **profileDataHandle** – **[in]** A handle to a system profile profile data.
- **numEvents** – **[out]** The number of profiling events.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Number of events was successfully retrieved.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_HANDLE: *profileDataHandle* is not a valid handle.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_ARGUMENT: *numEvents* is NULL.

Note

Use corresponding API through [QairtSystem\_Profile\_ProfileDataV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Profile__ProfileDataV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Profile\_ProfileData\_getEventAt([QairtSystem\_Profile\_ProfileDataHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv439QairtSystem_Profile_ProfileDataHandle_t) profileDataHandle, uint32\_t index, [QairtSystem\_Profile\_EventHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv433QairtSystem_Profile_EventHandle_t) \*eventHandle)

    - Get an event at a specific index from a system profile profile data object.

- Parameters

    - - **profileDataHandle** – **[in]** A handle to a system profile profile data.
- **index** – **[in]** The index of the event to retrieve.
- **eventHandle** – **[out]** A handle to the event at the specified index.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Event was successfully retrieved.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_HANDLE: *profileDataHandle* is not a valid handle.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_ARGUMENT: *eventHandle* is NULL or *index* is out of bounds.

Note

Use corresponding API through [QairtSystem\_Profile\_ProfileDataV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Profile__ProfileDataV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Profile\_ProfileData\_setEvents([QairtSystem\_Profile\_ProfileDataHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv439QairtSystem_Profile_ProfileDataHandle_t) profileDataHandle, [QairtSystem\_Profile\_EventHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv433QairtSystem_Profile_EventHandle_t) \*eventHandles, uint32\_t numEvents)

    - Set the events in a system profile profile data object.

- Parameters

    - - **profileDataHandle** – **[in]** A handle to a system profile profile data.
- **eventHandles** – **[in]** An array of event handles to set.
- **numEvents** – **[in]** The number of events in the array.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Events were successfully set.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_HANDLE: *profileDataHandle* is not a valid handle.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_ARGUMENT: *eventHandles* is NULL or *numEvents* is invalid.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_MEM\_ALLOC: Memory allocation failed.

Note

Use corresponding API through [QairtSystem\_Profile\_ProfileDataV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Profile__ProfileDataV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Profile\_ProfileData\_addEvent([QairtSystem\_Profile\_ProfileDataHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv439QairtSystem_Profile_ProfileDataHandle_t) profileDataHandle, [QairtSystem\_Profile\_EventHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv433QairtSystem_Profile_EventHandle_t) eventHandle)

    - Add an event to a system profile profile data object.

- Parameters

    - - **profileDataHandle** – **[in]** A handle to a system profile profile data.
- **eventHandle** – **[in]** A handle to the event to add.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Event was successfully added.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_HANDLE: *profileDataHandle* or *eventHandle* is not a valid handle.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_MEM\_ALLOC: Memory allocation failed.

Note

Use corresponding API through [QairtSystem\_Profile\_ProfileDataV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Profile__ProfileDataV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Profile\_Data\_create([QairtSystem\_Profile\_DataHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv432QairtSystem_Profile_DataHandle_t) \*dataHandle)

    - Create a system profile data object.

- Parameters

    - **dataHandle** – **[out]** A handle to the created system profile data.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Data was successfully created.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_ARGUMENT: *dataHandle* is NULL.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_MEM\_ALLOC: Memory allocation failed.

Note

Use corresponding API through [QairtSystem\_Profile\_DataV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Profile__DataV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Profile\_Data\_free([QairtSystem\_Profile\_DataHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv432QairtSystem_Profile_DataHandle_t) dataHandle)

    - Free a system profile data object and associated resources.

- Parameters

    - **dataHandle** – **[in]** A handle to a created system profile data.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Data was successfully freed.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_HANDLE: *dataHandle* is not a valid handle.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_MEM\_ALLOC: Memory deallocation error.

Note

Use corresponding API through [QairtSystem\_Profile\_DataV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Profile__DataV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Profile\_Data\_getVersion([QairtSystem\_Profile\_DataHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv432QairtSystem_Profile_DataHandle_t) dataHandle, [QairtSystem\_Profile\_DataVersion\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv433QairtSystem_Profile_DataVersion_t) \*version)

    - Get the version from a system profile data object.

- Parameters

    - - **dataHandle** – **[in]** A handle to a system profile data.
- **version** – **[out]** The profile data version.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Version was successfully retrieved.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_HANDLE: *dataHandle* is not a valid handle.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_ARGUMENT: *version* is NULL.

Note

Use corresponding API through [QairtSystem\_Profile\_DataV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Profile__DataV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Profile\_Data\_setProfileDataV1([QairtSystem\_Profile\_DataHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv432QairtSystem_Profile_DataHandle_t) dataHandle, [QairtSystem\_Profile\_ProfileDataHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv439QairtSystem_Profile_ProfileDataHandle_t) profileDataHandle)

    - Set the profile data V1 in a system profile data object.

- Parameters

    - - **dataHandle** – **[in]** A handle to a system profile data.
- **profileDataHandle** – **[in]** A handle to the profile data V1 to associate with this data.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Profile data V1 was successfully set.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_HANDLE: *dataHandle* or *profileDataHandle* is not a valid handle.

Note

Use corresponding API through [QairtSystem\_Profile\_DataV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Profile__DataV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Profile\_Data\_getProfileDataV1([QairtSystem\_Profile\_DataHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv432QairtSystem_Profile_DataHandle_t) dataHandle, [QairtSystem\_Profile\_ProfileDataHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv439QairtSystem_Profile_ProfileDataHandle_t) \*profileDataHandle)

    - Get the profile data V1 from a system profile data object.

- Parameters

    - - **dataHandle** – **[in]** A handle to a system profile data.
- **profileDataHandle** – **[out]** A handle to the associated profile data V1.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Profile data V1 was successfully retrieved.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_HANDLE: *dataHandle* is not a valid handle.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_ARGUMENT: *profileDataHandle* is NULL.

Note

Use corresponding API through [QairtSystem\_Profile\_DataV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Profile__DataV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Profile\_SerializationFileHeader\_create([QairtSystem\_Profile\_SerializationFileHeaderHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv451QairtSystem_Profile_SerializationFileHeaderHandle_t) \*fileHeaderHandle)

    - Create a serialization file header object.

- Parameters

    - **fileHeaderHandle** – **[out]** A handle to the created serialization file header.

- Returns

    - Error code:

- QAIRT\_SUCCESS: File header was successfully created.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_ARGUMENT: *fileHeaderHandle* is NULL.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_MEM\_ALLOC: Memory allocation failed.

Note

Use corresponding API through [QairtSystem\_Profile\_SerializationFileHeaderV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Profile__SerializationFileHeaderV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Profile\_SerializationFileHeader\_free([QairtSystem\_Profile\_SerializationFileHeaderHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv451QairtSystem_Profile_SerializationFileHeaderHandle_t) fileHeaderHandle)

    - Free a serialization file header and associated resources.

- Parameters

    - **fileHeaderHandle** – **[in]** A handle to a created serialization file header.

- Returns

    - Error code:

- QAIRT\_SUCCESS: File header was successfully freed.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_HANDLE: *fileHeaderHandle* is not a valid handle.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_MEM\_ALLOC: Memory deallocation error.

Note

Use corresponding API through [QairtSystem\_Profile\_SerializationFileHeaderV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Profile__SerializationFileHeaderV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Profile\_SerializationFileHeader\_getAppName([QairtSystem\_Profile\_SerializationFileHeaderHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv451QairtSystem_Profile_SerializationFileHeaderHandle_t) fileHeaderHandle, const char \*\*appName)

    - Get the application name from a serialization file header.

- Parameters

    - - **fileHeaderHandle** – **[in]** A handle to a serialization file header.
- **appName** – **[out]** The application name string.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Application name was successfully retrieved.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_HANDLE: *fileHeaderHandle* is not a valid handle.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_ARGUMENT: *appName* is NULL.

Note

Use corresponding API through [QairtSystem\_Profile\_SerializationFileHeaderV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Profile__SerializationFileHeaderV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Profile\_SerializationFileHeader\_setAppName([QairtSystem\_Profile\_SerializationFileHeaderHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv451QairtSystem_Profile_SerializationFileHeaderHandle_t) fileHeaderHandle, const char \*appName)

    - Set the application name in a serialization file header.

- Parameters

    - - **fileHeaderHandle** – **[in]** A handle to a serialization file header.
- **appName** – **[in]** The application name string to set.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Application name was successfully set.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_HANDLE: *fileHeaderHandle* is not a valid handle.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_ARGUMENT: *appName* is NULL.

Note

Use corresponding API through [QairtSystem\_Profile\_SerializationFileHeaderV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Profile__SerializationFileHeaderV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Profile\_SerializationFileHeader\_getAppVersion([QairtSystem\_Profile\_SerializationFileHeaderHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv451QairtSystem_Profile_SerializationFileHeaderHandle_t) fileHeaderHandle, const char \*\*appVersion)

    - Get the application version from a serialization file header.

- Parameters

    - - **fileHeaderHandle** – **[in]** A handle to a serialization file header.
- **appVersion** – **[out]** The application version string.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Application version was successfully retrieved.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_HANDLE: *fileHeaderHandle* is not a valid handle.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_ARGUMENT: *appVersion* is NULL.

Note

Use corresponding API through [QairtSystem\_Profile\_SerializationFileHeaderV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Profile__SerializationFileHeaderV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Profile\_SerializationFileHeader\_setAppVersion([QairtSystem\_Profile\_SerializationFileHeaderHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv451QairtSystem_Profile_SerializationFileHeaderHandle_t) fileHeaderHandle, const char \*appVersion)

    - Set the application version in a serialization file header.

- Parameters

    - - **fileHeaderHandle** – **[in]** A handle to a serialization file header.
- **appVersion** – **[in]** The application version string to set.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Application version was successfully set.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_HANDLE: *fileHeaderHandle* is not a valid handle.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_ARGUMENT: *appVersion* is NULL.

Note

Use corresponding API through [QairtSystem\_Profile\_SerializationFileHeaderV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Profile__SerializationFileHeaderV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Profile\_SerializationFileHeader\_getBackendVersion([QairtSystem\_Profile\_SerializationFileHeaderHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv451QairtSystem_Profile_SerializationFileHeaderHandle_t) fileHeaderHandle, const char \*\*backendVersion)

    - Get the backend version from a serialization file header.

- Parameters

    - - **fileHeaderHandle** – **[in]** A handle to a serialization file header.
- **backendVersion** – **[out]** The backend version string.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Backend version was successfully retrieved.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_HANDLE: *fileHeaderHandle* is not a valid handle.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_ARGUMENT: *backendVersion* is NULL.

Note

Use corresponding API through [QairtSystem\_Profile\_SerializationFileHeaderV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Profile__SerializationFileHeaderV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Profile\_SerializationFileHeader\_setBackendVersion([QairtSystem\_Profile\_SerializationFileHeaderHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv451QairtSystem_Profile_SerializationFileHeaderHandle_t) fileHeaderHandle, const char \*backendVersion)

    - Set the backend version in a serialization file header.

- Parameters

    - - **fileHeaderHandle** – **[in]** A handle to a serialization file header.
- **backendVersion** – **[in]** The backend version string to set.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Backend version was successfully set.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_HANDLE: *fileHeaderHandle* is not a valid handle.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_ARGUMENT: *backendVersion* is NULL.

Note

Use corresponding API through [QairtSystem\_Profile\_SerializationFileHeaderV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Profile__SerializationFileHeaderV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Profile\_SerializationTargetConfiguration\_create([QairtSystem\_Profile\_SerializationTargetConfigurationHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv460QairtSystem_Profile_SerializationTargetConfigurationHandle_t) \*configHandle)

    - Create a serialization target configuration object.

- Parameters

    - **configHandle** – **[out]** A handle to the created serialization target configuration.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Configuration was successfully created.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_ARGUMENT: *configHandle* is NULL.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_MEM\_ALLOC: Memory allocation failed.

Note

Use corresponding API through [QairtSystem\_Profile\_SerializationTargetConfigurationV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Profile__SerializationTargetConfigurationV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Profile\_SerializationTargetConfiguration\_free([QairtSystem\_Profile\_SerializationTargetConfigurationHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv460QairtSystem_Profile_SerializationTargetConfigurationHandle_t) configHandle)

    - Free a serialization target configuration and associated resources.

- Parameters

    - **configHandle** – **[in]** A handle to a created serialization target configuration.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Configuration was successfully freed.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_HANDLE: *configHandle* is not a valid handle.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_MEM\_ALLOC: Memory deallocation error.

Note

Use corresponding API through [QairtSystem\_Profile\_SerializationTargetConfigurationV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Profile__SerializationTargetConfigurationV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Profile\_SerializationTargetConfiguration\_setMaxNumMessages([QairtSystem\_Profile\_SerializationTargetConfigurationHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv460QairtSystem_Profile_SerializationTargetConfigurationHandle_t) configHandle, uint32\_t maxNumMessages)

    - Set the maximum number of messages in a serialization target configuration.

- Parameters

    - - **configHandle** – **[in]** A handle to a serialization target configuration.
- **maxNumMessages** – **[in]** The maximum number of messages to set.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Maximum number of messages was successfully set.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_HANDLE: *configHandle* is not a valid handle.

Note

Use corresponding API through [QairtSystem\_Profile\_SerializationTargetConfigurationV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Profile__SerializationTargetConfigurationV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Profile\_SerializationTargetConfiguration\_getMaxNumMessages([QairtSystem\_Profile\_SerializationTargetConfigurationHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv460QairtSystem_Profile_SerializationTargetConfigurationHandle_t) configHandle, uint32\_t \*maxNumMessages)

    - Get the maximum number of messages from a serialization target configuration.

- Parameters

    - - **configHandle** – **[in]** A handle to a serialization target configuration.
- **maxNumMessages** – **[out]** The maximum number of messages.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Maximum number of messages was successfully retrieved.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_HANDLE: *configHandle* is not a valid handle.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_ARGUMENT: *maxNumMessages* is NULL.

Note

Use corresponding API through [QairtSystem\_Profile\_SerializationTargetConfigurationV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Profile__SerializationTargetConfigurationV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Profile\_SerializationTargetConfiguration\_setFileHeader([QairtSystem\_Profile\_SerializationTargetConfigurationHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv460QairtSystem_Profile_SerializationTargetConfigurationHandle_t) configHandle, [QairtSystem\_Profile\_SerializationFileHeaderHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv451QairtSystem_Profile_SerializationFileHeaderHandle_t) fileHeaderHandle)

    - Set the file header in a serialization target configuration.

- Parameters

    - - **configHandle** – **[in]** A handle to a serialization target configuration.
- **fileHeaderHandle** – **[in]** A handle to the file header to associate with this configuration.

- Returns

    - Error code:

- QAIRT\_SUCCESS: File header was successfully set.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_HANDLE: *configHandle* or *fileHeaderHandle* is not a valid handle.

Note

Use corresponding API through [QairtSystem\_Profile\_SerializationTargetConfigurationV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Profile__SerializationTargetConfigurationV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Profile\_SerializationTargetConfiguration\_getFileHeader([QairtSystem\_Profile\_SerializationTargetConfigurationHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv460QairtSystem_Profile_SerializationTargetConfigurationHandle_t) configHandle, [QairtSystem\_Profile\_SerializationFileHeaderHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv451QairtSystem_Profile_SerializationFileHeaderHandle_t) \*fileHeaderHandle)

    - Get the file header from a serialization target configuration.

- Parameters

    - - **configHandle** – **[in]** A handle to a serialization target configuration.
- **fileHeaderHandle** – **[out]** A handle to the associated file header.

- Returns

    - Error code:

- QAIRT\_SUCCESS: File header was successfully retrieved.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_HANDLE: *configHandle* is not a valid handle.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_ARGUMENT: *fileHeaderHandle* is NULL.

Note

Use corresponding API through [QairtSystem\_Profile\_SerializationTargetConfigurationV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Profile__SerializationTargetConfigurationV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Profile\_SerializationTargetFile\_create([QairtSystem\_Profile\_SerializationTargetFileHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv451QairtSystem_Profile_SerializationTargetFileHandle_t) \*targetFileHandle)

    - Create a serialization target file object.

- Parameters

    - **targetFileHandle** – **[out]** A handle to the created serialization target file.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Target file was successfully created.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_ARGUMENT: *targetFileHandle* is NULL.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_MEM\_ALLOC: Memory allocation failed.

Note

Use corresponding API through [QairtSystem\_Profile\_SerializationTargetFileV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Profile__SerializationTargetFileV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Profile\_SerializationTargetFile\_free([QairtSystem\_Profile\_SerializationTargetFileHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv451QairtSystem_Profile_SerializationTargetFileHandle_t) targetFileHandle)

    - Free a serialization target file and associated resources.

- Parameters

    - **targetFileHandle** – **[in]** A handle to a created serialization target file.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Target file was successfully freed.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_HANDLE: *targetFileHandle* is not a valid handle.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_MEM\_ALLOC: Memory deallocation error.

Note

Use corresponding API through [QairtSystem\_Profile\_SerializationTargetFileV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Profile__SerializationTargetFileV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Profile\_SerializationTargetFile\_setFileName([QairtSystem\_Profile\_SerializationTargetFileHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv451QairtSystem_Profile_SerializationTargetFileHandle_t) targetFileHandle, const char \*fileName)

    - Set the file name in a serialization target file.

- Parameters

    - - **targetFileHandle** – **[in]** A handle to a serialization target file.
- **fileName** – **[in]** The file name string to set.

- Returns

    - Error code:

- QAIRT\_SUCCESS: File name was successfully set.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_HANDLE: *targetFileHandle* is not a valid handle.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_ARGUMENT: *fileName* is NULL.

Note

Use corresponding API through [QairtSystem\_Profile\_SerializationTargetFileV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Profile__SerializationTargetFileV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Profile\_SerializationTargetFile\_getFileName([QairtSystem\_Profile\_SerializationTargetFileHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv451QairtSystem_Profile_SerializationTargetFileHandle_t) targetFileHandle, const char \*\*fileName)

    - Get the file name from a serialization target file.

- Parameters

    - - **targetFileHandle** – **[in]** A handle to a serialization target file.
- **fileName** – **[out]** The file name string.

- Returns

    - Error code:

- QAIRT\_SUCCESS: File name was successfully retrieved.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_HANDLE: *targetFileHandle* is not a valid handle.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_ARGUMENT: *fileName* is NULL.

Note

Use corresponding API through [QairtSystem\_Profile\_SerializationTargetFileV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Profile__SerializationTargetFileV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Profile\_SerializationTargetFile\_setFileDirectory([QairtSystem\_Profile\_SerializationTargetFileHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv451QairtSystem_Profile_SerializationTargetFileHandle_t) targetFileHandle, const char \*fileDirectory)

    - Set the file directory in a serialization target file.

- Parameters

    - - **targetFileHandle** – **[in]** A handle to a serialization target file.
- **fileDirectory** – **[in]** The file directory string to set.

- Returns

    - Error code:

- QAIRT\_SUCCESS: File directory was successfully set.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_HANDLE: *targetFileHandle* is not a valid handle.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_ARGUMENT: *fileDirectory* is NULL.

Note

Use corresponding API through [QairtSystem\_Profile\_SerializationTargetFileV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Profile__SerializationTargetFileV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Profile\_SerializationTargetFile\_getFileDirectory([QairtSystem\_Profile\_SerializationTargetFileHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv451QairtSystem_Profile_SerializationTargetFileHandle_t) targetFileHandle, const char \*\*fileDirectory)

    - Get the file directory from a serialization target file.

- Parameters

    - - **targetFileHandle** – **[in]** A handle to a serialization target file.
- **fileDirectory** – **[out]** The file directory string.

- Returns

    - Error code:

- QAIRT\_SUCCESS: File directory was successfully retrieved.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_HANDLE: *targetFileHandle* is not a valid handle.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_ARGUMENT: *fileDirectory* is NULL.

Note

Use corresponding API through [QairtSystem\_Profile\_SerializationTargetFileV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Profile__SerializationTargetFileV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Profile\_SerializationTargetInfo\_create([QairtSystem\_Profile\_SerializationTargetInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv451QairtSystem_Profile_SerializationTargetInfoHandle_t) \*targetInfoHandle)

    - Create a serialization target info object.

- Parameters

    - **targetInfoHandle** – **[out]** A handle to the created serialization target info.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Target info was successfully created.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_ARGUMENT: *targetInfoHandle* is NULL.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_MEM\_ALLOC: Memory allocation failed.

Note

Use corresponding API through [QairtSystem\_Profile\_SerializationTargetInfoV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Profile__SerializationTargetInfoV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Profile\_SerializationTargetInfo\_free([QairtSystem\_Profile\_SerializationTargetInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv451QairtSystem_Profile_SerializationTargetInfoHandle_t) targetInfoHandle)

    - Free a serialization target info and associated resources.

- Parameters

    - **targetInfoHandle** – **[in]** A handle to a created serialization target info.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Target info was successfully freed.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_HANDLE: *targetInfoHandle* is not a valid handle.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_MEM\_ALLOC: Memory deallocation error.

Note

Use corresponding API through [QairtSystem\_Profile\_SerializationTargetInfoV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Profile__SerializationTargetInfoV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Profile\_SerializationTargetInfo\_getType([QairtSystem\_Profile\_SerializationTargetInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv451QairtSystem_Profile_SerializationTargetInfoHandle_t) targetInfoHandle, [QairtSystem\_Profile\_SerializationTargetType\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv445QairtSystem_Profile_SerializationTargetType_t) \*type)

    - Get the type from a serialization target info.

- Parameters

    - - **targetInfoHandle** – **[in]** A handle to a serialization target info.
- **type** – **[out]** The serialization target type.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Type was successfully retrieved.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_HANDLE: *targetInfoHandle* is not a valid handle.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_ARGUMENT: *type* is NULL.

Note

Use corresponding API through [QairtSystem\_Profile\_SerializationTargetInfoV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Profile__SerializationTargetInfoV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Profile\_SerializationTargetInfo\_setTargetFile([QairtSystem\_Profile\_SerializationTargetInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv451QairtSystem_Profile_SerializationTargetInfoHandle_t) targetInfoHandle, [QairtSystem\_Profile\_SerializationTargetFileHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv451QairtSystem_Profile_SerializationTargetFileHandle_t) targetFileHandle)

    - Set the target file in a serialization target info.

- Parameters

    - - **targetInfoHandle** – **[in]** A handle to a serialization target info.
- **targetFileHandle** – **[in]** A handle to the target file to associate with this target info.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Target file was successfully set.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_HANDLE: *targetInfoHandle* or *targetFileHandle* is not a valid handle.

Note

Use corresponding API through [QairtSystem\_Profile\_SerializationTargetInfoV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Profile__SerializationTargetInfoV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Profile\_SerializationTargetInfo\_getTargetFile([QairtSystem\_Profile\_SerializationTargetInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv451QairtSystem_Profile_SerializationTargetInfoHandle_t) targetInfoHandle, [QairtSystem\_Profile\_SerializationTargetFileHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv451QairtSystem_Profile_SerializationTargetFileHandle_t) \*targetFileHandle)

    - Get the target file from a serialization target info.

- Parameters

    - - **targetInfoHandle** – **[in]** A handle to a serialization target info.
- **targetFileHandle** – **[out]** A handle to the associated target file.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Target file was successfully retrieved.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_HANDLE: *targetInfoHandle* is not a valid handle.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_ARGUMENT: *targetFileHandle* is NULL.

Note

Use corresponding API through [QairtSystem\_Profile\_SerializationTargetInfoV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Profile__SerializationTargetInfoV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Profile\_SerializationTarget\_create([QairtSystem\_Profile\_SerializationTargetInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv451QairtSystem_Profile_SerializationTargetInfoHandle_t) targetInfoHandle, [QairtSystem\_Profile\_SerializationTargetConfigurationHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv460QairtSystem_Profile_SerializationTargetConfigurationHandle_t) configHandle, [QairtSystem\_Profile\_SerializationTargetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv447QairtSystem_Profile_SerializationTargetHandle_t) \*serializationTargetHandle)

    - Create a serialization target object.

- Parameters

    - - **targetInfoHandle** – **[in]** A handle to the serialization target info.
- **configHandle** – **[in]** A handle to the serialization target configuration.
- **serializationTargetHandle** – **[out]** A handle to the created serialization target.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Serialization target was successfully created.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_HANDLE: *targetInfoHandle* or *configHandle* is not a valid handle.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_ARGUMENT: *serializationTargetHandle* is NULL.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_MEM\_ALLOC: Memory allocation failed.

Note

Use corresponding API through [QairtSystem\_Profile\_SerializationTargetV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Profile__SerializationTargetV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Profile\_SerializationTarget\_free([QairtSystem\_Profile\_SerializationTargetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv447QairtSystem_Profile_SerializationTargetHandle_t) serializationTargetHandle)

    - Free a serialization target and associated resources.

- Parameters

    - **serializationTargetHandle** – **[in]** A handle to a created serialization target.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Serialization target was successfully freed.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_HANDLE: *serializationTargetHandle* is not a valid handle.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_MEM\_ALLOC: Memory deallocation error.

Note

Use corresponding API through [QairtSystem\_Profile\_SerializationTargetV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Profile__SerializationTargetV1__t).

- [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) QairtSystem\_Profile\_SerializationTarget\_serializeEventData([QairtSystem\_Profile\_SerializationTargetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv447QairtSystem_Profile_SerializationTargetHandle_t) serializationTargetHandle, [QairtSystem\_Profile\_DataHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv432QairtSystem_Profile_DataHandle_t) \*eventData, uint32\_t numEvents)

    - Serialize event data to the serialization target.

- Parameters

    - - **serializationTargetHandle** – **[in]** A handle to a serialization target.
- **eventData** – **[in]** An array of data handles containing events to serialize.
- **numEvents** – **[in]** The number of data handles in the array.

- Returns

    - Error code:

- QAIRT\_SUCCESS: Event data was successfully serialized.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_HANDLE: *serializationTargetHandle* is not a valid handle.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_ARGUMENT: *eventData* is NULL or *numEvents* is invalid.
- QAIRT\_SYSTEM\_PROFILE\_ERROR\_SERIALIZATION\_FAILED: Serialization operation failed.

Note

Use corresponding API through [QairtSystem\_Profile\_SerializationTargetV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#structQairtSystem__Profile__SerializationTargetV1__t).

Enums

- enum QairtSystemProfile\_Error\_t

    - QAIRT System Profile API result / error codes.

*Values:*

- enumerator QAIRT\_SYSTEM\_PROFILE\_MINERROR = QAIRT\_SYSTEM\_PROFILE\_MIN\_ERROR

    - 

- enumerator QAIRT\_SYSTEM\_PROFILE\_NO\_ERROR = [QAIRT\_SYSTEM\_COMMON\_NO\_ERROR](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv4N25QairtSystemCommon_Error_t28QAIRT_SYSTEM_COMMON_NO_ERRORE)

    - QAIRT System Profile success.

- enumerator QAIRT\_SYSTEM\_PROFILE\_ERROR\_UNSUPPORTED\_FEATURE = [QAIRT\_SYSTEM\_COMMON\_ERROR\_UNSUPPORTED\_FEATURE](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv4N25QairtSystemCommon_Error_t45QAIRT_SYSTEM_COMMON_ERROR_UNSUPPORTED_FEATUREE)

    - QAIRT System Profile API is not supported yet.

- enumerator QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_HANDLE = [QAIRT\_SYSTEM\_COMMON\_ERROR\_INVALID\_HANDLE](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv4N25QairtSystemCommon_Error_t40QAIRT_SYSTEM_COMMON_ERROR_INVALID_HANDLEE)

    - QAIRT System Profile invalid handle.

- enumerator QAIRT\_SYSTEM\_PROFILE\_ERROR\_INVALID\_ARGUMENT = [QAIRT\_SYSTEM\_COMMON\_ERROR\_INVALID\_ARGUMENT](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv4N25QairtSystemCommon_Error_t42QAIRT_SYSTEM_COMMON_ERROR_INVALID_ARGUMENTE)

    - One or more arguments to a System Profile API is/are NULL/invalid.

- enumerator QAIRT\_SYSTEM\_PROFILE\_ERROR\_MEM\_ALLOC = 31000

    - QAIRT System Profile writer could not allocate memory properly.

- enumerator QAIRT\_SYSTEM\_PROFILE\_ERROR\_SERIALIZATION\_FAILED = 31001

    - QAIRT System Profile serialization failed.

- enumerator QAIRT\_SYSTEM\_PROFILE\_MAXERROR = QAIRT\_SYSTEM\_PROFILE\_MAX\_ERROR

    -

- enum QairtSystem\_Profile\_Visibility\_t

    - Visibility type for system profile events.

*Values:*

- enumerator QAIRT\_SYSTEM\_PROFILE\_VISIBILITY\_PUBLIC = 0

    - Public visibility - event is visible to all consumers.

- enumerator QAIRT\_SYSTEM\_PROFILE\_VISIBILITY\_PRIVATE = 1

    - Private visibility - event is internal/private.

- enumerator QAIRT\_SYSTEM\_PROFILE\_VISIBILITY\_UNDEFINED = 0x7FFFFFFF

    - Unused, present to ensure 32 bits.

- enum QairtSystem\_Profile\_MethodType\_t

    - Method type for system profile events indicating the operation being profiled.

*Values:*

- enumerator QAIRT\_SYSTEM\_PROFILE\_METHOD\_TYPE\_NONE = 0

    - No specific method type.

- enumerator QAIRT\_SYSTEM\_PROFILE\_METHOD\_TYPE\_BACKEND\_EXECUTE = 1

    - Backend execute operation.

- enumerator QAIRT\_SYSTEM\_PROFILE\_METHOD\_TYPE\_BACKEND\_FINALIZE = 2

    - Backend finalize operation.

- enumerator QAIRT\_SYSTEM\_PROFILE\_METHOD\_TYPE\_BACKEND\_EXECUTE\_ASYNC = 3

    - Backend asynchronous execute operation.

- enumerator QAIRT\_SYSTEM\_PROFILE\_METHOD\_TYPE\_BACKEND\_CREATE\_FROM\_BINARY = 4

    - Backend create from binary operation.

- enumerator QAIRT\_SYSTEM\_PROFILE\_METHOD\_TYPE\_BACKEND\_DEINIT = 5

    - Backend deinitialization operation.

- enumerator QAIRT\_SYSTEM\_PROFILE\_METHOD\_TYPE\_APP\_CONTEXT\_CREATE = 6

    - Application context creation operation.

- enumerator QAIRT\_SYSTEM\_PROFILE\_METHOD\_TYPE\_APP\_COMPOSE\_GRAPHS = 7

    - Application compose graphs operation.

- enumerator QAIRT\_SYSTEM\_PROFILE\_METHOD\_TYPE\_APP\_EXECUTE\_IPS = 8

    - Application execute IPS operation.

- enumerator QAIRT\_SYSTEM\_PROFILE\_METHOD\_TYPE\_BACKEND\_GRAPH\_COMPONENT = 9

    - Backend graph component operation.

- enumerator QAIRT\_SYSTEM\_PROFILE\_METHOD\_TYPE\_APP\_BACKEND\_LIB\_LOAD = 10

    - Application backend library load operation.

- enumerator QAIRT\_SYSTEM\_PROFILE\_METHOD\_TYPE\_BACKEND\_APPLY\_BINARY\_SECTION = 11

    - Backend apply binary section operation.

- enumerator QAIRT\_SYSTEM\_PROFILE\_METHOD\_TYPE\_CONTEXT\_FINALIZE = 12

    - Context finalize operation.

- enumerator QAIRT\_SYSTEM\_PROFILE\_METHOD\_TYPE\_CONTEXT\_GET\_BINARY\_SIZE = 13

    - Context get binary size operation.

- enumerator QAIRT\_SYSTEM\_PROFILE\_METHOD\_TYPE\_CONTEXT\_GET\_BINARY = 14

    - Context get binary operation.

- enumerator QAIRT\_SYSTEM\_PROFILE\_METHOD\_TYPE\_CONTEXT\_GET\_BINARY\_SECTION\_SIZE = 15

    - Context get binary section size operation.

- enumerator QAIRT\_SYSTEM\_PROFILE\_METHOD\_TYPE\_BACKEND\_FINALIZE\_TENSOR\_UPDATES = 16

    - Backend finalize operation performed after tensor updates.

- enumerator QAIRT\_SYSTEM\_PROFILE\_METHOD\_TYPE\_BACKEND\_UPDATE\_BINARY\_SECTION = 17

    - Backend update binary section operation.

- enumerator QAIRT\_SYSTEM\_PROFILE\_METHOD\_TYPE\_UNDEFINED = 0x7FFFFFFF

    - Unused, present to ensure 32 bits.

- enum QairtSystem\_Profile\_EventDataType\_t

    - Event data type indicating the format of event data.

*Values:*

- enumerator QAIRT\_SYSTEM\_PROFILE\_EVENT\_DATA = 0

    - Standard event data.

- enumerator QAIRT\_SYSTEM\_PROFILE\_EXTENDED\_EVENT\_DATA = 1

    - Extended event data with additional fields.

- enumerator QAIRT\_SYSTEM\_PROFILE\_EVENT\_DATA\_UNDEFINED = 0x7FFFFFFF

    - Unused, present to ensure 32 bits.

- enum QairtSystem\_Profile\_DataVersion\_t

    - Profile data version type.

*Values:*

- enumerator QAIRT\_SYSTEM\_PROFILE\_DATA\_VERSION\_1 = 1

    - Type containing profile data V1.

- enumerator QAIRT\_SYSTEM\_PROFILE\_DATA\_VERSION\_UNDEFINED = 0x7FFFFFFF

    - Unused, present to ensure 32 bits.

- enum QairtSystem\_Profile\_SerializationTargetType\_t

    - Serialization target type indicating where profile data is written.

*Values:*

- enumerator QAIRT\_SYSTEM\_PROFILE\_SERIALIZATION\_TARGET\_TYPE\_FILE = 0

    - Serialize to a file.

- enumerator QAIRT\_SYSTEM\_PROFILE\_SERIALIZATION\_TARGET\_TYPE\_UNDEFINED = 0x7FFFFFFF

    - Unused, present to ensure 32 bits.

Typedefs

- typedef struct \_QairtSystem\_Profile\_SerializationTargetHandle\_t \*QairtSystem\_Profile\_SerializationTargetHandle\_t

    - Handle to a System Profile Serialization Target object.

- typedef struct \_QairtSystem\_Profile\_HeaderHandle\_t \*QairtSystem\_Profile\_HeaderHandle\_t

    - Handle to a System Profile Header object.

- typedef struct \_QairtSystem\_Profile\_EventHandle\_t \*QairtSystem\_Profile\_EventHandle\_t

    - Handle to a System Profile Event object.

- typedef struct \_QairtSystem\_Profile\_ProfileDataHandle\_t \*QairtSystem\_Profile\_ProfileDataHandle\_t

    - Handle to a System Profile Profile Data object.

- typedef struct \_QairtSystem\_Profile\_DataHandle\_t \*QairtSystem\_Profile\_DataHandle\_t

    - Handle to a System Profile Data object.

- typedef struct \_QairtSystem\_Profile\_SerializationFileHeaderHandle\_t \*QairtSystem\_Profile\_SerializationFileHeaderHandle\_t

    - Handle to a System Profile Serialization File Header object.

- typedef struct \_QairtSystem\_Profile\_SerializationTargetConfigurationHandle\_t \*QairtSystem\_Profile\_SerializationTargetConfigurationHandle\_t

    - Handle to a System Profile Serialization Target Configuration object.

- typedef struct \_QairtSystem\_Profile\_SerializationTargetFileHandle\_t \*QairtSystem\_Profile\_SerializationTargetFileHandle\_t

    - Handle to a System Profile Serialization Target File object.

- typedef struct \_QairtSystem\_Profile\_SerializationTargetInfoHandle\_t \*QairtSystem\_Profile\_SerializationTargetInfoHandle\_t

    - Handle to a System Profile Serialization Target Info object.

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Profile\_Header\_CreateFn\_t)([QairtSystem\_Profile\_HeaderHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv434QairtSystem_Profile_HeaderHandle_t)\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Profile\_Header\_FreeFn\_t)([QairtSystem\_Profile\_HeaderHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv434QairtSystem_Profile_HeaderHandle_t))

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Profile\_Header\_GetStartTimeFn\_t)([QairtSystem\_Profile\_HeaderHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv434QairtSystem_Profile_HeaderHandle_t), uint64\_t\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Profile\_Header\_SetStartTimeFn\_t)([QairtSystem\_Profile\_HeaderHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv434QairtSystem_Profile_HeaderHandle_t), uint64\_t)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Profile\_Header\_GetStopTimeFn\_t)([QairtSystem\_Profile\_HeaderHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv434QairtSystem_Profile_HeaderHandle_t), uint64\_t\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Profile\_Header\_SetStopTimeFn\_t)([QairtSystem\_Profile\_HeaderHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv434QairtSystem_Profile_HeaderHandle_t), uint64\_t)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Profile\_Header\_GetStartMemFn\_t)([QairtSystem\_Profile\_HeaderHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv434QairtSystem_Profile_HeaderHandle_t), uint64\_t\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Profile\_Header\_SetStartMemFn\_t)([QairtSystem\_Profile\_HeaderHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv434QairtSystem_Profile_HeaderHandle_t), uint64\_t)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Profile\_Header\_GetStopMemFn\_t)([QairtSystem\_Profile\_HeaderHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv434QairtSystem_Profile_HeaderHandle_t), uint64\_t\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Profile\_Header\_SetStopMemFn\_t)([QairtSystem\_Profile\_HeaderHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv434QairtSystem_Profile_HeaderHandle_t), uint64\_t)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Profile\_Header\_GetMethodTypeFn\_t)([QairtSystem\_Profile\_HeaderHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv434QairtSystem_Profile_HeaderHandle_t), [QairtSystem\_Profile\_MethodType\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv432QairtSystem_Profile_MethodType_t)\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Profile\_Header\_SetMethodTypeFn\_t)([QairtSystem\_Profile\_HeaderHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv434QairtSystem_Profile_HeaderHandle_t), [QairtSystem\_Profile\_MethodType\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv432QairtSystem_Profile_MethodType_t))

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Profile\_Header\_GetVisibilityFn\_t)([QairtSystem\_Profile\_HeaderHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv434QairtSystem_Profile_HeaderHandle_t), [QairtSystem\_Profile\_Visibility\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv432QairtSystem_Profile_Visibility_t)\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Profile\_Header\_SetVisibilityFn\_t)([QairtSystem\_Profile\_HeaderHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv434QairtSystem_Profile_HeaderHandle_t), [QairtSystem\_Profile\_Visibility\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv432QairtSystem_Profile_Visibility_t))

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Profile\_Header\_GetGraphNameFn\_t)([QairtSystem\_Profile\_HeaderHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv434QairtSystem_Profile_HeaderHandle_t), const char\*\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Profile\_Header\_SetGraphNameFn\_t)([QairtSystem\_Profile\_HeaderHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv434QairtSystem_Profile_HeaderHandle_t), const char\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Profile\_Event\_CreateFn\_t)([QairtSystem\_Profile\_EventHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv433QairtSystem_Profile_EventHandle_t)\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Profile\_Event\_FreeFn\_t)([QairtSystem\_Profile\_EventHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv433QairtSystem_Profile_EventHandle_t))

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Profile\_Event\_GetEventDataTypeFn\_t)([QairtSystem\_Profile\_EventHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv433QairtSystem_Profile_EventHandle_t), [QairtSystem\_Profile\_EventDataType\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv435QairtSystem_Profile_EventDataType_t)\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Profile\_Event\_SetEventDataFn\_t)([QairtSystem\_Profile\_EventHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv433QairtSystem_Profile_EventHandle_t), [QairtProfile\_EventHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtProfile.html#_CPPv426QairtProfile_EventHandle_t))

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Profile\_Event\_GetEventDataFn\_t)([QairtSystem\_Profile\_EventHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv433QairtSystem_Profile_EventHandle_t), [QairtProfile\_EventHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtProfile.html#_CPPv426QairtProfile_EventHandle_t)\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Profile\_Event\_GetNumSubEventsFn\_t)([QairtSystem\_Profile\_EventHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv433QairtSystem_Profile_EventHandle_t), uint32\_t\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Profile\_Event\_GetSubEventAtFn\_t)([QairtSystem\_Profile\_EventHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv433QairtSystem_Profile_EventHandle_t), uint32\_t, [QairtSystem\_Profile\_EventHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv433QairtSystem_Profile_EventHandle_t)\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Profile\_Event\_SetSubEventDataFn\_t)([QairtSystem\_Profile\_EventHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv433QairtSystem_Profile_EventHandle_t), [QairtSystem\_Profile\_EventHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv433QairtSystem_Profile_EventHandle_t)\*, uint32\_t)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Profile\_Event\_AddSubEventFn\_t)([QairtSystem\_Profile\_EventHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv433QairtSystem_Profile_EventHandle_t), [QairtSystem\_Profile\_EventHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv433QairtSystem_Profile_EventHandle_t))

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Profile\_ProfileData\_CreateFn\_t)([QairtSystem\_Profile\_ProfileDataHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv439QairtSystem_Profile_ProfileDataHandle_t)\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Profile\_ProfileData\_FreeFn\_t)([QairtSystem\_Profile\_ProfileDataHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv439QairtSystem_Profile_ProfileDataHandle_t))

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Profile\_ProfileData\_SetHeaderFn\_t)([QairtSystem\_Profile\_ProfileDataHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv439QairtSystem_Profile_ProfileDataHandle_t), [QairtSystem\_Profile\_HeaderHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv434QairtSystem_Profile_HeaderHandle_t))

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Profile\_ProfileData\_GetHeaderFn\_t)([QairtSystem\_Profile\_ProfileDataHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv439QairtSystem_Profile_ProfileDataHandle_t), [QairtSystem\_Profile\_HeaderHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv434QairtSystem_Profile_HeaderHandle_t)\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Profile\_ProfileData\_GetNumProfilingEventsFn\_t)([QairtSystem\_Profile\_ProfileDataHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv439QairtSystem_Profile_ProfileDataHandle_t), uint32\_t\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Profile\_ProfileData\_GetEventAtFn\_t)([QairtSystem\_Profile\_ProfileDataHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv439QairtSystem_Profile_ProfileDataHandle_t), uint32\_t, [QairtSystem\_Profile\_EventHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv433QairtSystem_Profile_EventHandle_t)\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Profile\_ProfileData\_SetEventsFn\_t)([QairtSystem\_Profile\_ProfileDataHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv439QairtSystem_Profile_ProfileDataHandle_t), [QairtSystem\_Profile\_EventHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv433QairtSystem_Profile_EventHandle_t)\*, uint32\_t)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Profile\_ProfileData\_AddEventFn\_t)([QairtSystem\_Profile\_ProfileDataHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv439QairtSystem_Profile_ProfileDataHandle_t), [QairtSystem\_Profile\_EventHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv433QairtSystem_Profile_EventHandle_t))

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Profile\_Data\_CreateFn\_t)([QairtSystem\_Profile\_DataHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv432QairtSystem_Profile_DataHandle_t)\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Profile\_Data\_FreeFn\_t)([QairtSystem\_Profile\_DataHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv432QairtSystem_Profile_DataHandle_t))

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Profile\_Data\_GetVersionFn\_t)([QairtSystem\_Profile\_DataHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv432QairtSystem_Profile_DataHandle_t), [QairtSystem\_Profile\_DataVersion\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv433QairtSystem_Profile_DataVersion_t)\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Profile\_Data\_SetProfileDataV1Fn\_t)([QairtSystem\_Profile\_DataHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv432QairtSystem_Profile_DataHandle_t), [QairtSystem\_Profile\_ProfileDataHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv439QairtSystem_Profile_ProfileDataHandle_t))

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Profile\_Data\_GetProfileDataV1Fn\_t)([QairtSystem\_Profile\_DataHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv432QairtSystem_Profile_DataHandle_t), [QairtSystem\_Profile\_ProfileDataHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv439QairtSystem_Profile_ProfileDataHandle_t)\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Profile\_SerializationFileHeader\_CreateFn\_t)([QairtSystem\_Profile\_SerializationFileHeaderHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv451QairtSystem_Profile_SerializationFileHeaderHandle_t)\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Profile\_SerializationFileHeader\_FreeFn\_t)([QairtSystem\_Profile\_SerializationFileHeaderHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv451QairtSystem_Profile_SerializationFileHeaderHandle_t))

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Profile\_SerializationFileHeader\_GetAppNameFn\_t)([QairtSystem\_Profile\_SerializationFileHeaderHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv451QairtSystem_Profile_SerializationFileHeaderHandle_t), const char\*\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Profile\_SerializationFileHeader\_SetAppNameFn\_t)([QairtSystem\_Profile\_SerializationFileHeaderHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv451QairtSystem_Profile_SerializationFileHeaderHandle_t), const char\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Profile\_SerializationFileHeader\_GetAppVersionFn\_t)([QairtSystem\_Profile\_SerializationFileHeaderHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv451QairtSystem_Profile_SerializationFileHeaderHandle_t), const char\*\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Profile\_SerializationFileHeader\_SetAppVersionFn\_t)([QairtSystem\_Profile\_SerializationFileHeaderHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv451QairtSystem_Profile_SerializationFileHeaderHandle_t), const char\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Profile\_SerializationFileHeader\_GetBackendVersionFn\_t)([QairtSystem\_Profile\_SerializationFileHeaderHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv451QairtSystem_Profile_SerializationFileHeaderHandle_t), const char\*\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Profile\_SerializationFileHeader\_SetBackendVersionFn\_t)([QairtSystem\_Profile\_SerializationFileHeaderHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv451QairtSystem_Profile_SerializationFileHeaderHandle_t), const char\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Profile\_SerializationTargetConfiguration\_CreateFn\_t)([QairtSystem\_Profile\_SerializationTargetConfigurationHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv460QairtSystem_Profile_SerializationTargetConfigurationHandle_t)\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Profile\_SerializationTargetConfiguration\_FreeFn\_t)([QairtSystem\_Profile\_SerializationTargetConfigurationHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv460QairtSystem_Profile_SerializationTargetConfigurationHandle_t))

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Profile\_SerializationTargetConfiguration\_SetMaxNumMessagesFn\_t)([QairtSystem\_Profile\_SerializationTargetConfigurationHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv460QairtSystem_Profile_SerializationTargetConfigurationHandle_t), uint32\_t)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Profile\_SerializationTargetConfiguration\_GetMaxNumMessagesFn\_t)([QairtSystem\_Profile\_SerializationTargetConfigurationHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv460QairtSystem_Profile_SerializationTargetConfigurationHandle_t), uint32\_t\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Profile\_SerializationTargetConfiguration\_SetFileHeaderFn\_t)([QairtSystem\_Profile\_SerializationTargetConfigurationHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv460QairtSystem_Profile_SerializationTargetConfigurationHandle_t), [QairtSystem\_Profile\_SerializationFileHeaderHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv451QairtSystem_Profile_SerializationFileHeaderHandle_t))

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Profile\_SerializationTargetConfiguration\_GetFileHeaderFn\_t)([QairtSystem\_Profile\_SerializationTargetConfigurationHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv460QairtSystem_Profile_SerializationTargetConfigurationHandle_t), [QairtSystem\_Profile\_SerializationFileHeaderHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv451QairtSystem_Profile_SerializationFileHeaderHandle_t)\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Profile\_SerializationTargetFile\_CreateFn\_t)([QairtSystem\_Profile\_SerializationTargetFileHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv451QairtSystem_Profile_SerializationTargetFileHandle_t)\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Profile\_SerializationTargetFile\_FreeFn\_t)([QairtSystem\_Profile\_SerializationTargetFileHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv451QairtSystem_Profile_SerializationTargetFileHandle_t))

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Profile\_SerializationTargetFile\_SetFileNameFn\_t)([QairtSystem\_Profile\_SerializationTargetFileHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv451QairtSystem_Profile_SerializationTargetFileHandle_t), const char\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Profile\_SerializationTargetFile\_GetFileNameFn\_t)([QairtSystem\_Profile\_SerializationTargetFileHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv451QairtSystem_Profile_SerializationTargetFileHandle_t), const char\*\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Profile\_SerializationTargetFile\_SetFileDirectoryFn\_t)([QairtSystem\_Profile\_SerializationTargetFileHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv451QairtSystem_Profile_SerializationTargetFileHandle_t), const char\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Profile\_SerializationTargetFile\_GetFileDirectoryFn\_t)([QairtSystem\_Profile\_SerializationTargetFileHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv451QairtSystem_Profile_SerializationTargetFileHandle_t), const char\*\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Profile\_SerializationTargetInfo\_CreateFn\_t)([QairtSystem\_Profile\_SerializationTargetInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv451QairtSystem_Profile_SerializationTargetInfoHandle_t)\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Profile\_SerializationTargetInfo\_FreeFn\_t)([QairtSystem\_Profile\_SerializationTargetInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv451QairtSystem_Profile_SerializationTargetInfoHandle_t))

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Profile\_SerializationTargetInfo\_GetTypeFn\_t)([QairtSystem\_Profile\_SerializationTargetInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv451QairtSystem_Profile_SerializationTargetInfoHandle_t), [QairtSystem\_Profile\_SerializationTargetType\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv445QairtSystem_Profile_SerializationTargetType_t)\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Profile\_SerializationTargetInfo\_SetTargetFileFn\_t)([QairtSystem\_Profile\_SerializationTargetInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv451QairtSystem_Profile_SerializationTargetInfoHandle_t), [QairtSystem\_Profile\_SerializationTargetFileHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv451QairtSystem_Profile_SerializationTargetFileHandle_t))

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Profile\_SerializationTargetInfo\_GetTargetFileFn\_t)([QairtSystem\_Profile\_SerializationTargetInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv451QairtSystem_Profile_SerializationTargetInfoHandle_t), [QairtSystem\_Profile\_SerializationTargetFileHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv451QairtSystem_Profile_SerializationTargetFileHandle_t)\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Profile\_SerializationTarget\_CreateFn\_t)([QairtSystem\_Profile\_SerializationTargetInfoHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv451QairtSystem_Profile_SerializationTargetInfoHandle_t), [QairtSystem\_Profile\_SerializationTargetConfigurationHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv460QairtSystem_Profile_SerializationTargetConfigurationHandle_t), [QairtSystem\_Profile\_SerializationTargetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv447QairtSystem_Profile_SerializationTargetHandle_t)\*)

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Profile\_SerializationTarget\_FreeFn\_t)([QairtSystem\_Profile\_SerializationTargetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv447QairtSystem_Profile_SerializationTargetHandle_t))

    - 

- typedef [Qairt\_Status\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtCommon.html#_CPPv414Qairt_Status_t) (\*QairtSystem\_Profile\_SerializationTarget\_SerializeEventDataFn\_t)([QairtSystem\_Profile\_SerializationTargetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv447QairtSystem_Profile_SerializationTargetHandle_t), [QairtSystem\_Profile\_DataHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv432QairtSystem_Profile_DataHandle_t)\*, uint32\_t)

    -

Defines

- QAIRT\_SYSTEM\_PROFILE\_SERIALIZATION\_TARGET\_V1\_ID QAIRT\_MIN\_ID\_SYSTEM\_PROFILE

    - ID for System Profile Serialization Target V1 interface.

- QAIRT\_SYSTEM\_PROFILE\_HEADER\_V1\_ID QAIRT\_MIN\_ID\_SYSTEM\_PROFILE + 1

    - ID for System Profile Header V1 interface.

- QAIRT\_SYSTEM\_PROFILE\_EVENT\_V1\_ID QAIRT\_MIN\_ID\_SYSTEM\_PROFILE + 2

    - ID for System Profile Event V1 interface.

- QAIRT\_SYSTEM\_PROFILE\_PROFILE\_DATA\_V1\_ID QAIRT\_MIN\_ID\_SYSTEM\_PROFILE + 3

    - ID for System Profile Profile Data V1 interface.

- QAIRT\_SYSTEM\_PROFILE\_DATA\_V1\_ID QAIRT\_MIN\_ID\_SYSTEM\_PROFILE + 4

    - ID for System Profile Data V1 interface.

- QAIRT\_SYSTEM\_PROFILE\_SERIALIZATION\_FILE\_HEADER\_V1\_ID QAIRT\_MIN\_ID\_SYSTEM\_PROFILE + 5

    - ID for System Profile Serialization File Header V1 interface.

- QAIRT\_SYSTEM\_PROFILE\_SERIALIZATION\_TARGET\_CONFIGURATION\_V1\_ID   QAIRT\_MIN\_ID\_SYSTEM\_PROFILE + 6

    - ID for System Profile Serialization Target Configuration V1 interface.

- QAIRT\_SYSTEM\_PROFILE\_SERIALIZATION\_TARGET\_FILE\_V1\_ID QAIRT\_MIN\_ID\_SYSTEM\_PROFILE + 7

    - ID for System Profile Serialization Target File V1 interface.

- QAIRT\_SYSTEM\_PROFILE\_SERIALIZATION\_TARGET\_INFO\_V1\_ID QAIRT\_MIN\_ID\_SYSTEM\_PROFILE + 8

    - ID for System Profile Serialization Target Info V1 interface.

Last Published: Jun 04, 2026

[Previous Topic
QairtInterface](https://docs.qualcomm.com/bundle/publicresource/80-63442-10/topics/QairtInterface.md) [Next Topic
QairtContext](https://docs.qualcomm.com/bundle/publicresource/80-63442-10/topics/QairtContext.md)