Open 3D Engine AzFramework API Reference 23.10.0
O3DE is an open-source, fully-featured, high-fidelity, modular 3D engine for building games and simulations, available to every industry.
AzFramework::Terrain::QueryAsyncParams Struct Reference

A parameter group struct that can optionally be passed to the various Query*Async API functions. More...

#include <TerrainDataRequestBus.h>

Public Attributes

int32_t m_desiredNumberOfJobs = NumJobsDefault
 
int32_t m_minPositionsPerJob = MinPositionsPerJobDefault
 The minimum number of positions per async terrain request job.
 
QueryAsyncCompleteCallback m_completionCallback = nullptr
 

Static Public Attributes

static constexpr int32_t UseMaxJobs = -1
 
static constexpr int32_t NumJobsDefault = 1
 
static constexpr int32_t MinPositionsPerJobDefault = 8
 

Detailed Description

A parameter group struct that can optionally be passed to the various Query*Async API functions.

Member Data Documentation

◆ m_completionCallback

QueryAsyncCompleteCallback AzFramework::Terrain::QueryAsyncParams::m_completionCallback = nullptr

The callback function that will be invoked when a call to a Query*Async function completes. If the job is cancelled, the completion callback will not be invoked.

◆ m_desiredNumberOfJobs

int32_t AzFramework::Terrain::QueryAsyncParams::m_desiredNumberOfJobs = NumJobsDefault

The desired maximum number of jobs to split async terrain requests into. The actual number of jobs used will be clamped based on the number of available job manager threads, the desired number of jobs, and the minimum number of positions that should be processed per job.

◆ MinPositionsPerJobDefault

constexpr int32_t AzFramework::Terrain::QueryAsyncParams::MinPositionsPerJobDefault = 8
staticconstexpr

This constant is used with m_minPositionsPerJob to set the default minimum number of positions to process per async terrain request job. The higher the number, the more it will limit the maximum number of simultaneous jobs per async terrain request.

◆ NumJobsDefault

constexpr int32_t AzFramework::Terrain::QueryAsyncParams::NumJobsDefault = 1
staticconstexpr

This constant is used with m_desiredNumberOfJobs to set the default number of jobs for splitting up async terrain requests. By default, we use a single job so that the request runs asynchronously but only consumes a single thread.

◆ UseMaxJobs

constexpr int32_t AzFramework::Terrain::QueryAsyncParams::UseMaxJobs = -1
staticconstexpr

This constant can be used with m_desiredNumberOfJobs to request the maximum number of jobs possible for splitting up async terrain requests based on the maximum number of cores / job threads on the current PC. It's a symbolic number, not a literal one, since the maximum number of available jobs will change from machine to machine.


The documentation for this struct was generated from the following file: