CeresEngine 0.2.0
A game development framework
Loading...
Searching...
No Matches
CeresEngine::InlineExecutor Class Reference

An executor that runs anything inline. More...

#include <CeresEngine/Foundation/Threading/ExecutionContext.hpp>

Static Private Member Functions

static constexpr ExecutorMapping::other_t query (ExecutorMapping) noexcept
 Query the current value of the mapping property.
 
static constexpr ExecutorBlocking::always_t query (ExecutorBlocking) noexcept
 Query the current value of the blocking property.
 
static constexpr ExecutorRelationship::continuation_t query (ExecutorRelationship) noexcept
 Query the current value of the relationship property.
 
static constexpr ExecutorOutstandingWork::untracked_t query (ExecutorOutstandingWork) noexcept
 Query the current value of the outstanding_work property.
 
static constexpr ExecutorBulkGuarantee::sequenced_t query (ExecutorBulkGuarantee) noexcept
 Query the current value of the bulk_guarantee property.
 
static constexpr std::size_t query (ExecutorOccupancy) noexcept
 Query the occupancy (recommended number of work items) for the system context.
 
template<typename Function >
static constexpr void execute (Function &&f)
 Execution function.
 

Friends

struct asio_query_fn::impl
 
struct ExecutorMapping::mapping_t< 0 >::mapping_t
 
struct ExecutorBlocking::blocking_t< 0 >::blocking_t
 
struct ExecutorRelationship::relationship_t< 0 >::relationship_t
 
struct ExecutorOutstandingWork::outstanding_work_t< 0 >::outstanding_work_t
 
struct ExecutorBulkGuarantee::bulk_guarantee_t< 0 >::bulk_guarantee_t
 
struct ExecutorOccupancy::occupancy_t< 0 >::occupancy_t
 
struct asio_execution_execute_fn::impl
 
constexpr bool operator== (const InlineExecutor &lhs, const InlineExecutor &rhs) noexcept
 Compare two executors for equality.
 
constexpr bool operator!= (const InlineExecutor &lhs, const InlineExecutor &rhs) noexcept
 Compare two executors for inequality.
 

Detailed Description

An executor that runs anything inline.

Although simple, it needs to meet the executor requirements:

  • Executor concept
  • The execute function

Member Function Documentation

◆ execute()

template<typename Function >
static constexpr void CeresEngine::InlineExecutor::execute ( Function &&  f)
inlinestaticconstexprprivate

Execution function.

◆ query() [1/6]

static constexpr ExecutorBlocking::always_t CeresEngine::InlineExecutor::query ( ExecutorBlocking  )
inlinestaticconstexprprivatenoexcept

Query the current value of the blocking property.

◆ query() [2/6]

static constexpr ExecutorBulkGuarantee::sequenced_t CeresEngine::InlineExecutor::query ( ExecutorBulkGuarantee  )
inlinestaticconstexprprivatenoexcept

Query the current value of the bulk_guarantee property.

◆ query() [3/6]

static constexpr ExecutorMapping::other_t CeresEngine::InlineExecutor::query ( ExecutorMapping  )
inlinestaticconstexprprivatenoexcept

Query the current value of the mapping property.

◆ query() [4/6]

static constexpr std::size_t CeresEngine::InlineExecutor::query ( ExecutorOccupancy  )
inlinestaticconstexprprivatenoexcept

Query the occupancy (recommended number of work items) for the system context.

◆ query() [5/6]

static constexpr ExecutorOutstandingWork::untracked_t CeresEngine::InlineExecutor::query ( ExecutorOutstandingWork  )
inlinestaticconstexprprivatenoexcept

Query the current value of the outstanding_work property.

◆ query() [6/6]

static constexpr ExecutorRelationship::continuation_t CeresEngine::InlineExecutor::query ( ExecutorRelationship  )
inlinestaticconstexprprivatenoexcept

Query the current value of the relationship property.

Friends And Related Symbol Documentation

◆ asio_execution_execute_fn::impl

friend struct asio_execution_execute_fn::impl
friend

◆ asio_query_fn::impl

friend struct asio_query_fn::impl
friend

◆ ExecutorBlocking::blocking_t< 0 >::blocking_t

friend struct ExecutorBlocking::blocking_t< 0 >::blocking_t
friend

◆ ExecutorBulkGuarantee::bulk_guarantee_t< 0 >::bulk_guarantee_t

friend struct ExecutorBulkGuarantee::bulk_guarantee_t< 0 >::bulk_guarantee_t
friend

◆ ExecutorMapping::mapping_t< 0 >::mapping_t

friend struct ExecutorMapping::mapping_t< 0 >::mapping_t
friend

◆ ExecutorOccupancy::occupancy_t< 0 >::occupancy_t

friend struct ExecutorOccupancy::occupancy_t< 0 >::occupancy_t
friend

◆ ExecutorOutstandingWork::outstanding_work_t< 0 >::outstanding_work_t

friend struct ExecutorOutstandingWork::outstanding_work_t< 0 >::outstanding_work_t
friend

◆ ExecutorRelationship::relationship_t< 0 >::relationship_t

friend struct ExecutorRelationship::relationship_t< 0 >::relationship_t
friend

◆ operator!=

Compare two executors for inequality.

◆ operator==

constexpr bool operator== ( const InlineExecutor lhs,
const InlineExecutor rhs 
)
friend

Compare two executors for equality.


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