OmniCoreStartArgs

Defined in omni/core/Omni.h

class OmniCoreStartArgs

Arguments passed to omniCoreStart().

Public Functions

inline OmniCoreStartArgs()

Default constructor.

inline OmniCoreStartArgs(omni::core::ITypeFactory *factory_, omni::log::ILog *log_ = nullptr, omni::structuredlog::IStructuredLog *strucLog_ = nullptr)

Constructor which accepts default implementations for the core.

Public Members

uint16_t version

Version of this structure. The version should be incremented only when removing/rearranging fields. Adding fields (from the reserved space) is allowed without increment the version.

This fields value should always be set to kOmniCoreStartArgsVersion.

uint16_t byteCount

Size of this structure.

OmniCoreStartFlags flags

flags to control the behavior of the Omni core startup.

omni::core::ITypeFactory *typeFactory

The type factory that will be returned by omniGetTypeFactoryWithoutAcquire().

omniCoreStart will call acquire() on the given type factory.

If the given parameter is nullptr, omniCreateTypeFactory() will be called.

omni::log::ILog *log

The log that will be returned by omniGetLogWithoutAcquire().

omniCoreStart will call acquire() on the given log.

If the given parameter is nullptr, omniCreateLog() will be called.

omni::structuredlog::IStructuredLog *structuredLog

The structured log object that will be returned by omniGetStructuredLogWithoutAcquire().

omniCoreStart will call acquire on the given structured log object.

If the given parameter is nullptr, the default implementation object will be used instead.

void *reserved[12]

When adding fields, decrement this reserved space. Be mindful of alignment (explicitly add padding fields if needed).