OpenPit C++ SDK
C++17 SDK for the OpenPit pre-trade risk engine
openpit::asyncengine::OwnedTypedAsyncEngine Class Reference

Owning typed async engine built over the default EngineAdapter. More...

Public Types

using Driver = EngineAdapter
 

Public Member Functions

AsyncAccounts< DriverAccounts () noexcept
 
template<typename Adjustment >
Future< AdjustmentOutcomeApplyAccountAdjustment (::openpit::param::AccountId accountId, std::vector< Adjustment > adjustments, std::chrono::nanoseconds timeout=std::chrono::nanoseconds(0))
 
Future<::openpit::PostTradeResultApplyExecutionReport (::openpit::model::ExecutionReport report, std::chrono::nanoseconds timeout=std::chrono::nanoseconds(0))
 
Future< ExecuteOutcome< Driver > > ExecutePreTrade (::openpit::model::Order order, std::chrono::nanoseconds timeout=std::chrono::nanoseconds(0))
 
Future< ExecuteOutcome< Driver > > ExecutePreTradeDropCopy (::openpit::model::Order order, std::chrono::nanoseconds timeout=std::chrono::nanoseconds(0))
 
OwnedTypedAsyncEngineoperator= (const OwnedTypedAsyncEngine &)=delete
 
OwnedTypedAsyncEngineoperator= (OwnedTypedAsyncEngine &&) noexcept=default
 
 OwnedTypedAsyncEngine (const OwnedTypedAsyncEngine &)=delete
 
 OwnedTypedAsyncEngine (OwnedTypedAsyncEngine &&) noexcept=default
 
Future< StartOutcome< Driver > > StartPreTrade (::openpit::model::Order order, std::chrono::nanoseconds timeout=std::chrono::nanoseconds(0))
 
bool StopGraceful (std::chrono::nanoseconds timeout=std::chrono::nanoseconds(0))
 
bool StopHard (std::chrono::nanoseconds timeout=std::chrono::nanoseconds(0))
 
Future< std::monostate > Submit (::openpit::param::AccountId accountId, std::function< void()> fn, std::chrono::nanoseconds timeout=std::chrono::nanoseconds(0))
 
const TypedAsyncEngine< Driver > & Typed () const noexcept
 
TypedAsyncEngine< Driver > & Typed () noexcept
 
 ~OwnedTypedAsyncEngine ()=default
 

Detailed Description

Owning typed async engine built over the default EngineAdapter.

Member Typedef Documentation

◆ Driver

Constructor & Destructor Documentation

◆ OwnedTypedAsyncEngine() [1/2]

openpit::asyncengine::OwnedTypedAsyncEngine::OwnedTypedAsyncEngine ( const OwnedTypedAsyncEngine )
delete

◆ OwnedTypedAsyncEngine() [2/2]

openpit::asyncengine::OwnedTypedAsyncEngine::OwnedTypedAsyncEngine ( OwnedTypedAsyncEngine &&  )
defaultnoexcept

◆ ~OwnedTypedAsyncEngine()

openpit::asyncengine::OwnedTypedAsyncEngine::~OwnedTypedAsyncEngine ( )
default

Member Function Documentation

◆ Accounts()

AsyncAccounts<Driver> openpit::asyncengine::OwnedTypedAsyncEngine::Accounts ( )
inlinenoexcept

◆ ApplyAccountAdjustment()

template<typename Adjustment >
Future<AdjustmentOutcome> openpit::asyncengine::OwnedTypedAsyncEngine::ApplyAccountAdjustment ( ::openpit::param::AccountId  accountId,
std::vector< Adjustment >  adjustments,
std::chrono::nanoseconds  timeout = std::chrono::nanoseconds(0) 
)
inline

◆ ApplyExecutionReport()

Future<::openpit::PostTradeResult> openpit::asyncengine::OwnedTypedAsyncEngine::ApplyExecutionReport ( ::openpit::model::ExecutionReport  report,
std::chrono::nanoseconds  timeout = std::chrono::nanoseconds(0) 
)
inline

◆ ExecutePreTrade()

Future<ExecuteOutcome<Driver> > openpit::asyncengine::OwnedTypedAsyncEngine::ExecutePreTrade ( ::openpit::model::Order  order,
std::chrono::nanoseconds  timeout = std::chrono::nanoseconds(0) 
)
inline

◆ ExecutePreTradeDropCopy()

Future<ExecuteOutcome<Driver> > openpit::asyncengine::OwnedTypedAsyncEngine::ExecutePreTradeDropCopy ( ::openpit::model::Order  order,
std::chrono::nanoseconds  timeout = std::chrono::nanoseconds(0) 
)
inline

◆ operator=() [1/2]

OwnedTypedAsyncEngine& openpit::asyncengine::OwnedTypedAsyncEngine::operator= ( const OwnedTypedAsyncEngine )
delete

◆ operator=() [2/2]

OwnedTypedAsyncEngine& openpit::asyncengine::OwnedTypedAsyncEngine::operator= ( OwnedTypedAsyncEngine &&  )
defaultnoexcept

◆ StartPreTrade()

Future<StartOutcome<Driver> > openpit::asyncengine::OwnedTypedAsyncEngine::StartPreTrade ( ::openpit::model::Order  order,
std::chrono::nanoseconds  timeout = std::chrono::nanoseconds(0) 
)
inline

◆ StopGraceful()

bool openpit::asyncengine::OwnedTypedAsyncEngine::StopGraceful ( std::chrono::nanoseconds  timeout = std::chrono::nanoseconds(0))
inline

◆ StopHard()

bool openpit::asyncengine::OwnedTypedAsyncEngine::StopHard ( std::chrono::nanoseconds  timeout = std::chrono::nanoseconds(0))
inline

◆ Submit()

Future<std::monostate> openpit::asyncengine::OwnedTypedAsyncEngine::Submit ( ::openpit::param::AccountId  accountId,
std::function< void()>  fn,
std::chrono::nanoseconds  timeout = std::chrono::nanoseconds(0) 
)
inline

◆ Typed() [1/2]

const TypedAsyncEngine<Driver>& openpit::asyncengine::OwnedTypedAsyncEngine::Typed ( ) const
inlinenoexcept

◆ Typed() [2/2]

TypedAsyncEngine<Driver>& openpit::asyncengine::OwnedTypedAsyncEngine::Typed ( )
inlinenoexcept