# QairtSystem (C++)

Note

Some methods in this module are not yet implemented in the current release
and will raise an exception if called. See the C API for full functionality.

**Include:** `#include "QairtCppApi/System/QairtSystemContext.hpp"`

C++ wrappers for the QAIRT System Context API.

A SystemContext must be created via SystemApi before calling getMetadata().
    Copy to clipboard

- namespace qairt

    - Enums

- enum class SystemContextQuantInfoType : std::underlying\_type\_t&lt;[Qairt\_QuantizationInfoType\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv428Qairt_QuantizationInfoType_t)&gt;

    - Quantization encoding type for a context tensor.

| Enumerator | Description |
| --- | --- |
| `ScaleOffset` | Per-tensor scale and offset encoding. |
| `AxisScaleOffset` | Per-axis (e.g., per-channel) scale and offset encoding. |
| `BwScaleOffset` | Per-tensor bit-width, scale, and offset encoding. |
| `BwAxisScaleOffset` | Per-axis bit-width, scale, and offset encoding. |
| `BwAxisScaleOffsetMapped` | Per-axis bit-width, scale, and offset with a value-mapping scheme. |
| `Undefined` | Encoding type is unknown or not set. |

*Values:*

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

    - 

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

    - 

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

    - 

- enumerator QAIRT\_QUANTIZATION\_INFO\_BW\_AXIS\_SCALE\_OFFSET = 0x03

    - 

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

    - 

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

    -

- enum class Qairt\_QuantizationInfoEncodingMapping : std::underlying\_type\_t&lt;[Qairt\_QuantizationInfoEncodingMapping\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv439Qairt_QuantizationInfoEncodingMapping_t)&gt;

    - Quantized value mapping scheme for bit-width axis scale-offset encodings.

| Enumerator | Description |
| --- | --- |
| `StandardSymmetric` | Standard symmetric two’s complement mapping. |
| `AsymmetricPlusOne` | Two’s complement mapping with a positive shift of one. |
| `LinearSymmetricExcludeZero` | Linear mapping symmetric about zero, excluding zero from the representable range. |
| `Undefined` | Mapping scheme is unknown or not set. |

*Values:*

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

    - 

- enumerator QAIRT\_QUANTIZATION\_INFO\_MAPPING\_ASYMMETRIC\_PLUS\_ONE = 0x01

    - 

- enumerator QAIRT\_QUANTIZATION\_INFO\_MAPPING\_LINEAR\_SYMMETRIC\_EXCLUDE\_ZERO = 0x02

    - 

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

    -

- class SystemContext : public [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::ApiType&lt;[SystemContext](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt13SystemContextE), [QairtSystem\_ContextV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv423QairtSystem_ContextV1_t), SystemApiTable&gt;

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

Handle for inspecting compiled context binaries.

Obtained via `SystemApi::make<SystemContext>()`.
    Copy to clipboard

Public Functions

- ~SystemContext() = default

    - 

- SystemContext() noexcept = default

    - 

- SystemContext(const [SystemContext](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt13SystemContext13SystemContextERK13SystemContext)&) = delete

    - 

- SystemContext([SystemContext](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt13SystemContext13SystemContextERR13SystemContext)&&) noexcept = default

    - 

- [SystemContext](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt13SystemContextE) &operator=(const [SystemContext](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt13SystemContextE)&) = delete

    - 

- [SystemContext](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt13SystemContextE) &operator=([SystemContext](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt13SystemContextE)&&) noexcept = default

    - 

- inline [SystemContextBinaryInfo](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt23SystemContextBinaryInfoE) getBinaryInfo(void \*binaryBuffer, uint64\_t binaryBufferSize)

    - 

- inline [SystemContextBinaryInfo](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt23SystemContextBinaryInfoE) getBinaryInfo([Buffer](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtBuffer.html#_CPPv4N5qairt6BufferE) &buffer)

    -

Private Functions

- inline explicit SystemContext(const std::shared\_ptr&lt;SystemApiTable&gt; &apiTable)

    -

Private Members

- friend SystemApi

    - 

- friend Api

    -

- class SystemContextAxisScaleOffset : public [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::ApiType&lt;[SystemContextAxisScaleOffset](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt28SystemContextAxisScaleOffsetE), [QairtSystem\_Context\_QuantizeParams\_AxisScaleOffsetV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv454QairtSystem_Context_QuantizeParams_AxisScaleOffsetV1_t), SystemApiTable&gt;

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

Per-axis (e.g., per-channel) scale and offset quantization parameters for a context tensor.

Obtained via SystemContextQuantizationInfo::getAxisScaleOffset().
    Copy to clipboard

Public Functions

- SystemContextAxisScaleOffset() noexcept = default

    - 

- SystemContextAxisScaleOffset(const [SystemContextAxisScaleOffset](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt28SystemContextAxisScaleOffset28SystemContextAxisScaleOffsetERK28SystemContextAxisScaleOffset)&) = delete

    - 

- SystemContextAxisScaleOffset([SystemContextAxisScaleOffset](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt28SystemContextAxisScaleOffset28SystemContextAxisScaleOffsetERR28SystemContextAxisScaleOffset)&&) noexcept = default

    - 

- [SystemContextAxisScaleOffset](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt28SystemContextAxisScaleOffsetE) &operator=(const [SystemContextAxisScaleOffset](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt28SystemContextAxisScaleOffsetE)&) = delete

    - 

- [SystemContextAxisScaleOffset](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt28SystemContextAxisScaleOffsetE) &operator=([SystemContextAxisScaleOffset](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt28SystemContextAxisScaleOffsetE)&&) noexcept = default

    - 

- inline int32\_t getAxis() const

    - See also

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

- inline std::vector&lt;[SystemContextScaleOffset](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt24SystemContextScaleOffsetE)&gt; &getScaleOffsets()

    - Get the collection of per-axis scale-offset pairs.

Returns a reference to the cached vector of [SystemContextScaleOffset](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#classqairt_1_1SystemContextScaleOffset) objects, one per axis element. The vector is populated on first access via a C API cross.

See also

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

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on invalid handle.

- Returns

    - Reference to the per-axis scale-offset vector.

- inline const std::vector&lt;[SystemContextScaleOffset](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt24SystemContextScaleOffsetE)&gt; &getScaleOffsets() const

    - See also

[SystemContextAxisScaleOffset::getScaleOffsets()](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#classqairt_1_1SystemContextAxisScaleOffset_1aa8116f92fcfb25e5676b9f43c1e02abc)

- template&lt;typename T, typename U, typename V&gt;  
inline ApiType(const [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt28SystemContextAxisScaleOffset7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE)&lt;[T](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt28SystemContextAxisScaleOffset7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE), [U](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt28SystemContextAxisScaleOffset7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE), [V](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt28SystemContextAxisScaleOffset7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE)&gt; &parent, [detail](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtTypeTraits.html#_CPPv4N5qairt6detailE)::non\_owning\_handle&lt;handle\_type&gt; noh)

    - 

- inline explicit ApiType(const std::shared\_ptr&lt;T\_Table&gt; &apiTable)

    - 

- inline ApiType(copy\_table\_tag\_t, const [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt28SystemContextAxisScaleOffset7ApiTypeE16copy_table_tag_tRK7ApiType) &other)

    - 

- ApiType() noexcept = default

    - 

- ApiType(const [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt28SystemContextAxisScaleOffset7ApiTypeERK7ApiType)&) = delete

    - 

- ApiType([ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt28SystemContextAxisScaleOffset7ApiTypeERR7ApiType)&&) noexcept = default

    - 

- [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt28SystemContextAxisScaleOffset7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE) &operator=(const [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt28SystemContextAxisScaleOffset7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE)&) = delete

    - 

- [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt28SystemContextAxisScaleOffset7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE) &operator=([ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt28SystemContextAxisScaleOffset7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE)&&) noexcept = default

    -

Private Functions

- inline void prepareToCross() const

    - 

- inline void updateAfterCross() const

    -

Private Members

- friend Api

    - 

- friend SystemApi

    - 

- [detail](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtTypeTraits.html#_CPPv4N5qairt6detailE)::crossable&lt;std::vector&lt;[detail](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtTypeTraits.html#_CPPv4N5qairt6detailE)::non\_owning&lt;[SystemContextScaleOffset](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt24SystemContextScaleOffsetE)&gt;&gt;, &interface\_type::getScaleOffsetAt, &interface\_type::getNumScaleOffsets&gt; m\_scaleOffsets

    - Per-axis collection of scale-offset pairs, lazy-loaded after a C API cross.

- class SystemContextBinaryInfo : public [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::ApiType&lt;[SystemContextBinaryInfo](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt23SystemContextBinaryInfoE), [QairtSystem\_Context\_BinaryInfoV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv434QairtSystem_Context_BinaryInfoV1_t), SystemApiTable&gt;

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

Metadata extracted from a serialized context binary (e.g., a compiled DLC).

Obtained via SystemContext::getMetadata(). Provides version information,
       build identifiers, SoC versions, and the graph metadata contained in the
       binary.
    Copy to clipboard

Public Functions

- inline uint32\_t getBackendId()

    - Get the numeric backend identifier recorded in the binary.

See also

[QairtSystem\_Context\_BinaryInfo\_getBackendId](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemContext_8h_1af73d7be28d08934c82fdf00e446668d3)

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on invalid handle.

- Returns

    - [Backend](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtBackend.html#classqairt_1_1Backend) ID as an unsigned integer. Corresponds to a backend-specific constant (e.g. the HTP backend ID).

- inline const std::string &getBuildId() const

    - Get the build identifier string recorded in the binary.

See also

[QairtSystem\_Context\_BinaryInfo\_getBuildId](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemContext_8h_1ade6b86434e5e53ce7dcae1d0f368905c)

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on invalid handle.

- Returns

    - Const reference to the build ID string.

- inline const [Version](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtInfo.html#_CPPv4N5qairt7VersionE) getCoreApiVersion() const

    - Get the QAIRT core API version recorded in the binary.

See also

[QairtSystem\_Context\_BinaryInfo\_getApiVersion](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemContext_8h_1a91a6ced00fb175ef120d3b2e6e978e12)

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on invalid handle.

- Returns

    - A [Version](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtInfo.html#structqairt_1_1Version) struct with the major, minor, and patch version numbers of the QAIRT core API used when the binary was compiled.

- inline const [Version](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtInfo.html#_CPPv4N5qairt7VersionE) getBackendApiVersion() const

    - Get the backend API version recorded in the binary.

See also

[QairtSystem\_Context\_BinaryInfo\_getBackendApiVersion](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemContext_8h_1af268d02b17d56ba00a150bae24097f44)

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on invalid handle.

- Returns

    - A [Version](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtInfo.html#structqairt_1_1Version) struct with the major, minor, and patch version numbers of the backend API used when the binary was compiled.

- inline std::string getSocVersion() const

    - Get the System-on-Chip (SoC) version string recorded in the binary.

Currently reads only the first SoC version entry. Returns an empty string if the binary contains no SoC version information.

See also

[QairtSystem\_Context\_BinaryInfo\_getSocVersionAt](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemContext_8h_1ae6ee5f6fe133a1cd5ae9151f0aaf063f)

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on invalid handle.

- Returns

    - SoC version string, or an empty string if not present.

- inline uint32\_t getSocModel() const

    - 

- inline std::vector&lt;[SystemContextGraphInfo](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt22SystemContextGraphInfoE)&gt; &getGraphs()

    - 

- inline const std::vector&lt;[SystemContextGraphInfo](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt22SystemContextGraphInfoE)&gt; &getGraphs() const

    - 

- inline const [DevicePlatformInfo](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtDevice.html#_CPPv4N5qairt18DevicePlatformInfoE) &getPlatformInfo() const

    -

Private Functions

- inline void prepareToCross() const

    - 

- inline void updateAfterCross() const

    -

Private Members

- friend SystemApi

    - 

- friend Api

    - 

- [detail](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtTypeTraits.html#_CPPv4N5qairt6detailE)::crossable&lt;std::vector&lt;[detail](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtTypeTraits.html#_CPPv4N5qairt6detailE)::non\_owning&lt;[SystemContextGraphInfo](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt22SystemContextGraphInfoE)&gt;&gt;, &interface\_type::getGraphInfoAt, &interface\_type::getNumGraphInfos&gt; m\_graphInfos

    - [Graph](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtGraph.html#classqairt_1_1Graph) info collection for the binary, lazy-loaded from the C API after a cross.

- [detail](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtTypeTraits.html#_CPPv4N5qairt6detailE)::crossable&lt;std::string, &interface\_type::getBuildId&gt; m\_buildId

    - Build identifier string, lazy-loaded from the C API after a cross.

- class SystemContextBwAxisScaleOffset : public [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::ApiType&lt;[SystemContextBwAxisScaleOffset](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt30SystemContextBwAxisScaleOffsetE), [QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv456QairtSystem_Context_QuantizeParams_BwAxisScaleOffsetV1_t), SystemApiTable&gt;

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

Per-axis bit-width, scale, and offset quantization parameters for a context tensor.

Obtained via SystemContextQuantizationInfo::getBwAxisScaleOffset().
    Copy to clipboard

Public Functions

- SystemContextBwAxisScaleOffset() noexcept = default

    - 

- SystemContextBwAxisScaleOffset(const [SystemContextBwAxisScaleOffset](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt30SystemContextBwAxisScaleOffset30SystemContextBwAxisScaleOffsetERK30SystemContextBwAxisScaleOffset)&) = delete

    - 

- SystemContextBwAxisScaleOffset([SystemContextBwAxisScaleOffset](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt30SystemContextBwAxisScaleOffset30SystemContextBwAxisScaleOffsetERR30SystemContextBwAxisScaleOffset)&&) noexcept = default

    - 

- [SystemContextBwAxisScaleOffset](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt30SystemContextBwAxisScaleOffsetE) &operator=(const [SystemContextBwAxisScaleOffset](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt30SystemContextBwAxisScaleOffsetE)&) = delete

    - 

- [SystemContextBwAxisScaleOffset](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt30SystemContextBwAxisScaleOffsetE) &operator=([SystemContextBwAxisScaleOffset](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt30SystemContextBwAxisScaleOffsetE)&&) noexcept = default

    - 

- inline uint32\_t getBitwidth() const

    - See also

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

- inline int32\_t getAxis() const

    - See also

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

- inline const std::vector&lt;float&gt; &getScales() const

    - Get the cached per-axis scale values.

See also

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

- Returns

    - Const reference to the per-axis scale values.

- inline const std::vector&lt;int32\_t&gt; &getOffsets() const

    - Get the cached per-axis offset values.

See also

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

- Returns

    - Const reference to the per-axis offset values.

- template&lt;typename T, typename U, typename V&gt;  
inline ApiType(const [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt30SystemContextBwAxisScaleOffset7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE)&lt;[T](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt30SystemContextBwAxisScaleOffset7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE), [U](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt30SystemContextBwAxisScaleOffset7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE), [V](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt30SystemContextBwAxisScaleOffset7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE)&gt; &parent, [detail](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtTypeTraits.html#_CPPv4N5qairt6detailE)::non\_owning\_handle&lt;handle\_type&gt; noh)

    - 

- inline explicit ApiType(const std::shared\_ptr&lt;T\_Table&gt; &apiTable)

    - 

- inline ApiType(copy\_table\_tag\_t, const [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt30SystemContextBwAxisScaleOffset7ApiTypeE16copy_table_tag_tRK7ApiType) &other)

    - 

- ApiType() noexcept = default

    - 

- ApiType(const [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt30SystemContextBwAxisScaleOffset7ApiTypeERK7ApiType)&) = delete

    - 

- ApiType([ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt30SystemContextBwAxisScaleOffset7ApiTypeERR7ApiType)&&) noexcept = default

    - 

- [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt30SystemContextBwAxisScaleOffset7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE) &operator=(const [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt30SystemContextBwAxisScaleOffset7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE)&) = delete

    - 

- [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt30SystemContextBwAxisScaleOffset7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE) &operator=([ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt30SystemContextBwAxisScaleOffset7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE)&&) noexcept = default

    -

Private Functions

- inline void prepareToCross() const

    - 

- inline void updateAfterCross() const

    -

Private Members

- friend Api

    - 

- friend SystemApi

    - 

- mutable std::vector&lt;float&gt; m\_scales

    - Cached per-axis scale values, populated after a C API cross.

- mutable std::vector&lt;int32\_t&gt; m\_offsets

    - Cached per-axis offset values, populated after a C API cross.

- class SystemContextBwAxisScaleOffsetMapped : public [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::ApiType&lt;[SystemContextBwAxisScaleOffsetMapped](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt36SystemContextBwAxisScaleOffsetMappedE), [QairtSystem\_Context\_QuantizeParams\_BwAxisScaleOffsetMappedV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv462QairtSystem_Context_QuantizeParams_BwAxisScaleOffsetMappedV1_t), SystemApiTable&gt;

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

Per-axis bit-width, scale, and offset quantization parameters with a value-mapping scheme.

Obtained via SystemContextQuantizationInfo::getBwAxisScaleOffsetMapped().
    Copy to clipboard

Public Functions

- SystemContextBwAxisScaleOffsetMapped() noexcept = default

    - 

- SystemContextBwAxisScaleOffsetMapped(const [SystemContextBwAxisScaleOffsetMapped](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt36SystemContextBwAxisScaleOffsetMapped36SystemContextBwAxisScaleOffsetMappedERK36SystemContextBwAxisScaleOffsetMapped)&) = delete

    - 

- SystemContextBwAxisScaleOffsetMapped([SystemContextBwAxisScaleOffsetMapped](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt36SystemContextBwAxisScaleOffsetMapped36SystemContextBwAxisScaleOffsetMappedERR36SystemContextBwAxisScaleOffsetMapped)&&) noexcept = default

    - 

- [SystemContextBwAxisScaleOffsetMapped](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt36SystemContextBwAxisScaleOffsetMappedE) &operator=(const [SystemContextBwAxisScaleOffsetMapped](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt36SystemContextBwAxisScaleOffsetMappedE)&) = delete

    - 

- [SystemContextBwAxisScaleOffsetMapped](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt36SystemContextBwAxisScaleOffsetMappedE) &operator=([SystemContextBwAxisScaleOffsetMapped](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt36SystemContextBwAxisScaleOffsetMappedE)&&) noexcept = default

    - 

- inline uint32\_t getBitwidth() const

    - See also

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

- inline int32\_t getAxis() const

    - See also

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

- inline const std::vector&lt;float&gt; &getScales() const

    - Get the cached per-axis scale values.

See also

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

- Returns

    - Const reference to the per-axis scale values.

- inline const std::vector&lt;int32\_t&gt; &getOffsets() const

    - Get the cached per-axis offset values.

See also

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

- Returns

    - Const reference to the per-axis offset values.

- inline [QuantizationEncodingMapping](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtTensor.html#_CPPv4N5qairt27QuantizationEncodingMappingE) getMapping() const

    - Get the quantized value mapping scheme for this encoding.

See also

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

- Returns

    - The active Qairt\_QuantizationInfoEncodingMapping value cast to QuantizationEncodingMapping.

- template&lt;typename T, typename U, typename V&gt;  
inline ApiType(const [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt36SystemContextBwAxisScaleOffsetMapped7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE)&lt;[T](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt36SystemContextBwAxisScaleOffsetMapped7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE), [U](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt36SystemContextBwAxisScaleOffsetMapped7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE), [V](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt36SystemContextBwAxisScaleOffsetMapped7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE)&gt; &parent, [detail](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtTypeTraits.html#_CPPv4N5qairt6detailE)::non\_owning\_handle&lt;handle\_type&gt; noh)

    - 

- inline explicit ApiType(const std::shared\_ptr&lt;T\_Table&gt; &apiTable)

    - 

- inline ApiType(copy\_table\_tag\_t, const [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt36SystemContextBwAxisScaleOffsetMapped7ApiTypeE16copy_table_tag_tRK7ApiType) &other)

    - 

- ApiType() noexcept = default

    - 

- ApiType(const [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt36SystemContextBwAxisScaleOffsetMapped7ApiTypeERK7ApiType)&) = delete

    - 

- ApiType([ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt36SystemContextBwAxisScaleOffsetMapped7ApiTypeERR7ApiType)&&) noexcept = default

    - 

- [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt36SystemContextBwAxisScaleOffsetMapped7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE) &operator=(const [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt36SystemContextBwAxisScaleOffsetMapped7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE)&) = delete

    - 

- [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt36SystemContextBwAxisScaleOffsetMapped7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE) &operator=([ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt36SystemContextBwAxisScaleOffsetMapped7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE)&&) noexcept = default

    -

Private Functions

- inline void prepareToCross() const

    - 

- inline void updateAfterCross() const

    -

Private Members

- friend Api

    - 

- friend SystemApi

    - 

- mutable std::vector&lt;float&gt; m\_scales

    - Cached per-axis scale values, populated after a C API cross.

- mutable std::vector&lt;int32\_t&gt; m\_offsets

    - Cached per-axis offset values, populated after a C API cross.

- class SystemContextBwScaleOffset : public [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::ApiType&lt;[SystemContextBwScaleOffset](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt26SystemContextBwScaleOffsetE), [QairtSystem\_Context\_QuantizeParams\_BwScaleOffsetV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv452QairtSystem_Context_QuantizeParams_BwScaleOffsetV1_t), SystemApiTable&gt;

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

Per-tensor bit-width, scale, and offset quantization parameters for a context tensor.

Obtained via SystemContextQuantizationInfo::getBwScaleOffset().
    Copy to clipboard

Public Functions

- SystemContextBwScaleOffset() noexcept = default

    - 

- SystemContextBwScaleOffset(const [SystemContextBwScaleOffset](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt26SystemContextBwScaleOffset26SystemContextBwScaleOffsetERK26SystemContextBwScaleOffset)&) = delete

    - 

- [SystemContextBwScaleOffset](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt26SystemContextBwScaleOffsetE) &operator=([SystemContextBwScaleOffset](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt26SystemContextBwScaleOffsetE)&&) noexcept = default

    - 

- [SystemContextBwScaleOffset](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt26SystemContextBwScaleOffsetE) &operator=(const [SystemContextBwScaleOffset](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt26SystemContextBwScaleOffsetE)&) = delete

    - 

- SystemContextBwScaleOffset([SystemContextBwScaleOffset](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt26SystemContextBwScaleOffset26SystemContextBwScaleOffsetERR26SystemContextBwScaleOffset)&&) noexcept = default

    - 

- inline float getScale() const

    - See also

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

- inline int32\_t getOffset() const

    - See also

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

- inline uint32\_t getBw() const

    - See also

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

- template&lt;typename T, typename U, typename V&gt;  
inline ApiType(const [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt26SystemContextBwScaleOffset7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE)&lt;[T](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt26SystemContextBwScaleOffset7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE), [U](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt26SystemContextBwScaleOffset7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE), [V](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt26SystemContextBwScaleOffset7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE)&gt; &parent, [detail](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtTypeTraits.html#_CPPv4N5qairt6detailE)::non\_owning\_handle&lt;handle\_type&gt; noh)

    - 

- inline explicit ApiType(const std::shared\_ptr&lt;T\_Table&gt; &apiTable)

    - 

- inline ApiType(copy\_table\_tag\_t, const [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt26SystemContextBwScaleOffset7ApiTypeE16copy_table_tag_tRK7ApiType) &other)

    - 

- ApiType() noexcept = default

    - 

- ApiType(const [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt26SystemContextBwScaleOffset7ApiTypeERK7ApiType)&) = delete

    - 

- ApiType([ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt26SystemContextBwScaleOffset7ApiTypeERR7ApiType)&&) noexcept = default

    - 

- [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt26SystemContextBwScaleOffset7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE) &operator=(const [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt26SystemContextBwScaleOffset7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE)&) = delete

    - 

- [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt26SystemContextBwScaleOffset7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE) &operator=([ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt26SystemContextBwScaleOffset7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE)&&) noexcept = default

    -

Private Functions

- inline void prepareToCross() const

    - 

- inline void updateAfterCross() const

    -

Private Members

- friend Api

    - 

- friend SystemApi

    -

- class SystemContextGraphInfo : public [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::ApiType&lt;[SystemContextGraphInfo](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt22SystemContextGraphInfoE), [QairtSystem\_Context\_GraphInfoV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv433QairtSystem_Context_GraphInfoV1_t), SystemApiTable&gt;

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

Metadata for a single compiled graph within a context binary.

Obtained via SystemContextGraphInfoSet::getGraphInfos() or
       Qairt::getGraphInfoAt(). Provides the graph name and the ordered
       input, output, and updateable tensor metadata lists.
    Copy to clipboard

Public Functions

- SystemContextGraphInfo() = default

    - 

- SystemContextGraphInfo(const [SystemContextGraphInfo](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt22SystemContextGraphInfo22SystemContextGraphInfoERK22SystemContextGraphInfo)&) = delete

    - 

- SystemContextGraphInfo([SystemContextGraphInfo](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt22SystemContextGraphInfo22SystemContextGraphInfoERR22SystemContextGraphInfo)&&) noexcept = default

    - 

- [SystemContextGraphInfo](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt22SystemContextGraphInfoE) &operator=(const [SystemContextGraphInfo](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt22SystemContextGraphInfoE)&) = delete

    - 

- [SystemContextGraphInfo](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt22SystemContextGraphInfoE) &operator=([SystemContextGraphInfo](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt22SystemContextGraphInfoE)&&) noexcept = default

    - 

- inline const std::string &getGraphName() const

    - Get the name of this graph.

See also

[QairtSystem\_Context\_GraphInfo\_getName](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemContext_8h_1affda45f775208a2aa11c0066885301eb)

- Returns

    - Const reference to the graph name string.

- inline std::vector&lt;[qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[SystemContextTensorInfo](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt23SystemContextTensorInfoE)&gt; &getGraphInputs()

    - Get the ordered list of input tensor metadata for this graph.

See also

[QairtSystem\_Context\_GraphInfo\_getInputAt](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemContext_8h_1a0f695f679976404a16cec709cf1d64d4)

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on invalid handle.

- Returns

    - Reference to the input tensor info vector.

- inline const std::vector&lt;[qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[SystemContextTensorInfo](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt23SystemContextTensorInfoE)&gt; &getGraphInputs() const

    - See also

[SystemContextGraphInfo::getGraphInputs()](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#classqairt_1_1SystemContextGraphInfo_1a83256cc03b7cbfaddf48a2138e7f5bb7)

- inline std::vector&lt;[qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[SystemContextTensorInfo](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt23SystemContextTensorInfoE)&gt; &getGraphOutputs()

    - Get the ordered list of output tensor metadata for this graph.

See also

[QairtSystem\_Context\_GraphInfo\_getOutputAt](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemContext_8h_1abce996b8e709a77a78a8197496ce9656)

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on invalid handle.

- Returns

    - Reference to the output tensor info vector.

- inline const std::vector&lt;[qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[SystemContextTensorInfo](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt23SystemContextTensorInfoE)&gt; &getGraphOutputs() const

    - See also

[SystemContextGraphInfo::getGraphOutputs()](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#classqairt_1_1SystemContextGraphInfo_1a1622c8c47df9fd17d7c5976b05e6efb6)

- inline std::vector&lt;[qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[SystemContextTensorInfo](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt23SystemContextTensorInfoE)&gt; &getUpdateableTensors()

    - Get the ordered list of updateable tensor metadata for this graph.

Updateable tensors are model weights that can be replaced at runtime (e.g. for on-device fine-tuning or weight swapping). The returned vector follows the same format as [getGraphInputs()](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#classqairt_1_1SystemContextGraphInfo_1a83256cc03b7cbfaddf48a2138e7f5bb7).

See also

[QairtSystem\_Context\_GraphInfo\_getUpdateableAt](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemContext_8h_1aac238e4d3e45f5524b7abbb6ac8b39b6)

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on invalid handle.

- Returns

    - Reference to the updateable tensor info vector.

- inline const std::vector&lt;[qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[SystemContextTensorInfo](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt23SystemContextTensorInfoE)&gt; &getUpdateableTensors() const

    - See also

[SystemContextGraphInfo::getUpdateableTensors()](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#classqairt_1_1SystemContextGraphInfo_1a33b99e21728f098841d70d1ef04b8e3f)

- inline uint32\_t getGraphBlobInfoSize() const

    - Get the size in bytes of the raw graph-info serialization blob.

See also

[QairtSystem\_Context\_GraphInfo\_getGraphInfoBlobSize](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemContext_8h_1ae5678695b3e9cd1346046c7add58362b)

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on invalid handle.

- Returns

    - Size in bytes. 0 if the backend did not populate a blob.

- inline void \*getGraphBlobInfo() const

    - Get a pointer to the raw graph-info serialization blob.

See also

[QairtSystem\_Context\_GraphInfo\_getGraphInfoBlob](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemContext_8h_1a5de30a83028bb5695d840dc214dc3df9)

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on invalid handle.

- Returns

    - Pointer to the blob data, or nullptr if no blob was populated.

- inline uint32\_t getStartOpIndex() const

    - Get the start operation index for this graph in the context’s op table.

See also

[QairtSystem\_Context\_GraphInfo\_getStartOpIndex](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemContext_8h_1aa08aeddcda17777d12d0cc8255e44869)

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on invalid handle.

- Returns

    - Zero-based index of the first operation belonging to this graph.

- inline uint32\_t getEndOpIndex() const

    - Get the end operation index for this graph in the context’s op table.

See also

[QairtSystem\_Context\_GraphInfo\_getEndOpIndex](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemContext_8h_1afa1b900333b8675e9802d585059bbcbc)

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on invalid handle.

- Returns

    - One-past-the-last index of the operations belonging to this graph.

Private Functions

- inline void prepareToCross() const

    - 

- inline void updateAfterCross() const

    -

Private Members

- friend SystemApi

    - 

- friend Api

    - 

- [detail](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtTypeTraits.html#_CPPv4N5qairt6detailE)::crossable&lt;std::string, &interface\_type::getName&gt; m\_name

    - [Graph](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtGraph.html#classqairt_1_1Graph) name string, lazy-loaded from the C API after a cross.

- [detail](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtTypeTraits.html#_CPPv4N5qairt6detailE)::crossable&lt;std::vector&lt;[detail](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtTypeTraits.html#_CPPv4N5qairt6detailE)::non\_owning&lt;[qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[SystemContextTensorInfo](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt23SystemContextTensorInfoE)&gt;&gt;, &interface\_type::getInputAt, &interface\_type::getNumInputs&gt; m\_inputTensorInfos

    - Input tensor info collection, lazy-loaded from the C API after a cross.

- [detail](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtTypeTraits.html#_CPPv4N5qairt6detailE)::crossable&lt;std::vector&lt;[detail](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtTypeTraits.html#_CPPv4N5qairt6detailE)::non\_owning&lt;[qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[SystemContextTensorInfo](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt23SystemContextTensorInfoE)&gt;&gt;, &interface\_type::getOutputAt, &interface\_type::getNumOutputs&gt; m\_outputTensorInfos

    - Output tensor info collection, lazy-loaded from the C API after a cross.

- [detail](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtTypeTraits.html#_CPPv4N5qairt6detailE)::crossable&lt;std::vector&lt;[detail](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtTypeTraits.html#_CPPv4N5qairt6detailE)::non\_owning&lt;[qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[SystemContextTensorInfo](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt23SystemContextTensorInfoE)&gt;&gt;, &interface\_type::getUpdateableAt, &interface\_type::getNumUpdateables&gt; m\_updateableTensorInfos

    - Updateable tensor info collection, lazy-loaded from the C API after a cross.

- class SystemContextGraphInfoSet : public [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::ApiType&lt;[SystemContextGraphInfoSet](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt25SystemContextGraphInfoSetE), [QairtSystem\_Context\_GraphInfoSetV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv436QairtSystem_Context_GraphInfoSetV1_t), SystemApiTable&gt;

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

Ordered collection of compiled graph metadata returned by [SystemDlc::composeGraphs()](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#classqairt_1_1SystemDlc_1a17cd05a6c9050b800597358224cc6806).

Obtained via SystemDlc::composeGraphs(). Each entry exposes the graph
       name and its input, output, and updateable tensor metadata.
    Copy to clipboard

Public Functions

- SystemContextGraphInfoSet() = default

    - 

- SystemContextGraphInfoSet(const [SystemContextGraphInfoSet](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt25SystemContextGraphInfoSet25SystemContextGraphInfoSetERK25SystemContextGraphInfoSet)&) = delete

    - 

- SystemContextGraphInfoSet([SystemContextGraphInfoSet](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt25SystemContextGraphInfoSet25SystemContextGraphInfoSetERR25SystemContextGraphInfoSet)&&) noexcept = default

    - 

- [SystemContextGraphInfoSet](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt25SystemContextGraphInfoSetE) &operator=(const [SystemContextGraphInfoSet](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt25SystemContextGraphInfoSetE)&) = delete

    - 

- [SystemContextGraphInfoSet](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt25SystemContextGraphInfoSetE) &operator=([SystemContextGraphInfoSet](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt25SystemContextGraphInfoSetE)&&) noexcept = default

    - 

- inline std::vector&lt;[qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[SystemContextGraphInfo](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt22SystemContextGraphInfoE)&gt; &getGraphInfos()

    - Get the ordered list of compiled graph metadata in this set.

See also

[QairtSystem\_Context\_GraphInfoSet\_getGraphInfoAt](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemContext_8h_1a666fc5acd1648931f3fba2c08c720605)

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on invalid handle.

- Returns

    - Reference to the graph info vector.

- inline const std::vector&lt;[qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[SystemContextGraphInfo](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt22SystemContextGraphInfoE)&gt; &getGraphInfos() const

    - See also

[SystemContextGraphInfoSet::getGraphInfos()](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#classqairt_1_1SystemContextGraphInfoSet_1a65f70a81f30fd819cab4d72332b92c25)

Private Functions

- inline void prepareToCross() const

    - 

- inline void updateAfterCross() const

    - 

- inline SystemContextGraphInfoSet(const std::shared\_ptr&lt;SystemApiTable&gt; &apiTable, [QairtSystem\_Context\_GraphInfoSetHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv440QairtSystem_Context_GraphInfoSetHandle_t) handle)

    -

Private Members

- friend SystemApi

    - 

- friend SystemDlc

    - 

- friend Api

    - 

- [detail](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtTypeTraits.html#_CPPv4N5qairt6detailE)::crossable&lt;std::vector&lt;[detail](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtTypeTraits.html#_CPPv4N5qairt6detailE)::non\_owning&lt;[qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[SystemContextGraphInfo](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt22SystemContextGraphInfoE)&gt;&gt;, &interface\_type::getGraphInfoAt, &interface\_type::getNumGraphInfos&gt; m\_graphInfos

    - [Graph](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtGraph.html#classqairt_1_1Graph) info collection for the set, populated on construction.

- class SystemContextQuantizationInfo : public [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::ApiType&lt;[SystemContextQuantizationInfo](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt29SystemContextQuantizationInfoE), [QairtSystem\_Context\_QuantParamInfoV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv438QairtSystem_Context_QuantParamInfoV1_t), SystemApiTable&gt;

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

Quantization encoding parameters for a single context tensor.

Obtained via SystemContextTensorInfo::getQuantInfo(). The active
       encoding variant (scale-offset, axis-scale-offset, bit-width variants,
       or mapped) is identified by getQuantizationType() and then retrieved
       via the corresponding typed accessor.
    Copy to clipboard

Public Functions

- inline [SystemContextQuantInfoType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt26SystemContextQuantInfoTypeE) getQuantizationType() const

    - Get the active quantization encoding type for this tensor.

Use the returned type to determine which typed accessor to call next:

- SystemContextQuantInfoType::ScaleOffset → [getScaleOffset()](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#classqairt_1_1SystemContextQuantizationInfo_1a5ec9a56e800ae3fce84e7b2d45b31b9e)
- SystemContextQuantInfoType::AxisScaleOffset → [getAxisScaleOffset()](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#classqairt_1_1SystemContextQuantizationInfo_1a92d358ed10bb5da3d0c22a4610001f9c)
- SystemContextQuantInfoType::BwScaleOffset → [getBwScaleOffset()](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#classqairt_1_1SystemContextQuantizationInfo_1a230800ba1c9d1fd6b997201b88bf5089)
- SystemContextQuantInfoType::BwAxisScaleOffset → [getBwAxisScaleOffset()](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#classqairt_1_1SystemContextQuantizationInfo_1ac941daf807dcab01472d577e075c74b5)
- SystemContextQuantInfoType::BwAxisScaleOffsetMapped → [getBwAxisScaleOffsetMapped()](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#classqairt_1_1SystemContextQuantizationInfo_1a6aecd6b6f34ee8eb7fc8ad5252ea09c7)
- SystemContextQuantInfoType::Undefined → tensor is unquantized

See also

[QairtSystem\_Context\_QuantParamInfo\_getQuantizationType](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemContext_8h_1a9d4c285aebb807b14f88dc9aaa9896d5)

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on invalid handle.

- Returns

    - The active SystemContextQuantInfoType enumerator.

- inline const [SystemContextScaleOffset](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt24SystemContextScaleOffsetE) &getScaleOffset() const

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

Valid only when [getQuantizationType()](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#classqairt_1_1SystemContextQuantizationInfo_1a2ab8100b821f56083cb6747e79b78556) returns SystemContextQuantInfoType::ScaleOffset.

See also

[QairtSystem\_Context\_QuantParamInfo\_getScaleOffset](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemContext_8h_1a225bec56061824b84fb38c2adf305f8d)

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on invalid handle or wrong encoding type.

- Returns

    - Const reference to the per-tensor [SystemContextScaleOffset](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#classqairt_1_1SystemContextScaleOffset) encoding.

- inline const [SystemContextAxisScaleOffset](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt28SystemContextAxisScaleOffsetE) &getAxisScaleOffset() const

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

Valid only when [getQuantizationType()](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#classqairt_1_1SystemContextQuantizationInfo_1a2ab8100b821f56083cb6747e79b78556) returns SystemContextQuantInfoType::AxisScaleOffset.

See also

[QairtSystem\_Context\_QuantParamInfo\_getAxisScaleOffset](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemContext_8h_1a5ed2f14a4eced86f00c6b02769711118)

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on invalid handle or wrong encoding type.

- Returns

    - Const reference to the per-axis [SystemContextAxisScaleOffset](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#classqairt_1_1SystemContextAxisScaleOffset) encoding.

- inline const [SystemContextBwScaleOffset](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt26SystemContextBwScaleOffsetE) &getBwScaleOffset() const

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

Valid only when [getQuantizationType()](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#classqairt_1_1SystemContextQuantizationInfo_1a2ab8100b821f56083cb6747e79b78556) returns SystemContextQuantInfoType::BwScaleOffset.

See also

[QairtSystem\_Context\_QuantParamInfo\_getBwScaleOffset](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemContext_8h_1ad86ea528febc13435137db10f13aa728)

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on invalid handle or wrong encoding type.

- Returns

    - Const reference to the per-tensor [SystemContextBwScaleOffset](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#classqairt_1_1SystemContextBwScaleOffset) encoding.

- inline const [SystemContextBwAxisScaleOffset](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt30SystemContextBwAxisScaleOffsetE) &getBwAxisScaleOffset() const

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

Valid only when [getQuantizationType()](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#classqairt_1_1SystemContextQuantizationInfo_1a2ab8100b821f56083cb6747e79b78556) returns SystemContextQuantInfoType::BwAxisScaleOffset.

See also

[QairtSystem\_Context\_QuantParamInfo\_getBwAxisScaleOffset](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemContext_8h_1ae845a46ea3ea8b8de0f52dcc021d7ba9)

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on invalid handle or wrong encoding type.

- Returns

    - Const reference to the per-axis [SystemContextBwAxisScaleOffset](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#classqairt_1_1SystemContextBwAxisScaleOffset) encoding.

- inline const [SystemContextBwAxisScaleOffsetMapped](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt36SystemContextBwAxisScaleOffsetMappedE) &getBwAxisScaleOffsetMapped() const

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

Valid only when [getQuantizationType()](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#classqairt_1_1SystemContextQuantizationInfo_1a2ab8100b821f56083cb6747e79b78556) returns SystemContextQuantInfoType::BwAxisScaleOffsetMapped.

See also

[QairtSystem\_Context\_QuantParamInfo\_getBwAxisScaleOffsetMapped](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemContext_8h_1a3d9924f9d087311171b48899d1207758)

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on invalid handle or wrong encoding type.

- Returns

    - Const reference to the per-axis [SystemContextBwAxisScaleOffsetMapped](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#classqairt_1_1SystemContextBwAxisScaleOffsetMapped) encoding.

Private Types

- using CrossableScaleOffset = [detail](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtTypeTraits.html#_CPPv4N5qairt6detailE)::crossable&lt;[detail](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtTypeTraits.html#_CPPv4N5qairt6detailE)::non\_owning&lt;[SystemContextScaleOffset](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt24SystemContextScaleOffsetE)&gt;, &interface\_type::getScaleOffset&gt;

    - 

- using CrossableAxisScaleOffset = [detail](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtTypeTraits.html#_CPPv4N5qairt6detailE)::crossable&lt;[detail](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtTypeTraits.html#_CPPv4N5qairt6detailE)::non\_owning&lt;[SystemContextAxisScaleOffset](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt28SystemContextAxisScaleOffsetE)&gt;, &interface\_type::getAxisScaleOffset&gt;

    - 

- using CrossableBwScaleOffset = [detail](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtTypeTraits.html#_CPPv4N5qairt6detailE)::crossable&lt;[detail](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtTypeTraits.html#_CPPv4N5qairt6detailE)::non\_owning&lt;[SystemContextBwScaleOffset](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt26SystemContextBwScaleOffsetE)&gt;, &interface\_type::getBwScaleOffset&gt;

    - 

- using CrossableBwAxisScaleOffset = [detail](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtTypeTraits.html#_CPPv4N5qairt6detailE)::crossable&lt;[detail](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtTypeTraits.html#_CPPv4N5qairt6detailE)::non\_owning&lt;[SystemContextBwAxisScaleOffset](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt30SystemContextBwAxisScaleOffsetE)&gt;, &interface\_type::getBwAxisScaleOffset&gt;

    - 

- using CrossableBwAxisScaleOffsetMapped = [detail](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtTypeTraits.html#_CPPv4N5qairt6detailE)::crossable&lt;[detail](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtTypeTraits.html#_CPPv4N5qairt6detailE)::non\_owning&lt;[SystemContextBwAxisScaleOffsetMapped](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt36SystemContextBwAxisScaleOffsetMappedE)&gt;, &interface\_type::getBwAxisScaleOffsetMapped&gt;

    -

Private Functions

- inline void prepareToCross() const

    - 

- inline void updateAfterCross() const

    -

Private Members

- friend SystemApi

    - 

- friend Api

    - 

- mutable std::variant&lt;std::monostate, [CrossableScaleOffset](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt29SystemContextQuantizationInfo20CrossableScaleOffsetE), [CrossableAxisScaleOffset](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt29SystemContextQuantizationInfo24CrossableAxisScaleOffsetE), [CrossableBwScaleOffset](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt29SystemContextQuantizationInfo22CrossableBwScaleOffsetE), [CrossableBwAxisScaleOffset](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt29SystemContextQuantizationInfo26CrossableBwAxisScaleOffsetE), [CrossableBwAxisScaleOffsetMapped](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt29SystemContextQuantizationInfo32CrossableBwAxisScaleOffsetMappedE)&gt; m\_encoding

    - Active quantization encoding, held as a type-safe variant populated on first access.

- class SystemContextScaleOffset : public [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::ApiType&lt;[SystemContextScaleOffset](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt24SystemContextScaleOffsetE), [QairtSystem\_Context\_QuantizeParams\_ScaleOffsetV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv450QairtSystem_Context_QuantizeParams_ScaleOffsetV1_t), SystemApiTable&gt;

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

Per-tensor scale and offset quantization parameters for a context tensor.

Obtained via SystemContextQuantizationInfo::getScaleOffset().
    Copy to clipboard

Public Functions

- SystemContextScaleOffset() noexcept = default

    - 

- SystemContextScaleOffset(const [SystemContextScaleOffset](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt24SystemContextScaleOffset24SystemContextScaleOffsetERK24SystemContextScaleOffset)&) = delete

    - 

- SystemContextScaleOffset([SystemContextScaleOffset](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt24SystemContextScaleOffset24SystemContextScaleOffsetERR24SystemContextScaleOffset)&&) noexcept = default

    - 

- [SystemContextScaleOffset](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt24SystemContextScaleOffsetE) &operator=(const [SystemContextScaleOffset](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt24SystemContextScaleOffsetE)&) = delete

    - 

- [SystemContextScaleOffset](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt24SystemContextScaleOffsetE) &operator=([SystemContextScaleOffset](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt24SystemContextScaleOffsetE)&&) noexcept = default

    - 

- inline float getScale() const

    - See also

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

- inline int32\_t getOffset() const

    - See also

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

- template&lt;typename T, typename U, typename V&gt;  
inline ApiType(const [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt24SystemContextScaleOffset7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE)&lt;[T](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt24SystemContextScaleOffset7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE), [U](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt24SystemContextScaleOffset7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE), [V](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt24SystemContextScaleOffset7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE)&gt; &parent, [detail](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtTypeTraits.html#_CPPv4N5qairt6detailE)::non\_owning\_handle&lt;handle\_type&gt; noh)

    - 

- inline explicit ApiType(const std::shared\_ptr&lt;T\_Table&gt; &apiTable)

    - 

- inline ApiType(copy\_table\_tag\_t, const [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt24SystemContextScaleOffset7ApiTypeE16copy_table_tag_tRK7ApiType) &other)

    - 

- ApiType() noexcept = default

    - 

- ApiType(const [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt24SystemContextScaleOffset7ApiTypeERK7ApiType)&) = delete

    - 

- ApiType([ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt24SystemContextScaleOffset7ApiTypeERR7ApiType)&&) noexcept = default

    - 

- [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt24SystemContextScaleOffset7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE) &operator=(const [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt24SystemContextScaleOffset7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE)&) = delete

    - 

- [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt24SystemContextScaleOffset7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE) &operator=([ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt24SystemContextScaleOffset7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE)&&) noexcept = default

    -

Private Functions

- inline void prepareToCross() const

    - 

- inline void updateAfterCross() const

    -

Private Members

- friend Api

    - 

- friend SystemApi

    -

- class SystemContextTensorInfo : public [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::ApiType&lt;[SystemContextTensorInfo](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt23SystemContextTensorInfoE), [QairtSystem\_Context\_TensorInfoV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv434QairtSystem_Context_TensorInfoV1_t), SystemApiTable&gt;

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

Metadata for a single tensor within a compiled context graph.

Obtained via SystemContextGraphInfo::getGraphInputs() or
       getGraphOutputs(). Provides the tensor's name, rank, dimensions,
       data type, and quantization parameters.
    Copy to clipboard

Public Functions

- SystemContextTensorInfo() = default

    - 

- SystemContextTensorInfo(const [SystemContextTensorInfo](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt23SystemContextTensorInfo23SystemContextTensorInfoERK23SystemContextTensorInfo)&) = delete

    - 

- SystemContextTensorInfo([SystemContextTensorInfo](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt23SystemContextTensorInfo23SystemContextTensorInfoERR23SystemContextTensorInfo)&&) noexcept = default

    - 

- [SystemContextTensorInfo](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt23SystemContextTensorInfoE) &operator=(const [SystemContextTensorInfo](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt23SystemContextTensorInfoE)&) = delete

    - 

- [SystemContextTensorInfo](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt23SystemContextTensorInfoE) &operator=([SystemContextTensorInfo](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt23SystemContextTensorInfoE)&&) noexcept = default

    - 

- inline uint64\_t getId() const

    - See also

[QairtSystem\_Context\_TensorInfo\_getId](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemContext_8h_1a2955672d57b19ce527c914f2c5bdd861)

- inline std::string getName() const

    - Get the name of this tensor.

See also

[QairtSystem\_Context\_TensorInfo\_getName](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemContext_8h_1a53f9f7c66cef8c7b559f1b751975ee00)

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on invalid handle.

- Returns

    - The tensor name string (e.g. “input\_0” or “output\_logits”).

- inline uint32\_t getRank() const

    - See also

[QairtSystem\_Context\_TensorInfo\_getRank](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemContext_8h_1afcc0435ef674b22df43b7ed8c561cf54)

- inline const uint32\_t \*getDimensions()

    - Get a pointer to the dimension sizes array for this tensor.

See also

[QairtSystem\_Context\_TensorInfo\_getDimensions](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemContext_8h_1ae80c48c09124d487d80e64a1f824be36)

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on invalid handle.

- Returns

    - Pointer to the dimension sizes array. The array has [getRank()](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#classqairt_1_1SystemContextTensorInfo_1ac3c11006e884129eaaf3f4a0e69f3e39) elements.

- inline [DataType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtTensor.html#_CPPv4N5qairt8DataTypeE) getDataType()

    - Get the data type of this tensor.

See also

[QairtSystem\_Context\_TensorInfo\_getDatatype](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemContext_8h_1af920bf4ce83e498a24edddaf903aee9b)

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on invalid handle.

- Returns

    - The DataType enumerator for this tensor (e.g. DataType::Float32, DataType::Ufixed8, etc.).

- inline const [SystemContextQuantizationInfo](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt29SystemContextQuantizationInfoE) &getQuantInfo()

    - Get the quantization parameter information for this tensor.

Returns a reference to the cached [SystemContextQuantizationInfo](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#classqairt_1_1SystemContextQuantizationInfo) object. Call getQuantizationType() on the returned object to determine the active encoding, then call the corresponding typed accessor.

See also

[QairtSystem\_Context\_TensorInfo\_getQuantInfo](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemContext_8h_1a5ec7ca43a56ce531410cb4e8623674d7)

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on invalid handle.

- Returns

    - Reference to the quantization info for this tensor.

Private Functions

- inline void prepareToCross() const

    - 

- inline void updateAfterCross() const

    -

Private Members

- friend SystemApi

    - 

- friend Api

    - 

- [detail](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtTypeTraits.html#_CPPv4N5qairt6detailE)::crossable&lt;std::string, &interface\_type::getName&gt; m\_name

    - [Tensor](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtTensor.html#classqairt_1_1Tensor) name string, lazy-loaded from the C API after a cross.

- [detail](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtTypeTraits.html#_CPPv4N5qairt6detailE)::crossable&lt;[detail](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtTypeTraits.html#_CPPv4N5qairt6detailE)::non\_owning&lt;[SystemContextQuantizationInfo](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt29SystemContextQuantizationInfoE)&gt;, &interface\_type::getQuantInfo&gt; m\_quantInfo

    - Quantization parameter info, lazy-loaded from the C API after a cross.

* * *

C++ wrapper for DLC loading.

**Include:** `#include "QairtCppApi/System/QairtSystemDlc.hpp"`

C++ wrapper for the QAIRT System DLC API.

- namespace qairt

    - Enums

- enum class SystemDlcError : std::underlying\_type\_t&lt;[QairtSystemDlc\_Error\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv422QairtSystemDlc_Error_t)&gt;

    - Error codes returned by QAIRT System DLC operations.

| Enumerator | Description |
| --- | --- |
| `MinError` | Lower sentinel for the error code range. |
| `NoError` | Operation succeeded. |
| `UnsupportedFeature` | The requested feature is not yet supported. |
| `MemAlloc` | Memory allocation failure. |
| `General` | An unclassified System DLC error occurred. |
| `InvalidHandle` | The provided System DLC handle is not valid. |
| `InvalidArgument` | One or more arguments to the operation are NULL/invalid. |
| `OperationFailed` | The System DLC operation could not be completed. |
| `MalformedBinary` | The DLC binary is malformed or corrupted. |
| `MaxError` | Upper sentinel for the error code range. |

*Values:*

- enumerator MinError = [QAIRT\_SYSTEM\_DLC\_MIN\_ERROR](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv4N22QairtSystemDlc_Error_t26QAIRT_SYSTEM_DLC_MIN_ERRORE)

    - 

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

    - 

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

    - 

- enumerator MemAlloc = [QAIRT\_SYSTEM\_DLC\_ERROR\_MEM\_ALLOC](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv4N22QairtSystemDlc_Error_t32QAIRT_SYSTEM_DLC_ERROR_MEM_ALLOCE)

    - 

- enumerator General = [QAIRT\_SYSTEM\_DLC\_ERROR\_GENERAL](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv4N22QairtSystemDlc_Error_t30QAIRT_SYSTEM_DLC_ERROR_GENERALE)

    - 

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

    - 

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

    - 

- enumerator OperationFailed = [QAIRT\_SYSTEM\_DLC\_ERROR\_OPERATION\_FAILED](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv4N22QairtSystemDlc_Error_t39QAIRT_SYSTEM_DLC_ERROR_OPERATION_FAILEDE)

    - 

- enumerator MalformedBinary = [QAIRT\_SYSTEM\_DLC\_ERROR\_MALFORMED\_BINARY](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv4N22QairtSystemDlc_Error_t39QAIRT_SYSTEM_DLC_ERROR_MALFORMED_BINARYE)

    - 

- enumerator MaxError = [QAIRT\_SYSTEM\_DLC\_MAX\_ERROR](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv4N22QairtSystemDlc_Error_t26QAIRT_SYSTEM_DLC_MAX_ERRORE)

    -

- class SystemDlc : public [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::ApiType&lt;[SystemDlc](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt9SystemDlcE), [QairtSystem\_DlcV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv419QairtSystem_DlcV1_t), SystemApiTable&gt;

    - *#include &lt;QairtSystemDlc.hpp&gt;*

Handle for a QAIRT Deep Learning Container (DLC) model file.

Obtained via `SystemApi::makeShared<SystemDlc>(systemLog, path)`.
    Copy to clipboard

Public Functions

- ~SystemDlc() = default

    - 

- SystemDlc() noexcept = default

    - 

- SystemDlc(const [SystemDlc](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt9SystemDlc9SystemDlcERK9SystemDlc)&) = delete

    - 

- SystemDlc([SystemDlc](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt9SystemDlc9SystemDlcERR9SystemDlc)&&) noexcept = default

    - 

- [SystemDlc](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt9SystemDlcE) &operator=(const [SystemDlc](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt9SystemDlcE)&) = delete

    - 

- [SystemDlc](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt9SystemDlcE) &operator=([SystemDlc](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt9SystemDlcE)&&) noexcept = default

    - 

- inline [SystemContextGraphInfoSet](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt25SystemContextGraphInfoSetE) composeGraphs(const std::vector&lt;[SystemDlcGraphConfigInfo](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt24SystemDlcGraphConfigInfoE)&gt; &graphConfigInfos, [Backend](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtBackend.html#_CPPv4N5qairt7BackendE) &backend, [Context](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtContext.html#_CPPv4N5qairt7ContextE) &context, const Api &backendApi, const SystemApi &systemApi)

    - Compose graphs from this DLC onto a backend and context.

See also

[QairtSystemDlc\_composeGraphs](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemDlc_8h_1a97268a0233e3dc583bdc0c9378b2fe2f)

- Parameters

    - - **graphConfigInfos** – **[in]** Per-graph configuration entries. Optional.
- **backend** – **[in]** [Backend](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtBackend.html#classqairt_1_1Backend) on which to compose the graphs.
- **context** – **[in]** [Context](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtContext.html#classqairt_1_1Context) on which to compose the graphs.
- **backendApi** – **[in]** [Backend](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtBackend.html#classqairt_1_1Backend) API object providing the QairtInterface\_getInterface function pointer.
- **systemApi** – **[in]** SystemApi providing the system API table.

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on:

- invalid handle
- memory allocation failure
- unsupported feature
- graph composition failure

- Returns

    - Handle set representing the graphs created on the backend.

- inline [SystemContextGraphInfoSet](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt25SystemContextGraphInfoSetE) composeGraphs([Backend](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtBackend.html#_CPPv4N5qairt7BackendE) &backend, [Context](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtContext.html#_CPPv4N5qairt7ContextE) &context, const Api &backendApi, const SystemApi &systemApi)

    - See also

[SystemDlc::composeGraphs(const std::vector&lt;SystemDlcGraphConfigInfo&gt;&, Backend&, Context&, const Api&, const SystemApi&)](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#classqairt_1_1SystemDlc_1a17cd05a6c9050b800597358224cc6806)

Private Functions

- inline SystemDlc(const std::shared\_ptr&lt;SystemApiTable&gt; &apiTable, const std::string &dlcPath, ApiTypeRef&lt;const [SystemLog](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt9SystemLogE)&&gt; systemLog = {})

    - 

- inline SystemDlc(const std::shared\_ptr&lt;SystemApiTable&gt; &apiTable, ApiTypeRef&lt;[SystemLog](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt9SystemLogE)&gt; &&systemLog, const std::string &dlcPath)

    - 

- inline SystemDlc(const std::shared\_ptr&lt;SystemApiTable&gt; &apiTable, const uint8\_t \*buffer, uint64\_t bufferSize, ApiTypeRef&lt;const [SystemLog](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt9SystemLogE)&&gt; systemLog = {})

    - 

- inline SystemDlc(const std::shared\_ptr&lt;SystemApiTable&gt; &apiTable, ApiTypeRef&lt;const [SystemLog](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt9SystemLogE)&&gt; systemLog, const uint8\_t \*buffer, uint64\_t bufferSize)

    - 

- inline void prepareToCross() const

    - 

- inline void updateAfterCross() const

    -

Private Members

- friend SystemApi

    - 

- friend Api

    -

- class SystemDlcGraphConfigInfo : public [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::ApiType&lt;[SystemDlcGraphConfigInfo](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt24SystemDlcGraphConfigInfoE), [QairtSystem\_Dlc\_GraphConfigInfoV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv435QairtSystem_Dlc_GraphConfigInfoV1_t), SystemApiTable&gt;

    - *#include &lt;QairtSystemDlc.hpp&gt;*

Per-graph configuration options for a [SystemDlc::composeGraphs()](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#classqairt_1_1SystemDlc_1a17cd05a6c9050b800597358224cc6806) call.

Public Functions

- SystemDlcGraphConfigInfo() = default

    - 

- SystemDlcGraphConfigInfo(const [SystemDlcGraphConfigInfo](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt24SystemDlcGraphConfigInfo24SystemDlcGraphConfigInfoERK24SystemDlcGraphConfigInfo)&) = delete

    - 

- SystemDlcGraphConfigInfo([SystemDlcGraphConfigInfo](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt24SystemDlcGraphConfigInfo24SystemDlcGraphConfigInfoERR24SystemDlcGraphConfigInfo)&&) noexcept = default

    - 

- [SystemDlcGraphConfigInfo](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt24SystemDlcGraphConfigInfoE) &operator=(const [SystemDlcGraphConfigInfo](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt24SystemDlcGraphConfigInfoE)&) = delete

    - 

- [SystemDlcGraphConfigInfo](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt24SystemDlcGraphConfigInfoE) &operator=([SystemDlcGraphConfigInfo](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt24SystemDlcGraphConfigInfoE)&&) noexcept = default

    - 

- inline std::string &getGraphName()

    - Get the graph name for this configuration entry.

See also

[QairtSystemDlc\_GraphConfigInfo\_getGraphName](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemDlc_8h_1a29b3cef2c15e232a725dc3575be68da1)

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on invalid handle.

- Returns

    - The configured graph name string.

- inline const std::string &getGraphName() const

    - See also

[SystemDlcGraphConfigInfo::getGraphName()](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#classqairt_1_1SystemDlcGraphConfigInfo_1ae1e8e93182ca933dd99c278a9c6d5491)

- inline void setGraphName(const std::string &graphName)

    - Set the graph name for this configuration entry.

See also

[QairtSystemDlc\_GraphConfigInfo\_setGraphName](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemDlc_8h_1a7bd079d71aec5b69d8c7752d593f4c84)

- Parameters

    - **graphName** – **[in]** Name of the target graph.

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on invalid handle.

- inline void setGraphConfiguration(const [GraphConfiguration](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtGraph.html#_CPPv4N5qairt18GraphConfigurationE) &graphConfig)

    - Set the backend-specific graph configuration for this entry.

See also

[QairtSystemDlc\_GraphConfigInfo\_setGraphConfig](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemDlc_8h_1a55343e2761f0bb7b6eecf0f505827349)

- Parameters

    - **graphConfig** – **[in]** Handle to the backend-specific graph configuration.

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on invalid handle or invalid argument.

Public Members

- [QairtGraph\_ConfigHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtGraph.html#_CPPv425QairtGraph_ConfigHandle_t) m\_graphConfigHandle = {}

    - Raw graph configuration handle stored by [setGraphConfiguration()](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#classqairt_1_1SystemDlcGraphConfigInfo_1a6b0c992a697faa3fc9d6ac95b36b41ef).

Private Functions

- inline explicit SystemDlcGraphConfigInfo(const std::shared\_ptr&lt;SystemApiTable&gt; &apiTable)

    - 

- inline void prepareToCross() const

    - 

- inline void updateAfterCross() const

    -

Private Members

- friend SystemApi

    - 

- friend Api

    - 

- [detail](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtTypeTraits.html#_CPPv4N5qairt6detailE)::crossable&lt;std::string, &interface\_type::getGraphName, &interface\_type::setGraphName&gt; m\_graphName

    - Manages the graph name string, synchronized with the underlying C API handle.

- [detail](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtTypeTraits.html#_CPPv4N5qairt6detailE)::crossable&lt;[detail](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtTypeTraits.html#_CPPv4N5qairt6detailE)::set\_only&lt;[GraphConfiguration](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtGraph.html#_CPPv4N5qairt18GraphConfigurationE)&gt;, nullptr, &interface\_type::setGraphConfig&gt; m\_graphConfig

    - Manages the graph configuration handle passed to the underlying C API (write-only).

* * *

C++ wrapper for system logging.

**Include:** `#include "QairtCppApi/System/QairtSystemLog.hpp"`

C++ wrapper for the QAIRT System logging API.

A SystemApi must be created before constructing a SystemLog object.
    Copy to clipboard

- namespace qairt

    - - class SystemLog : public [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::ApiType&lt;[SystemLog](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt9SystemLogE), [QairtSystemLog\_V1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv419QairtSystemLog_V1_t), SystemApiTable&gt;

    - *#include &lt;QairtSystemLog.hpp&gt;*

Handle for a QAIRT system-library log sink.

Obtained via `SystemApi::makeShared<SystemLog>(callback, level)`.
    Copy to clipboard

Public Functions

- SystemLog() noexcept = default

    - 

- SystemLog(const [SystemLog](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt9SystemLog9SystemLogERK9SystemLog)&) = delete

    - 

- SystemLog([SystemLog](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt9SystemLog9SystemLogERR9SystemLog)&&) noexcept = default

    - 

- [SystemLog](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt9SystemLogE) &operator=(const [SystemLog](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt9SystemLogE)&) = delete

    - 

- [SystemLog](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt9SystemLogE) &operator=([SystemLog](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt9SystemLogE)&&) noexcept = default

    - 

- inline void setLogLevel([LogLevel](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv4N5qairt8LogLevelE) level)

    - Set the verbosity level for this system log instance.

See also

[QairtSystemLog\_setLogLevel](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemLog_8h_1aa25b991bfff18b95772faebcf832df4e)

- Parameters

    - **level** – **[in]** Maximum log verbosity.

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on invalid handle or invalid log level.

Private Functions

- inline SystemLog(const std::shared\_ptr&lt;SystemApiTable&gt; &apiTable, [LogCallback](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv4N5qairt11LogCallbackE) &&callback, [LogLevel](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv4N5qairt8LogLevelE) level, void \*userData = nullptr)

    - 

- inline SystemLog(const std::shared\_ptr&lt;SystemApiTable&gt; &apiTable, ApiTypeRef&lt;[LogCallback](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv4N5qairt11LogCallbackE)&gt; &&callback, [LogLevel](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv4N5qairt8LogLevelE) level, void \*userData = nullptr)

    -

Private Members

- friend SystemApi

    - 

- [LogCallback](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv4N5qairt11LogCallbackE) m\_callback

    - Callback function pointer for this log instance.

* * *

C++ wrapper for system profiling.

**Include:** `#include "QairtCppApi/System/QairtSystemProfile.hpp"`

C++ wrapper for the QAIRT System Profile API.

- namespace qairt

    - Enums

- enum class SystemProfileVisibility : std::underlying\_type\_t&lt;[QairtSystem\_Profile\_Visibility\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv432QairtSystem_Profile_Visibility_t)&gt;

    - Visibility classification for system profile events.

| Enumerator | Description |
| --- | --- |
| `Public` | Event is visible to all consumers. |
| `Private` | Event is internal and not exposed to consumers. |

*Values:*

- enumerator Public = [QAIRT\_SYSTEM\_PROFILE\_VISIBILITY\_PUBLIC](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv4N32QairtSystem_Profile_Visibility_t38QAIRT_SYSTEM_PROFILE_VISIBILITY_PUBLICE)

    - 

- enumerator Private = [QAIRT\_SYSTEM\_PROFILE\_VISIBILITY\_PRIVATE](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv4N32QairtSystem_Profile_Visibility_t39QAIRT_SYSTEM_PROFILE_VISIBILITY_PRIVATEE)

    -

- enum class SystemProfileMethodType : std::underlying\_type\_t&lt;[QairtSystem\_Profile\_MethodType\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv432QairtSystem_Profile_MethodType_t)&gt;

    - Operation type associated with a system profile event.

| Enumerator | Description |
| --- | --- |
| `None` | No specific operation type. |
| `BackendExecute` | [Backend](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtBackend.html#classqairt_1_1Backend) synchronous execute operation. |
| `BackendFinalize` | [Backend](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtBackend.html#classqairt_1_1Backend) finalize operation. |
| `BackendExecuteAsync` | [Backend](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtBackend.html#classqairt_1_1Backend) asynchronous execute operation. |
| `BackendCreateFromBinary` | [Backend](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtBackend.html#classqairt_1_1Backend) create-from-binary operation. |
| `BackendDeinit` | [Backend](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtBackend.html#classqairt_1_1Backend) deinitialization operation. |
| `AppContextCreate` | Application context creation operation. |
| `AppComposeGraphs` | Application compose-graphs operation. |
| `AppExecuteIps` | Application execute-IPS operation. |
| `BackendGraphComponent` | [Backend](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtBackend.html#classqairt_1_1Backend) graph component operation. |
| `BackendLibLoad` | Application backend library load operation. |
| `BackendApplyBinarySection` | [Backend](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtBackend.html#classqairt_1_1Backend) apply-binary-section operation. |
| `ContextFinalize` | [Context](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtContext.html#classqairt_1_1Context) finalize operation. |
| `ContextGetBinarySize` | [Context](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtContext.html#classqairt_1_1Context) get-binary-size operation. |
| `ContextGetBinary` | [Context](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtContext.html#classqairt_1_1Context) get-binary operation. |
| `ContextGetBinarySectionSize` | [Context](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtContext.html#classqairt_1_1Context) get-binary-section-size operation. |
| `BackendFinalizeTensorUpdates` | [Backend](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtBackend.html#classqairt_1_1Backend) finalize operation after tensor updates. |
| `BackendUpdateBinarySection` | [Backend](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtBackend.html#classqairt_1_1Backend) update-binary-section operation. |

*Values:*

- enumerator None = [QAIRT\_SYSTEM\_PROFILE\_METHOD\_TYPE\_NONE](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv4N32QairtSystem_Profile_MethodType_t37QAIRT_SYSTEM_PROFILE_METHOD_TYPE_NONEE)

    - 

- enumerator BackendExecute = [QAIRT\_SYSTEM\_PROFILE\_METHOD\_TYPE\_BACKEND\_EXECUTE](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv4N32QairtSystem_Profile_MethodType_t48QAIRT_SYSTEM_PROFILE_METHOD_TYPE_BACKEND_EXECUTEE)

    - 

- enumerator BackendFinalize = [QAIRT\_SYSTEM\_PROFILE\_METHOD\_TYPE\_BACKEND\_FINALIZE](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv4N32QairtSystem_Profile_MethodType_t49QAIRT_SYSTEM_PROFILE_METHOD_TYPE_BACKEND_FINALIZEE)

    - 

- enumerator BackendExecuteAsync = [QAIRT\_SYSTEM\_PROFILE\_METHOD\_TYPE\_BACKEND\_EXECUTE\_ASYNC](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv4N32QairtSystem_Profile_MethodType_t54QAIRT_SYSTEM_PROFILE_METHOD_TYPE_BACKEND_EXECUTE_ASYNCE)

    - 

- enumerator BackendCreateFromBinary = [QAIRT\_SYSTEM\_PROFILE\_METHOD\_TYPE\_BACKEND\_CREATE\_FROM\_BINARY](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv4N32QairtSystem_Profile_MethodType_t59QAIRT_SYSTEM_PROFILE_METHOD_TYPE_BACKEND_CREATE_FROM_BINARYE)

    - 

- enumerator BackendDeinit = [QAIRT\_SYSTEM\_PROFILE\_METHOD\_TYPE\_BACKEND\_DEINIT](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv4N32QairtSystem_Profile_MethodType_t47QAIRT_SYSTEM_PROFILE_METHOD_TYPE_BACKEND_DEINITE)

    - 

- enumerator AppContextCreate = [QAIRT\_SYSTEM\_PROFILE\_METHOD\_TYPE\_APP\_CONTEXT\_CREATE](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv4N32QairtSystem_Profile_MethodType_t51QAIRT_SYSTEM_PROFILE_METHOD_TYPE_APP_CONTEXT_CREATEE)

    - 

- enumerator AppComposeGraphs = [QAIRT\_SYSTEM\_PROFILE\_METHOD\_TYPE\_APP\_COMPOSE\_GRAPHS](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv4N32QairtSystem_Profile_MethodType_t51QAIRT_SYSTEM_PROFILE_METHOD_TYPE_APP_COMPOSE_GRAPHSE)

    - 

- enumerator AppExecuteIps = [QAIRT\_SYSTEM\_PROFILE\_METHOD\_TYPE\_APP\_EXECUTE\_IPS](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv4N32QairtSystem_Profile_MethodType_t48QAIRT_SYSTEM_PROFILE_METHOD_TYPE_APP_EXECUTE_IPSE)

    - 

- enumerator BackendGraphComponent = [QAIRT\_SYSTEM\_PROFILE\_METHOD\_TYPE\_BACKEND\_GRAPH\_COMPONENT](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv4N32QairtSystem_Profile_MethodType_t56QAIRT_SYSTEM_PROFILE_METHOD_TYPE_BACKEND_GRAPH_COMPONENTE)

    - 

- enumerator BackendLibLoad = [QAIRT\_SYSTEM\_PROFILE\_METHOD\_TYPE\_APP\_BACKEND\_LIB\_LOAD](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv4N32QairtSystem_Profile_MethodType_t53QAIRT_SYSTEM_PROFILE_METHOD_TYPE_APP_BACKEND_LIB_LOADE)

    - 

- enumerator BackendApplyBinarySection = [QAIRT\_SYSTEM\_PROFILE\_METHOD\_TYPE\_BACKEND\_APPLY\_BINARY\_SECTION](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv4N32QairtSystem_Profile_MethodType_t61QAIRT_SYSTEM_PROFILE_METHOD_TYPE_BACKEND_APPLY_BINARY_SECTIONE)

    - 

- enumerator ContextFinalize = [QAIRT\_SYSTEM\_PROFILE\_METHOD\_TYPE\_CONTEXT\_FINALIZE](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv4N32QairtSystem_Profile_MethodType_t49QAIRT_SYSTEM_PROFILE_METHOD_TYPE_CONTEXT_FINALIZEE)

    - 

- enumerator ContextGetBinarySize = [QAIRT\_SYSTEM\_PROFILE\_METHOD\_TYPE\_CONTEXT\_GET\_BINARY\_SIZE](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv4N32QairtSystem_Profile_MethodType_t56QAIRT_SYSTEM_PROFILE_METHOD_TYPE_CONTEXT_GET_BINARY_SIZEE)

    - 

- enumerator ContextGetBinary = [QAIRT\_SYSTEM\_PROFILE\_METHOD\_TYPE\_CONTEXT\_GET\_BINARY](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv4N32QairtSystem_Profile_MethodType_t51QAIRT_SYSTEM_PROFILE_METHOD_TYPE_CONTEXT_GET_BINARYE)

    - 

- enumerator ContextGetBinarySectionSize = [QAIRT\_SYSTEM\_PROFILE\_METHOD\_TYPE\_CONTEXT\_GET\_BINARY\_SECTION\_SIZE](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv4N32QairtSystem_Profile_MethodType_t64QAIRT_SYSTEM_PROFILE_METHOD_TYPE_CONTEXT_GET_BINARY_SECTION_SIZEE)

    - 

- enumerator BackendFinalizeTensorUpdates = [QAIRT\_SYSTEM\_PROFILE\_METHOD\_TYPE\_BACKEND\_FINALIZE\_TENSOR\_UPDATES](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv4N32QairtSystem_Profile_MethodType_t64QAIRT_SYSTEM_PROFILE_METHOD_TYPE_BACKEND_FINALIZE_TENSOR_UPDATESE)

    - 

- enumerator BackendUpdateBinarySection = [QAIRT\_SYSTEM\_PROFILE\_METHOD\_TYPE\_BACKEND\_UPDATE\_BINARY\_SECTION](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv4N32QairtSystem_Profile_MethodType_t62QAIRT_SYSTEM_PROFILE_METHOD_TYPE_BACKEND_UPDATE_BINARY_SECTIONE)

    -

- enum class SystemProfileEventDataType : std::underlying\_type\_t&lt;[QairtSystem\_Profile\_EventDataType\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv435QairtSystem_Profile_EventDataType_t)&gt;

    - Format of the data payload carried by a system profile event.

| Enumerator | Description |
| --- | --- |
| `EventData` | Standard event data payload. |
| `ExtendedEventData` | Extended event data with additional fields. |
| `Undefined` | Undefined or unrecognized data type. |

*Values:*

- enumerator EventData = [QAIRT\_SYSTEM\_PROFILE\_EVENT\_DATA](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv4N35QairtSystem_Profile_EventDataType_t31QAIRT_SYSTEM_PROFILE_EVENT_DATAE)

    - 

- enumerator ExtendedEventData = [QAIRT\_SYSTEM\_PROFILE\_EXTENDED\_EVENT\_DATA](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv4N35QairtSystem_Profile_EventDataType_t40QAIRT_SYSTEM_PROFILE_EXTENDED_EVENT_DATAE)

    - 

- enumerator Undefined = [QAIRT\_SYSTEM\_PROFILE\_EVENT\_DATA\_UNDEFINED](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv4N35QairtSystem_Profile_EventDataType_t41QAIRT_SYSTEM_PROFILE_EVENT_DATA_UNDEFINEDE)

    -

- enum class SystemProfileDataVersion : std::underlying\_type\_t&lt;[QairtSystem\_Profile\_DataVersion\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv433QairtSystem_Profile_DataVersion_t)&gt;

    - [Version](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtInfo.html#structqairt_1_1Version) of the profile data structure.

| Enumerator | Description |
| --- | --- |
| `V1` | [Profile](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtProfile.html#classqairt_1_1Profile) data conforms to version 1 layout. |
| `Undefined` | Undefined or unrecognized data version. |

*Values:*

- enumerator V1 = [QAIRT\_SYSTEM\_PROFILE\_DATA\_VERSION\_1](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv4N33QairtSystem_Profile_DataVersion_t35QAIRT_SYSTEM_PROFILE_DATA_VERSION_1E)

    - 

- enumerator Undefined = [QAIRT\_SYSTEM\_PROFILE\_DATA\_VERSION\_UNDEFINED](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv4N33QairtSystem_Profile_DataVersion_t43QAIRT_SYSTEM_PROFILE_DATA_VERSION_UNDEFINEDE)

    -

- class SystemProfileData : public [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::ApiType&lt;[SystemProfileData](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt17SystemProfileDataE), [QairtSystem\_Profile\_DataV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv428QairtSystem_Profile_DataV1_t), SystemApiTable&gt;

    - *#include &lt;QairtSystemProfile.hpp&gt;*

versioned container for profile data payloads.

Obtained via `SystemApi::make<SystemProfileData>()`. Wraps a versioned
       profile data record (currently SystemProfileDataV1) for transport to a
       SystemProfileSerializationTarget. The container handle is freed
       automatically when this object is destroyed.
    Copy to clipboard

Public Functions

- inline [SystemProfileDataVersion](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt24SystemProfileDataVersionE) getVersion() const

    - Get the profile data version carried by this container.

See also

[QairtSystem\_Profile\_Data\_getVersion](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemProfile_8h_1a8acc66fbf6d92acc5cd6526c8d48c9d8)

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on invalid handle.

- Returns

    - The data version enumerator.

- inline void setProfileDataV1(const [SystemProfileDataV1](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt19SystemProfileDataV1E) &profileData)

    - Set the version 1 profile data payload for this container.

See also

[QairtSystem\_Profile\_Data\_setProfileDataV1](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemProfile_8h_1aaec7f15a8e009fb96090ebfd27f8b4c0)

- Parameters

    - **profileData** – **[in]** [Version](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtInfo.html#structqairt_1_1Version) 1 profile data record to associate.

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on invalid handle or invalid argument.

- inline [SystemProfileDataV1](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt19SystemProfileDataV1E) &getProfileDataV1()

    - Get the version 1 profile data payload from this container.

See also

[QairtSystem\_Profile\_Data\_getProfileDataV1](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemProfile_8h_1a100de9f8cdc8e3ebc2c401691bcf2ef0)

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on invalid handle.

- Returns

    - Reference to the associated [SystemProfileDataV1](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#classqairt_1_1SystemProfileDataV1) record.

- inline const [SystemProfileDataV1](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt19SystemProfileDataV1E) &getProfileDataV1() const

    - Wrapper which allows for const access to the version 1 profile data payload.

See also

[SystemProfileData::getProfileDataV1()](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#classqairt_1_1SystemProfileData_1a141c85ccbfbdfbf0c65f0d7f282117dc)

- template&lt;typename T, typename U, typename V&gt;  
inline ApiType(const [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt17SystemProfileData7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE)&lt;[T](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt17SystemProfileData7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE), [U](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt17SystemProfileData7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE), [V](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt17SystemProfileData7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE)&gt; &parent, [detail](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtTypeTraits.html#_CPPv4N5qairt6detailE)::non\_owning\_handle&lt;handle\_type&gt; noh)

    - 

- inline explicit ApiType(const std::shared\_ptr&lt;T\_Table&gt; &apiTable)

    - 

- inline ApiType(copy\_table\_tag\_t, const [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt17SystemProfileData7ApiTypeE16copy_table_tag_tRK7ApiType) &other)

    - 

- ApiType() noexcept = default

    - 

- ApiType(const [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt17SystemProfileData7ApiTypeERK7ApiType)&) = delete

    - 

- ApiType([ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt17SystemProfileData7ApiTypeERR7ApiType)&&) noexcept = default

    - 

- [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt17SystemProfileData7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE) &operator=(const [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt17SystemProfileData7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE)&) = delete

    - 

- [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt17SystemProfileData7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE) &operator=([ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt17SystemProfileData7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE)&&) noexcept = default

    -

Private Functions

- inline void prepareToCross() const

    - 

- inline void updateAfterCross() const

    - 

- inline explicit SystemProfileData(const std::shared\_ptr&lt;SystemApiTable&gt; &apiTable)

    -

Private Members

- friend SystemApi

    - 

- [detail](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtTypeTraits.html#_CPPv4N5qairt6detailE)::crossable&lt;[detail](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtTypeTraits.html#_CPPv4N5qairt6detailE)::non\_owning&lt;[SystemProfileDataV1](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt19SystemProfileDataV1E)&gt;, &interface\_type::getProfileDataV1, &interface\_type::setProfileDataV1&gt; m\_profileDataV1

    - [Version](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtInfo.html#structqairt_1_1Version) 1 profile data payload carried by this data container.

- class SystemProfileDataV1 : public [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::ApiType&lt;[SystemProfileDataV1](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt19SystemProfileDataV1E), [QairtSystem\_Profile\_ProfileDataV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv435QairtSystem_Profile_ProfileDataV1_t), SystemApiTable&gt;

    - *#include &lt;QairtSystemProfile.hpp&gt;*

handle for a version-1 system profile data record.

Obtained via `SystemApi::make<SystemProfileDataV1>()`. Aggregates a
       SystemProfileHeaderV1 and an ordered list of SystemProfileEventV1 records
       for one profiling session.
    Copy to clipboard

Public Functions

- inline void setHeader(const [SystemProfileHeaderV1](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt21SystemProfileHeaderV1E) &header)

    - Set the profile header for this profile data record.

See also

[QairtSystem\_Profile\_ProfileData\_setHeader](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemProfile_8h_1accd393343aec394d4fa37474899b93b9)

- Parameters

    - **header** – **[in]** [Profile](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtProfile.html#classqairt_1_1Profile) header to associate with this record.

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on invalid handle or invalid argument.

- inline [SystemProfileHeaderV1](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt21SystemProfileHeaderV1E) &getHeader()

    - Get the profile header associated with this profile data record.

See also

[QairtSystem\_Profile\_ProfileData\_getHeader](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemProfile_8h_1a6cba6c4cba242576d0a2a931a4ef3955)

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on invalid handle.

- Returns

    - Reference to the associated [SystemProfileHeaderV1](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#classqairt_1_1SystemProfileHeaderV1).

- inline const [SystemProfileHeaderV1](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt21SystemProfileHeaderV1E) &getHeader() const

    - Wrapper which allows for const access to the profile header.

See also

[SystemProfileDataV1::getHeader()](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#classqairt_1_1SystemProfileDataV1_1a899c6d19f5abe72409cb18eb3addcfc5)

- inline void setEvents(std::vector&lt;[SystemProfileEventV1](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt20SystemProfileEventV1E)&gt; &&events)

    - Replace the entire profiling event list for this profile data record.

See also

[QairtSystem\_Profile\_ProfileData\_setEvents](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemProfile_8h_1ac6cf4b7c0e872c7bfab3dc07f05bd818)

- Parameters

    - **events** – **[in]** Replacement event vector. Ownership is transferred.

- inline std::vector&lt;[SystemProfileEventV1](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt20SystemProfileEventV1E)&gt; &getEvents()

    - Get the list of profiling events for this profile data record.

See also

[QairtSystem\_Profile\_ProfileData\_getNumProfilingEvents](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemProfile_8h_1a3bcfd978665d8b3616a846dda4583f9c)

- Returns

    - Reference to the event vector.

Note

Releasing this profile data handle invalidates memory returned by [getEvents()](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#classqairt_1_1SystemProfileDataV1_1a42a9c77042b6015d44ac465cfe63f049).

- inline const std::vector&lt;[SystemProfileEventV1](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt20SystemProfileEventV1E)&gt; &getEvents() const

    - Wrapper which allows for const access to the profiling event list.

See also

[SystemProfileDataV1::getEvents()](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#classqairt_1_1SystemProfileDataV1_1a42a9c77042b6015d44ac465cfe63f049)

- inline void addEvent([SystemProfileEventV1](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt20SystemProfileEventV1E) &&event)

    - Append a profiling event to this profile data record.

See also

[QairtSystem\_Profile\_ProfileData\_addEvent](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemProfile_8h_1a4630f8b1e4e8878c95323f85712811ef)

- Parameters

    - **event** – **[in]** [Profile](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtProfile.html#classqairt_1_1Profile) event to append. Ownership is transferred.

- template&lt;typename T, typename U, typename V&gt;  
inline ApiType(const [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt19SystemProfileDataV17ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE)&lt;[T](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt19SystemProfileDataV17ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE), [U](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt19SystemProfileDataV17ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE), [V](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt19SystemProfileDataV17ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE)&gt; &parent, [detail](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtTypeTraits.html#_CPPv4N5qairt6detailE)::non\_owning\_handle&lt;handle\_type&gt; noh)

    - 

- inline explicit ApiType(const std::shared\_ptr&lt;T\_Table&gt; &apiTable)

    - 

- inline ApiType(copy\_table\_tag\_t, const [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt19SystemProfileDataV17ApiTypeE16copy_table_tag_tRK7ApiType) &other)

    - 

- ApiType() noexcept = default

    - 

- ApiType(const [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt19SystemProfileDataV17ApiTypeERK7ApiType)&) = delete

    - 

- ApiType([ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt19SystemProfileDataV17ApiTypeERR7ApiType)&&) noexcept = default

    - 

- [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt19SystemProfileDataV17ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE) &operator=(const [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt19SystemProfileDataV17ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE)&) = delete

    - 

- [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt19SystemProfileDataV17ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE) &operator=([ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt19SystemProfileDataV17ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE)&&) noexcept = default

    -

Private Functions

- inline void prepareToCross() const

    - 

- inline void updateAfterCross() const

    - 

- inline explicit SystemProfileDataV1(const std::shared\_ptr&lt;SystemApiTable&gt; &apiTable)

    -

Private Members

- friend SystemApi

    - 

- friend Api

    - 

- [detail](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtTypeTraits.html#_CPPv4N5qairt6detailE)::crossable&lt;[detail](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtTypeTraits.html#_CPPv4N5qairt6detailE)::non\_owning&lt;[SystemProfileHeaderV1](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt21SystemProfileHeaderV1E)&gt;, &interface\_type::getHeader, &interface\_type::setHeader&gt; m\_header

    - [Profile](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtProfile.html#classqairt_1_1Profile) header associated with this profile data record.

- mutable std::vector&lt;[SystemProfileEventV1](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt20SystemProfileEventV1E)&gt; m\_events

    - Profiling events contained in this profile data record.

- class SystemProfileEventV1 : public [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::ApiType&lt;[SystemProfileEventV1](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt20SystemProfileEventV1E), [QairtSystem\_Profile\_EventV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv429QairtSystem_Profile_EventV1_t), SystemApiTable&gt;

    - *#include &lt;QairtSystemProfile.hpp&gt;*

handle for a single system profile event record.

Obtained via `SystemApi::make<SystemProfileEventV1>()`. Carries an
       event data payload and an optional list of nested sub-events. The
    Copy to clipboard

Public Functions

- inline SystemProfileEventV1(const std::shared\_ptr&lt;SystemApiTable&gt; &apiTable, [QairtSystem\_Profile\_EventHandle\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv433QairtSystem_Profile_EventHandle_t) handle)

    - Construct a system profile event from an existing C API event handle.

Used internally to wrap handles returned by getSubEventAt() and getEventAt().

- Parameters

    - - **apiTable** – **[in]** System API table for this event.
- **handle** – **[in]** Existing C API event handle to adopt.

- inline [SystemProfileEventDataType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt26SystemProfileEventDataTypeE) getEventDataType() const

    - Get the event data format classification for this profile event.

See also

[QairtSystem\_Profile\_Event\_getEventDataType](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemProfile_8h_1a260db565c30e2ef7ab608177874b7dd9)

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on invalid handle.

- Returns

    - The event data type enumerator.

- inline void setEventData(const [ProfileEventData](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtProfile.html#_CPPv4N5qairt16ProfileEventDataE) &eventData)

    - Set the event data payload for this profile event.

See also

[QairtSystem\_Profile\_Event\_setEventData](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemProfile_8h_1abae0898bfed56fadb01152a3e79ee27a)

- Parameters

    - **eventData** – **[in]** [Profile](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtProfile.html#classqairt_1_1Profile) event data to associate with this event.

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on invalid handle or invalid argument.

- inline [ProfileEventData](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtProfile.html#_CPPv4N5qairt16ProfileEventDataE) &getEventData()

    - Get the event data payload associated with this profile event.

See also

[QairtSystem\_Profile\_Event\_getEventData](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemProfile_8h_1a09dd35c5fe86552f78dd7276cd2accf0)

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on invalid handle.

- Returns

    - Reference to the associated [ProfileEventData](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtProfile.html#classqairt_1_1ProfileEventData).

- inline const [ProfileEventData](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtProfile.html#_CPPv4N5qairt16ProfileEventDataE) &getEventData() const

    - Wrapper which allows for const access to the event data payload.

See also

[SystemProfileEventV1::getEventData()](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#classqairt_1_1SystemProfileEventV1_1a53fb94ca69af0635074ac453c2440eeb)

- inline void addSubEvent([SystemProfileEventV1](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt20SystemProfileEventV1E) &&subEvent)

    - Append a sub-event to this profile event’s sub-event list.

See also

[QairtSystem\_Profile\_Event\_addSubEvent](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemProfile_8h_1a832d17a8e0d4355398f6f92e039acca3)

- Parameters

    - **subEvent** – **[in]** Sub-event to append. Ownership is transferred.

- inline std::vector&lt;[SystemProfileEventV1](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt20SystemProfileEventV1E)&gt; &getSubEventData()

    - Get the list of sub-events for this profile event.

See also

[QairtSystem\_Profile\_Event\_getNumSubEvents](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemProfile_8h_1a89c8c469ae1fda478d9f4e8d30ea8235)

- Returns

    - Reference to the sub-event vector.

- inline const std::vector&lt;[SystemProfileEventV1](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt20SystemProfileEventV1E)&gt; &getSubEventData() const

    - Wrapper which allows for const access to the sub-event list.

See also

[SystemProfileEventV1::getSubEventData()](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#classqairt_1_1SystemProfileEventV1_1a451c27e2f881f6e8975d054e21d7c790)

- inline void setSubEventData(std::vector&lt;[SystemProfileEventV1](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt20SystemProfileEventV1E)&gt; &&subEvents)

    - Replace the entire sub-event list for this profile event.

See also

[QairtSystem\_Profile\_Event\_setSubEventData](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemProfile_8h_1a50e2f1958007470e119fc5b44469f913)

- Parameters

    - **subEvents** – **[in]** Replacement sub-event vector. Ownership is transferred.

- template&lt;typename T, typename U, typename V&gt;  
inline ApiType(const [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt20SystemProfileEventV17ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE)&lt;[T](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt20SystemProfileEventV17ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE), [U](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt20SystemProfileEventV17ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE), [V](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt20SystemProfileEventV17ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE)&gt; &parent, [detail](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtTypeTraits.html#_CPPv4N5qairt6detailE)::non\_owning\_handle&lt;handle\_type&gt; noh)

    - 

- inline explicit ApiType(const std::shared\_ptr&lt;T\_Table&gt; &apiTable)

    - 

- inline ApiType(copy\_table\_tag\_t, const [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt20SystemProfileEventV17ApiTypeE16copy_table_tag_tRK7ApiType) &other)

    - 

- ApiType() noexcept = default

    - 

- ApiType(const [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt20SystemProfileEventV17ApiTypeERK7ApiType)&) = delete

    - 

- ApiType([ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt20SystemProfileEventV17ApiTypeERR7ApiType)&&) noexcept = default

    - 

- [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt20SystemProfileEventV17ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE) &operator=(const [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt20SystemProfileEventV17ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE)&) = delete

    - 

- [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt20SystemProfileEventV17ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE) &operator=([ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt20SystemProfileEventV17ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE)&&) noexcept = default

    -

Private Functions

- inline void prepareToCross() const

    - 

- inline void updateAfterCross() const

    - 

- inline explicit SystemProfileEventV1(const std::shared\_ptr&lt;SystemApiTable&gt; &apiTable)

    -

Private Members

- friend SystemApi

    - 

- [detail](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtTypeTraits.html#_CPPv4N5qairt6detailE)::crossable&lt;[detail](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtTypeTraits.html#_CPPv4N5qairt6detailE)::non\_owning&lt;[ProfileEventData](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtProfile.html#_CPPv4N5qairt16ProfileEventDataE)&gt;, &interface\_type::getEventData, &interface\_type::setEventData&gt; m\_eventData

    - [Profile](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtProfile.html#classqairt_1_1Profile) event data associated with this system profile event.

- mutable std::vector&lt;[SystemProfileEventV1](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt20SystemProfileEventV1E)&gt; m\_subEvents

    - Nested sub-events belonging to this event.

- class SystemProfileHeaderV1 : public [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::ApiType&lt;[SystemProfileHeaderV1](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt21SystemProfileHeaderV1E), [QairtSystem\_Profile\_HeaderV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv430QairtSystem_Profile_HeaderV1_t), SystemApiTable&gt;

    - *#include &lt;QairtSystemProfile.hpp&gt;*

Handle for a single system profile event header.

Obtained via `SystemApi::make<SystemProfileHeaderV1>()`.
    Copy to clipboard

Public Functions

- inline uint64\_t getStartTime() const

    - Get the profiling interval start timestamp.

See also

[QairtSystem\_Profile\_Header\_getStartTime](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemProfile_8h_1ae3dd7311ccf3ed52320dcd897d7d630b)

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on invalid handle.

- Returns

    - Start time in microseconds.

- inline void setStartTime(uint64\_t startTime)

    - Set the profiling interval start timestamp.

See also

[QairtSystem\_Profile\_Header\_setStartTime](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemProfile_8h_1ab9ca8041bbef3746a90dac7e7bd65c52)

- Parameters

    - **startTime** – **[in]** Start time in microseconds.

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on invalid handle.

- inline uint64\_t getStopTime() const

    - Get the profiling interval stop timestamp.

See also

[QairtSystem\_Profile\_Header\_getStopTime](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemProfile_8h_1aed35350362db6502ce807f4d47033870)

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on invalid handle.

- Returns

    - Stop time in microseconds.

- inline void setStopTime(uint64\_t stopTime)

    - Set the profiling interval stop timestamp.

See also

[QairtSystem\_Profile\_Header\_setStopTime](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemProfile_8h_1a2d97cf2c8fa6d7db51895c7e81e9b070)

- Parameters

    - **stopTime** – **[in]** Stop time in microseconds.

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on invalid handle.

- inline uint64\_t getStartMem() const

    - Get the memory usage at the start of the profiling interval.

See also

[QairtSystem\_Profile\_Header\_getStartMem](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemProfile_8h_1aa5cdb57b54aa8b1490b2bbf82dbbce38)

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on invalid handle.

- Returns

    - Start memory in bytes.

- inline void setStartMem(uint64\_t startMem)

    - Set the memory usage at the start of the profiling interval.

See also

[QairtSystem\_Profile\_Header\_setStartMem](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemProfile_8h_1a2ebb7ed50ba8ba764eb54a04687ed5d2)

- Parameters

    - **startMem** – **[in]** Start memory in bytes.

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on invalid handle.

- inline uint64\_t getStopMem() const

    - Get the memory usage at the end of the profiling interval.

See also

[QairtSystem\_Profile\_Header\_getStopMem](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemProfile_8h_1ac48f31d4c61fbd41c6b902574fbb5488)

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on invalid handle.

- Returns

    - Stop memory in bytes.

- inline void setStopMem(uint64\_t stopMem)

    - Set the memory usage at the end of the profiling interval.

See also

[QairtSystem\_Profile\_Header\_setStopMem](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemProfile_8h_1a65a5005e693e005f97781467595f5954)

- Parameters

    - **stopMem** – **[in]** Stop memory in bytes.

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on invalid handle.

- inline [SystemProfileMethodType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt23SystemProfileMethodTypeE) getMethodType() const

    - Get the operation type associated with this profiling interval.

See also

[QairtSystem\_Profile\_Header\_getMethodType](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemProfile_8h_1a6d05f85c4cfd404268ad1bdc05650f38)

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on invalid handle.

- Returns

    - The method type enumerator for this header.

- inline void setMethodType([SystemProfileMethodType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt23SystemProfileMethodTypeE) methodType)

    - Set the operation type associated with this profiling interval.

See also

[QairtSystem\_Profile\_Header\_setMethodType](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemProfile_8h_1ad2611d77864b1a474a2959b3d55bf071)

- Parameters

    - **methodType** – **[in]** Method type enumerator.

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on invalid handle.

- inline [SystemProfileVisibility](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt23SystemProfileVisibilityE) getVisibility() const

    - Get the visibility classification for this profiling interval.

See also

[QairtSystem\_Profile\_Header\_getVisibility](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemProfile_8h_1a459f16b3b45b8ae6102a8c8e0aa348f8)

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on invalid handle.

- Returns

    - The visibility enumerator for this header.

- inline void setVisibility([SystemProfileVisibility](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt23SystemProfileVisibilityE) visibility)

    - Set the visibility classification for this profiling interval.

See also

[QairtSystem\_Profile\_Header\_setVisibility](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemProfile_8h_1acb0cfe3799b2ab095522d5424e032500)

- Parameters

    - **visibility** – **[in]** Visibility enumerator.

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on invalid handle.

- inline std::string &getGraphName()

    - Get the graph name associated with this profiling interval.

See also

[QairtSystem\_Profile\_Header\_getGraphName](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemProfile_8h_1a91b9e6f3067137edfaef5d7eddd8c94e)

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on invalid handle.

- Returns

    - The graph name string.

- inline const std::string &getGraphName() const

    - Wrapper which allows for const access to the graph name string.

See also

[SystemProfileHeaderV1::getGraphName()](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#classqairt_1_1SystemProfileHeaderV1_1a5fc59966d9ac754244e51e583a1d1941)

- inline void setGraphName(const std::string &graphName)

    - Set the graph name associated with this profiling interval.

See also

[QairtSystem\_Profile\_Header\_setGraphName](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemProfile_8h_1a21b8fc430b0609cf7944bc0ced7b7d91)

- Parameters

    - **graphName** – **[in]** Name of the graph.

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on invalid handle.

- template&lt;typename T, typename U, typename V&gt;  
inline ApiType(const [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt21SystemProfileHeaderV17ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE)&lt;[T](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt21SystemProfileHeaderV17ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE), [U](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt21SystemProfileHeaderV17ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE), [V](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt21SystemProfileHeaderV17ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE)&gt; &parent, [detail](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtTypeTraits.html#_CPPv4N5qairt6detailE)::non\_owning\_handle&lt;handle\_type&gt; noh)

    - 

- inline explicit ApiType(const std::shared\_ptr&lt;T\_Table&gt; &apiTable)

    - 

- inline ApiType(copy\_table\_tag\_t, const [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt21SystemProfileHeaderV17ApiTypeE16copy_table_tag_tRK7ApiType) &other)

    - 

- ApiType() noexcept = default

    - 

- ApiType(const [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt21SystemProfileHeaderV17ApiTypeERK7ApiType)&) = delete

    - 

- ApiType([ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt21SystemProfileHeaderV17ApiTypeERR7ApiType)&&) noexcept = default

    - 

- [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt21SystemProfileHeaderV17ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE) &operator=(const [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt21SystemProfileHeaderV17ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE)&) = delete

    - 

- [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt21SystemProfileHeaderV17ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE) &operator=([ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt21SystemProfileHeaderV17ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE)&&) noexcept = default

    -

Private Functions

- inline void prepareToCross() const

    - 

- inline void updateAfterCross() const

    - 

- inline explicit SystemProfileHeaderV1(const std::shared\_ptr&lt;SystemApiTable&gt; &apiTable)

    -

Private Members

- friend SystemApi

    - 

- friend Api

    - 

- [detail](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtTypeTraits.html#_CPPv4N5qairt6detailE)::crossable&lt;std::string, &interface\_type::getGraphName, &interface\_type::setGraphName&gt; m\_graphName

    - [Graph](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtGraph.html#classqairt_1_1Graph) name string, managed across the C API boundary.

- class SystemProfileSerializationFileHeader : public [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::ApiType&lt;[SystemProfileSerializationFileHeader](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt36SystemProfileSerializationFileHeaderE), [QairtSystem\_Profile\_SerializationFileHeaderV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv447QairtSystem_Profile_SerializationFileHeaderV1_t), SystemApiTable&gt;

    - *#include &lt;QairtSystemProfile.hpp&gt;*

handle for the file-level metadata written at the top of a serialized profile file.

Obtained via `SystemApi::make<SystemProfileSerializationFileHeader>()`. Stores the
       application name, application version, and backend version strings that appear
       in the profile output file. The handle is
    Copy to clipboard

Public Functions

- inline const std::string &getAppName() const

    - Get the application name stored in this serialization file header.

See also

[QairtSystem\_Profile\_SerializationFileHeader\_getAppName](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemProfile_8h_1afde27a46047cdf23205dad3ba6a8198d)

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on invalid handle.

- Returns

    - The application name string.

- inline void setAppName(const std::string &appName)

    - Set the application name in this serialization file header.

See also

[QairtSystem\_Profile\_SerializationFileHeader\_setAppName](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemProfile_8h_1af747bb587c1127d4f8258e51b210441d)

- Parameters

    - **appName** – **[in]** Application name string.

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on invalid handle or NULL argument.

- inline const std::string &getAppVersion() const

    - Get the application version stored in this serialization file header.

See also

[QairtSystem\_Profile\_SerializationFileHeader\_getAppVersion](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemProfile_8h_1ac19f5c88691efd3e113fb02e9dec8ebb)

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on invalid handle.

- Returns

    - The application version string.

- inline void setAppVersion(const std::string &appVersion)

    - Set the application version in this serialization file header.

See also

[QairtSystem\_Profile\_SerializationFileHeader\_setAppVersion](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemProfile_8h_1a886fc5aeac722daccfbdeb8cff9b8989)

- Parameters

    - **appVersion** – **[in]** Application version string.

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on invalid handle or NULL argument.

- inline const std::string &getBackendVersion() const

    - Get the backend version stored in this serialization file header.

See also

[QairtSystem\_Profile\_SerializationFileHeader\_getBackendVersion](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemProfile_8h_1adea19eb611f9d775de83cd56147154ff)

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on invalid handle.

- Returns

    - The backend version string.

- inline void setBackendVersion(const std::string &backendVersion)

    - Set the backend version in this serialization file header.

See also

[QairtSystem\_Profile\_SerializationFileHeader\_setBackendVersion](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemProfile_8h_1a68e365f2a857b2eb91f2b4930d00306c)

- Parameters

    - **backendVersion** – **[in]** [Backend](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtBackend.html#classqairt_1_1Backend) version string.

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on invalid handle or NULL argument.

- template&lt;typename T, typename U, typename V&gt;  
inline ApiType(const [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt36SystemProfileSerializationFileHeader7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE)&lt;[T](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt36SystemProfileSerializationFileHeader7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE), [U](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt36SystemProfileSerializationFileHeader7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE), [V](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt36SystemProfileSerializationFileHeader7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE)&gt; &parent, [detail](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtTypeTraits.html#_CPPv4N5qairt6detailE)::non\_owning\_handle&lt;handle\_type&gt; noh)

    - 

- inline explicit ApiType(const std::shared\_ptr&lt;T\_Table&gt; &apiTable)

    - 

- inline ApiType(copy\_table\_tag\_t, const [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt36SystemProfileSerializationFileHeader7ApiTypeE16copy_table_tag_tRK7ApiType) &other)

    - 

- ApiType() noexcept = default

    - 

- ApiType(const [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt36SystemProfileSerializationFileHeader7ApiTypeERK7ApiType)&) = delete

    - 

- ApiType([ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt36SystemProfileSerializationFileHeader7ApiTypeERR7ApiType)&&) noexcept = default

    - 

- [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt36SystemProfileSerializationFileHeader7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE) &operator=(const [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt36SystemProfileSerializationFileHeader7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE)&) = delete

    - 

- [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt36SystemProfileSerializationFileHeader7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE) &operator=([ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt36SystemProfileSerializationFileHeader7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE)&&) noexcept = default

    -

Private Functions

- inline void prepareToCross() const

    - 

- inline void updateAfterCross() const

    - 

- inline explicit SystemProfileSerializationFileHeader(const std::shared\_ptr&lt;SystemApiTable&gt; &apiTable)

    -

Private Members

- friend SystemApi

    - 

- friend Api

    - 

- [detail](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtTypeTraits.html#_CPPv4N5qairt6detailE)::crossable&lt;std::string, &interface\_type::getAppName, &interface\_type::setAppName&gt; m\_appName

    - Application name written into the serialization file header.

- [detail](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtTypeTraits.html#_CPPv4N5qairt6detailE)::crossable&lt;std::string, &interface\_type::getAppVersion, &interface\_type::setAppVersion&gt; m\_appVersion

    - Application version string written into the serialization file header.

- [detail](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtTypeTraits.html#_CPPv4N5qairt6detailE)::crossable&lt;std::string, &interface\_type::getBackendVersion, &interface\_type::setBackendVersion&gt; m\_backendVersion

    - [Backend](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtBackend.html#classqairt_1_1Backend) version string written into the serialization file header.

- class SystemProfileSerializationTarget : public [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::ApiType&lt;[SystemProfileSerializationTarget](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt32SystemProfileSerializationTargetE), [QairtSystem\_Profile\_SerializationTargetV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv443QairtSystem_Profile_SerializationTargetV1_t), SystemApiTable&gt;

    - *#include &lt;QairtSystemProfile.hpp&gt;*

handle for a profile data serialization target.

Obtained via `SystemApi::make<SystemProfileSerializationTarget>(info, config)`.
       Call serializeEventData() to write a collection of SystemProfileData records
       to the configured output destination.
    Copy to clipboard

Public Functions

- inline void serializeEventData(std::vector&lt;[SystemProfileData](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt17SystemProfileDataE)&gt; &eventData)

    - Serialize a collection of profile data records to the configured output destination.

Writes each [SystemProfileData](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#classqairt_1_1SystemProfileData) record in *eventData* to the destination specified when this target was created. The output format and destination are determined by the [SystemProfileSerializationTargetInfo](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#classqairt_1_1SystemProfileSerializationTargetInfo) and [SystemProfileSerializationTargetConfiguration](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#classqairt_1_1SystemProfileSerializationTargetConfiguration) passed to the constructor.

See also

[QairtSystem\_Profile\_SerializationTarget\_serializeEventData](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemProfile_8h_1af9708b124d3839f89357a66e5b65d28d)

- Parameters

    - **eventData** – **[in]** [Profile](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtProfile.html#classqairt_1_1Profile) data records to serialize. Must be non-empty.

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on:

- invalid handle
- empty or NULL event data array
- serialization failure

- template&lt;typename T, typename U, typename V&gt;  
inline ApiType(const [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt32SystemProfileSerializationTarget7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE)&lt;[T](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt32SystemProfileSerializationTarget7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE), [U](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt32SystemProfileSerializationTarget7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE), [V](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt32SystemProfileSerializationTarget7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE)&gt; &parent, [detail](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtTypeTraits.html#_CPPv4N5qairt6detailE)::non\_owning\_handle&lt;handle\_type&gt; noh)

    - 

- inline explicit ApiType(const std::shared\_ptr&lt;T\_Table&gt; &apiTable)

    - 

- inline ApiType(copy\_table\_tag\_t, const [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt32SystemProfileSerializationTarget7ApiTypeE16copy_table_tag_tRK7ApiType) &other)

    - 

- ApiType() noexcept = default

    - 

- ApiType(const [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt32SystemProfileSerializationTarget7ApiTypeERK7ApiType)&) = delete

    - 

- ApiType([ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt32SystemProfileSerializationTarget7ApiTypeERR7ApiType)&&) noexcept = default

    - 

- [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt32SystemProfileSerializationTarget7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE) &operator=(const [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt32SystemProfileSerializationTarget7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE)&) = delete

    - 

- [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt32SystemProfileSerializationTarget7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE) &operator=([ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt32SystemProfileSerializationTarget7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE)&&) noexcept = default

    -

Private Functions

- inline void prepareToCross() const

    - 

- inline void updateAfterCross() const

    - 

- inline SystemProfileSerializationTarget(const std::shared\_ptr&lt;SystemApiTable&gt; &apiTable, const [SystemProfileSerializationTargetInfo](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt36SystemProfileSerializationTargetInfoE) &info, const [SystemProfileSerializationTargetConfiguration](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt45SystemProfileSerializationTargetConfigurationE) &config)

    -

Private Members

- friend SystemApi

    -

- class SystemProfileSerializationTargetConfiguration : public [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::ApiType&lt;[SystemProfileSerializationTargetConfiguration](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt45SystemProfileSerializationTargetConfigurationE), [QairtSystem\_Profile\_SerializationTargetConfigurationV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv456QairtSystem_Profile_SerializationTargetConfigurationV1_t), SystemApiTable&gt;

    - *#include &lt;QairtSystemProfile.hpp&gt;*

handle for the configuration options of a profile serialization target.

Obtained via `SystemApi::make<SystemProfileSerializationTargetConfiguration>()`.
       Specifies the maximum number of messages and the file header for a
       serialization target. The handle is
    Copy to clipboard

Public Functions

- inline void setMaxNumMessages(uint32\_t maxNumMessages)

    - Set the maximum number of messages this serialization target will write.

See also

[QairtSystem\_Profile\_SerializationTargetConfiguration\_setMaxNumMessages](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemProfile_8h_1ac4b5a221ffff2c0874ae1dc2a89c8097)

- Parameters

    - **maxNumMessages** – **[in]** Maximum number of messages.

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on invalid handle.

- inline uint32\_t getMaxNumMessages() const

    - Get the maximum number of messages this serialization target will write.

See also

[QairtSystem\_Profile\_SerializationTargetConfiguration\_getMaxNumMessages](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemProfile_8h_1ac210f641f186e6b74dedcc8ddc5172eb)

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on invalid handle.

- Returns

    - Maximum message count.

- inline void setFileHeader(const [SystemProfileSerializationFileHeader](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt36SystemProfileSerializationFileHeaderE) &fileHeader)

    - Set the serialization file header for this target configuration.

See also

[QairtSystem\_Profile\_SerializationTargetConfiguration\_setFileHeader](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemProfile_8h_1a34f0358de455c8940e1e63a19e713808)

- Parameters

    - **fileHeader** – **[in]** Serialization file header to associate.

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on invalid handle or invalid argument.

- inline [SystemProfileSerializationFileHeader](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt36SystemProfileSerializationFileHeaderE) &getFileHeader()

    - Get the serialization file header associated with this target configuration.

See also

[QairtSystem\_Profile\_SerializationTargetConfiguration\_getFileHeader](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemProfile_8h_1aaa60bb4774ddc322d7f9cde7c10fe5cb)

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on invalid handle.

- Returns

    - Reference to the associated [SystemProfileSerializationFileHeader](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#classqairt_1_1SystemProfileSerializationFileHeader).

- inline const [SystemProfileSerializationFileHeader](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt36SystemProfileSerializationFileHeaderE) &getFileHeader() const

    - Wrapper which allows for const access to the serialization file header.

See also

[SystemProfileSerializationTargetConfiguration::getFileHeader()](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#classqairt_1_1SystemProfileSerializationTargetConfiguration_1a8da77e59246e55210913fe3589e9854b)

- template&lt;typename T, typename U, typename V&gt;  
inline ApiType(const [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt45SystemProfileSerializationTargetConfiguration7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE)&lt;[T](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt45SystemProfileSerializationTargetConfiguration7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE), [U](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt45SystemProfileSerializationTargetConfiguration7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE), [V](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt45SystemProfileSerializationTargetConfiguration7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE)&gt; &parent, [detail](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtTypeTraits.html#_CPPv4N5qairt6detailE)::non\_owning\_handle&lt;handle\_type&gt; noh)

    - 

- inline explicit ApiType(const std::shared\_ptr&lt;T\_Table&gt; &apiTable)

    - 

- inline ApiType(copy\_table\_tag\_t, const [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt45SystemProfileSerializationTargetConfiguration7ApiTypeE16copy_table_tag_tRK7ApiType) &other)

    - 

- ApiType() noexcept = default

    - 

- ApiType(const [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt45SystemProfileSerializationTargetConfiguration7ApiTypeERK7ApiType)&) = delete

    - 

- ApiType([ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt45SystemProfileSerializationTargetConfiguration7ApiTypeERR7ApiType)&&) noexcept = default

    - 

- [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt45SystemProfileSerializationTargetConfiguration7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE) &operator=(const [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt45SystemProfileSerializationTargetConfiguration7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE)&) = delete

    - 

- [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt45SystemProfileSerializationTargetConfiguration7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE) &operator=([ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt45SystemProfileSerializationTargetConfiguration7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE)&&) noexcept = default

    -

Private Functions

- inline void prepareToCross() const

    - 

- inline void updateAfterCross() const

    - 

- inline explicit SystemProfileSerializationTargetConfiguration(const std::shared\_ptr&lt;SystemApiTable&gt; &apiTable)

    -

Private Members

- friend SystemApi

    - 

- friend Api

    - 

- [detail](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtTypeTraits.html#_CPPv4N5qairt6detailE)::crossable&lt;[detail](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtTypeTraits.html#_CPPv4N5qairt6detailE)::non\_owning&lt;[SystemProfileSerializationFileHeader](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt36SystemProfileSerializationFileHeaderE)&gt;, &interface\_type::getFileHeader, &interface\_type::setFileHeader&gt; m\_fileHeader

    - Serialization file header associated with this target configuration.

- class SystemProfileSerializationTargetFile : public [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::ApiType&lt;[SystemProfileSerializationTargetFile](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt36SystemProfileSerializationTargetFileE), [QairtSystem\_Profile\_SerializationTargetFileV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv447QairtSystem_Profile_SerializationTargetFileV1_t), SystemApiTable&gt;

    - *#include &lt;QairtSystemProfile.hpp&gt;*

handle for a profile output file descriptor used by a serialization target.

Obtained via `SystemApi::make<SystemProfileSerializationTargetFile>()`.
       Stores the output file name and directory for a serialized profile file.
    Copy to clipboard

Public Functions

- inline const std::string &getFileName() const

    - Get the output file name stored in this serialization target file.

See also

[QairtSystem\_Profile\_SerializationTargetFile\_getFileName](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemProfile_8h_1a2d9da81388d5b70fbf600d82b72faffa)

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on invalid handle.

- Returns

    - The output file name string.

- inline void setFileName(const std::string &fileName)

    - Set the output file name for this serialization target file.

See also

[QairtSystem\_Profile\_SerializationTargetFile\_setFileName](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemProfile_8h_1a89085907a59c2130b7308210e2b92c39)

- Parameters

    - **fileName** – **[in]** Output file name string.csv”.

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on invalid handle or NULL argument.

- inline const std::string &getFileDirectory() const

    - Get the output directory stored in this serialization target file.

See also

[QairtSystem\_Profile\_SerializationTargetFile\_getFileDirectory](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemProfile_8h_1a2f7340da4c4656de28de40a6a323dbc1)

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on invalid handle.

- Returns

    - The output directory path string.

- inline void setFileDirectory(const std::string &fileDirectory)

    - Set the output directory for this serialization target file.

See also

[QairtSystem\_Profile\_SerializationTargetFile\_setFileDirectory](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemProfile_8h_1a37827bdff55c0f36951f66411cc7e7db)

- Parameters

    - **fileDirectory** – **[in]** Output directory path string.

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on invalid handle or NULL argument.

- template&lt;typename T, typename U, typename V&gt;  
inline ApiType(const [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt36SystemProfileSerializationTargetFile7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE)&lt;[T](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt36SystemProfileSerializationTargetFile7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE), [U](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt36SystemProfileSerializationTargetFile7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE), [V](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt36SystemProfileSerializationTargetFile7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE)&gt; &parent, [detail](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtTypeTraits.html#_CPPv4N5qairt6detailE)::non\_owning\_handle&lt;handle\_type&gt; noh)

    - 

- inline explicit ApiType(const std::shared\_ptr&lt;T\_Table&gt; &apiTable)

    - 

- inline ApiType(copy\_table\_tag\_t, const [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt36SystemProfileSerializationTargetFile7ApiTypeE16copy_table_tag_tRK7ApiType) &other)

    - 

- ApiType() noexcept = default

    - 

- ApiType(const [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt36SystemProfileSerializationTargetFile7ApiTypeERK7ApiType)&) = delete

    - 

- ApiType([ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt36SystemProfileSerializationTargetFile7ApiTypeERR7ApiType)&&) noexcept = default

    - 

- [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt36SystemProfileSerializationTargetFile7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE) &operator=(const [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt36SystemProfileSerializationTargetFile7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE)&) = delete

    - 

- [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt36SystemProfileSerializationTargetFile7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE) &operator=([ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt36SystemProfileSerializationTargetFile7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE)&&) noexcept = default

    -

Private Functions

- inline void prepareToCross() const

    - 

- inline void updateAfterCross() const

    - 

- inline explicit SystemProfileSerializationTargetFile(const std::shared\_ptr&lt;SystemApiTable&gt; &apiTable)

    -

Private Members

- friend SystemApi

    - 

- friend Api

    - 

- [detail](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtTypeTraits.html#_CPPv4N5qairt6detailE)::crossable&lt;std::string, &interface\_type::getFileName, &interface\_type::setFileName&gt; m\_fileName

    - Output file name for the serialization target.

- [detail](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtTypeTraits.html#_CPPv4N5qairt6detailE)::crossable&lt;std::string, &interface\_type::getFileDirectory, &interface\_type::setFileDirectory&gt; m\_fileDirectory

    - Output directory for the serialization target file.

- class SystemProfileSerializationTargetInfo : public [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::ApiType&lt;[SystemProfileSerializationTargetInfo](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt36SystemProfileSerializationTargetInfoE), [QairtSystem\_Profile\_SerializationTargetInfoV1\_t](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#_CPPv447QairtSystem_Profile_SerializationTargetInfoV1_t), SystemApiTable&gt;

    - *#include &lt;QairtSystemProfile.hpp&gt;*

handle for the type and output destination of a profile serialization target.

Obtained via `SystemApi::make<SystemProfileSerializationTargetInfo>()`.
       Associates a serialization type with a SystemProfileSerializationTargetFile.
    Copy to clipboard

Public Functions

- inline void setTargetFile(const [SystemProfileSerializationTargetFile](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt36SystemProfileSerializationTargetFileE) &targetFile)

    - Set the target file descriptor for this serialization target info.

See also

[QairtSystem\_Profile\_SerializationTargetInfo\_setTargetFile](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemProfile_8h_1af7ecda865a55388252429ed233da758c)

- Parameters

    - **targetFile** – **[in]** Serialization target file to associate.

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on invalid handle or invalid argument.

- inline [SystemProfileSerializationTargetFile](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt36SystemProfileSerializationTargetFileE) &getTargetFile()

    - Get the target file descriptor associated with this serialization target info.

See also

[QairtSystem\_Profile\_SerializationTargetInfo\_getTargetFile](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtSystem.html#QairtSystemProfile_8h_1aec7368a615c1cafacc86f3708389d64f)

- Throws

    - [qairt](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtLog.html#_CPPv45qairt)::[Exception](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtApi.html#_CPPv4N5qairt9ExceptionE) – on invalid handle.

- Returns

    - Reference to the associated [SystemProfileSerializationTargetFile](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#classqairt_1_1SystemProfileSerializationTargetFile).

- inline const [SystemProfileSerializationTargetFile](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt36SystemProfileSerializationTargetFileE) &getTargetFile() const

    - Wrapper which allows for const access to the target file descriptor.

See also

[SystemProfileSerializationTargetInfo::getTargetFile()](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#classqairt_1_1SystemProfileSerializationTargetInfo_1aea7d520df8c82b6120a19b36ed91e276)

- template&lt;typename T, typename U, typename V&gt;  
inline ApiType(const [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt36SystemProfileSerializationTargetInfo7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE)&lt;[T](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt36SystemProfileSerializationTargetInfo7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE), [U](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt36SystemProfileSerializationTargetInfo7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE), [V](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt36SystemProfileSerializationTargetInfo7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE)&gt; &parent, [detail](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtTypeTraits.html#_CPPv4N5qairt6detailE)::non\_owning\_handle&lt;handle\_type&gt; noh)

    - 

- inline explicit ApiType(const std::shared\_ptr&lt;T\_Table&gt; &apiTable)

    - 

- inline ApiType(copy\_table\_tag\_t, const [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt36SystemProfileSerializationTargetInfo7ApiTypeE16copy_table_tag_tRK7ApiType) &other)

    - 

- ApiType() noexcept = default

    - 

- ApiType(const [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt36SystemProfileSerializationTargetInfo7ApiTypeERK7ApiType)&) = delete

    - 

- ApiType([ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt36SystemProfileSerializationTargetInfo7ApiTypeERR7ApiType)&&) noexcept = default

    - 

- [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt36SystemProfileSerializationTargetInfo7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE) &operator=(const [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt36SystemProfileSerializationTargetInfo7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE)&) = delete

    - 

- [ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt36SystemProfileSerializationTargetInfo7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE) &operator=([ApiType](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4I000EN5qairt36SystemProfileSerializationTargetInfo7ApiTypeERK7ApiTypeI1T1U1VEN6detail17non_owning_handleI11handle_typeEE)&&) noexcept = default

    -

Private Functions

- inline void prepareToCross() const

    - 

- inline void updateAfterCross() const

    - 

- inline explicit SystemProfileSerializationTargetInfo(const std::shared\_ptr&lt;SystemApiTable&gt; &apiTable)

    -

Private Members

- friend SystemApi

    - 

- friend Api

    - 

- [detail](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtTypeTraits.html#_CPPv4N5qairt6detailE)::crossable&lt;[detail](https://docs.qualcomm.com/doc/80-63442-10/topic/QairtTypeTraits.html#_CPPv4N5qairt6detailE)::non\_owning&lt;[SystemProfileSerializationTargetFile](https://docs.qualcomm.com/doc/80-63442-10/topic/cpp-api_QairtSystem.html#_CPPv4N5qairt36SystemProfileSerializationTargetFileE)&gt;, &interface\_type::getTargetFile, &interface\_type::setTargetFile&gt; m\_targetFile

    - Target file descriptor associated with this serialization target info.

* * *

C++ wrapper for system tensor operations.

**Include:** `#include "QairtCppApi/System/QairtSystemTensor.hpp"`

Warning

doxygenfile: Cannot find file “QairtCppApi/System/QairtSystemTensor.hpp

Last Published: Jun 04, 2026

[Previous Topic
QairtTypeTraits](https://docs.qualcomm.com/bundle/publicresource/80-63442-10/topics/QairtTypeTraits.md) [Next Topic
QNN](https://docs.qualcomm.com/bundle/publicresource/80-63442-10/topics/index_QNN.md)