Structs#

InterfaceType

A dummy type representing a Carbonite Interface for documentation purposes.

carb::AcquireInterfaceOptions

A structure used with Framework::internalAcquireInterface() . Typically callers should use one of the adapter functions such as Framework::tryAcquireInterface() and not use this directly.

carb::Color

RGBA color with templated data type.

carb::ColorRgb

RGB float color.

carb::ColorRgbDouble

RGB double color.

carb::ColorRgba

RGBA float color.

carb::ColorRgbaDouble

RGBA double color.

carb::Double2

Two component double vector.

carb::Double3

Three component double vector.

carb::Double4

Four component double vector.

carb::ErrorApi

The low-level API for interacting with the Carbonite error handling system. At the core, this system maintains a thread-specific error code and optional error message.

carb::FindPluginsArgs

Arguments that are passed to findPlugins() .

carb::Float2

Two component float vector.

carb::Float3

Three component float vector.

carb::Float4

Four component float vector.

carb::Framework

Defines the framework for creating Carbonite applications and plugins.

carb::InitBoth

An empty class tag type used with EmptyMemberPair constructors.

carb::Int2

Two component int32_t vector.

carb::Int3

Three component int32_t vector.

carb::Int4

Four component int32_t vector.

carb::InterfaceDesc

Defines a descriptor for the plugin interface.

carb::PluginDesc

Defines a struct which contains all key information about a plugin loaded into memory.

carb::PluginFrameworkDesc

Pass to each plugin's OnPluginRegisterExFn during load. Allows the plugin to grab global Carbonite state such as the carb::Framework singleton.

carb::PluginImplDesc

Defines a descriptor for the plugin implementation, to be provided to the macro CARB_PLUGIN_IMPL.

carb::PluginLoadingDesc

Describes parameters for finding plugins on disk. Multiple search paths, matching wildcards, and exclusion wildcards can be specified. Used primarily by Framework::loadPlugins .

carb::PluginRegistrationDesc

Describes the different functions a plugin can define for use by carb::Framework .

carb::PluginRegistryEntry

Defines a struct to be filled by a plugin to provide the framework with all information about it.

carb::PluginRegistryEntry2

Defines a struct to be filled by a plugin to provide the framework with all information about it. This struct is automatically created and filled by the macro CARB_PLUGIN_IMPL.

carb::SharedHandle

Defines a shared object handle.

carb::StartupFrameworkDesc

Parameters passed to carb::startupFramework() .

carb::Uint2

Two component uint32_t vector.

carb::Uint3

Three component uint32_t vector.

carb::Uint4

Four component uint32_t vector.

carb::ValueInitFirst

An empty class tag type used with EmptyMemberPair constructors.

carb::Version

Defines a version consisting of a major and minor version.

carb::assert::IAssert

Interface to provide functionality to display assertion failures in greater detail.

carb::assets::AssetTypeParams

Parameters that describe an asset type's characteristics.

carb::assets::IAssets

Defines an interface for managing assets that are loaded asynchronously.

carb::assets::IAssetsBlob

Defines an interface for managing assets that are loaded asynchronously.

carb::assets::LoadContext

A load context that exists for the duration of the load phase. A loader may create a subclass of this to maintain context data about a type.

carb::assets::LoadParameters

Parameters that can be passed into IAssets::loadAsset() . Asset types can create a subclass of this to pass asset-type-specific load parameters through the asset system.

carb::assets::LoaderDesc

Defines the loader functions for an asset type.

carb::assets::Type

Wrapper for an asset type that can be passed to various functions, identifies the asset as a hashed string plus the version number, which can impact the LoadParameters structure.

carb::cpp::char_traits

This struct provides implementations of a subset of the functions found in std::char_traits.

carb::cpp::conjunction

A conjunction is the logical and of all B traits.

carb::cpp::disjunction

A disjunction is the logical or of all B traits.

carb::cpp::invoke_result

Get the result type of calling Func with the TArgs pack.

carb::cpp::is_bounded_array

Checks whether T is an array of known bounds.

carb::cpp::is_bounded_array< T[N]>

Checks whether T is an array of known bounds.

carb::cpp::is_invocable

Check if the Func is invocable with the TArgs pack.

carb::cpp::is_invocable_r

Check if invoking Func with the TArgs pack will return R .

carb::cpp::is_nothrow_convertible

Determine if From can be implicitly-converted to To without throwing an exception.

carb::cpp::is_nothrow_invocable

Check if invoking Func with the TArgs pack will not throw.

carb::cpp::is_nothrow_invocable_r

Check that invoking Func with the TArgs pack and converting it to R will not throw.

carb::cpp::is_nothrow_swappable

carb::cpp::is_nothrow_swappable_with

carb::cpp::is_swappable

carb::cpp::is_swappable_with

carb::cpp::is_unbounded_array

Checks whether T is an array of unknown bounds.

carb::cpp::is_unbounded_array< T[]>

Checks whether T is an array of unknown bounds.

carb::cpp::negation

A logical not of B trait.

carb::cpp::nullopt_t

Identifies an empty optional object. This can be used to initialize or reinitialize an empty optional object as needed.

carb::cpp::remove_cvref

If the type T is a reference type, provides the member typedef type which is the type referred to by T with its topmost cv-qualifiers removed. Otherwise type is T with its topmost cv-qualifiers removed.

carb::cpp::type_identity

Provides the member typedef type that names T (i.e. the identity transformation). This can be used to establish non-deduced contexts in template argument deduction.

carb::crashreporter::CrashSentInfo

Provides a single piece of additional information or context to a crash upload complete callback function.

carb::crashreporter::ICrashReporter

ICrashReporter is the interface to implement a plugin that catches and reports information about the crash to either a local file, a server, or both.

carb::crashreporter::MetadataValueCallback

Descriptor of a single metadata callback function.

carb::delegate::RefFromDelegate

A helper class for determining the type of a carb::delegate::DelegateRef based on a carb::delegate::Delegate .

carb::dictionary::IDictionary

DOM-style dictionary (keeps the whole structure in-memory).

carb::dictionary::ISerializer

Interface intended to serialize dictionary objects to and from plain C strings.

carb::dictionary::Item

Structure used in opaque pointers to each dictionary node.

carb::dictionary::SubscriptionId

Opaque value representing a subscription.

carb::eventdispatcher::EventData

Structure definition for event data. Typically not used; instead use the Event wrapper-class.

carb::eventdispatcher::IEventDispatcher

Interface for carb.eventdispatcher.plugin .

carb::eventdispatcher::IMessageQueueFactory

The interface that functions as a message queue factory.

carb::eventdispatcher::NamedVariant

Structure definition for a named variant: a key/value pair with a value of varying type.

carb::events::AdapterDesc

Describes the adapter type desired by IEventsAdapter::createAdapter() .

carb::events::IEvents

Interface definition for carb.events .

carb::events::MappingEntry

Structure defining a mapping entry for use with AdapterDesc .

carb::extras::ConstHandleRef

A smart-reference class for a Handle associated with a HandleDatabase .

carb::extras::HandleRef

A smart-reference class for a Handle associated with a HandleDatabase .

carb::extras::SystemMemoryInfo

Stores information about memory in the system.

carb::filesystem::DirectoryItemInfo

Defines struct to hold item info during directory walk.

carb::filesystem::File

Opaque type for referring to a File instance.

carb::filesystem::FileInfo

Information about a file.

carb::filesystem::FindFilesArgs

Search parameters passed to findFiles() .

carb::filesystem::IFileSystem

Defines a file system for Carbonite.

carb::input::ActionEvent

Defines an action event.

carb::input::ActionMappingDesc

Defines action mapping description.

carb::input::Gamepad

An opaque type representing a Gamepad .

carb::input::GamepadConnectionEvent

Defines the gamepad connection event.

carb::input::GamepadEvent

Defines a gamepad event.

carb::input::IInput

Defines an input interface.

carb::input::InputDevice

An opaque type representing an Input Device.

carb::input::InputEvent

Defines the unified input event.

carb::input::InputProvider

Defines an input provider interface.

carb::input::Keyboard

An opaque type representing a Keyboard .

carb::input::KeyboardEvent

Defines a keyboard event.

carb::input::Mouse

An opaque type representing a Mouse .

carb::input::MouseEvent

Defines the mouse event.

carb::l10n::IL10n

The localization interface.

carb::l10n::LanguageIdentifier

An opaque struct representing a language ID.

carb::l10n::LanguageTable

An opaque struct representing a localization table.

carb::l10n::LanguageTableData

A definition that can be used for loading a language table embedded in C++ code.

carb::launcher::ILauncher

A simple process launcher helper interface.

carb::launcher::LaunchDesc

Descriptor of the new process to be launched by ILauncher::openProcess().

carb::logging::ILogging

Defines the log system that is associated with the Framework .

carb::logging::LogFileConfiguration

Describes the configuration for logging to a file for setFileConfiguration.

carb::logging::Logger

Defines an extension interface for logging backends to register with the ILogging system.

carb::logging::StandardLogger

The default logger provided by the Framework .

carb::logging::StringToLogLevelMapping

A struct that describes level name to integer value.

carb::math::round_away_from_zero_t

A rounding policy for mulDiv that rounds the result away from zero.

carb::math::round_nearest_neighbor_t

A rounding policy for mulDiv that rounds the result to the nearest neighbor.

carb::math::round_toward_zero_t

A rounding policy for mulDiv that rounds the result toward zero, the default behavior for integer division.

carb::options::Option

Information about a single option and its parser.

carb::profiler::IProfileMonitor

Defines an interface to monitor profiling events.

carb::profiler::IProfiler

Defines the profiler system that is associated with the Framework .

carb::profiler::ProfileEvent

A struct describing a specific profiling event.

carb::settings::ISettings

The Carbonite Settings interface.

carb::settings::Transaction

An opaque type representing a settings transaction.

carb::simplegui::ContextDesc

Defines a descriptor for simplegui context.

carb::simplegui::DrawCommand

Defines a drawing command.

carb::simplegui::DrawData

Defines the data used for drawing back-ends.

carb::simplegui::DrawList

Defines a list of draw commands.

carb::simplegui::DrawVertex

Defines a vertex used for drawing lists.

carb::simplegui::FontConfig

Structure defining the configuration for a font.

carb::simplegui::FontCustomRect

Structure of a custom rectangle for a font definition.

carb::simplegui::ISimpleGui

Defines the simplegui interface.

carb::simplegui::ListClipper

Helper: Manually clip large list of items.

carb::simplegui::Payload

Data payload for Drag and Drop operations: acceptDragDropPayload(), getDragDropPayload()

carb::simplegui::Style

Struct with all style variables.

carb::simplegui::TextEditCallbackData

Shared state of InputText(), passed to callback when a ImGuiInputTextFlags_Callback* flag is used and the corresponding callback is triggered.

carb::simplegui::Viewport

The viewports created and managed by simplegui.

carb::simplegui::WindowClass

[BETA] Rarely used / very advanced uses only. Use with SetNextWindowClass() and DockSpace() functions. Provide hints to the platform back-end via altered viewport flags (enable/disable OS decoration, OS task bar icons, etc.) and OS level parent/child relationships.

carb::stats::IStats

(Example not a real interface)

carb::stats::StatDesc

A descriptor for a new statistic to be added or enumerated.

carb::stats::Value

A container for a single statistic value.

carb::tasking::All

Specifies an "all" grouping of RequiredObject(s).

carb::tasking::Any

Specifies an "any" grouping of RequiredObject(s).

carb::tasking::IFiberEvents

Defines the fiber events interface that receives fiber-related notifications.

carb::tasking::ITasking

Defines a tasking plugin interface, acquired with carb::Framework::acquireInterface() when carb.tasking.plugin is loaded.

carb::tasking::IThreadPool

Optional plugin providing helpful facilities for utilizing a pool of threads to perform basic small tasks.

carb::tasking::Object

A generic.

carb::tasking::RefFromDelegate

A helper class for determining the type of a carb::tasking::DelegateRef based on a carb::tasking::Delegate .

carb::tasking::RequiredObject

Helper class to ensure correct compliance with the requiredObject parameter of ITasking::add[Throttled]SubTask() and wait() functions.

carb::tasking::SpinMutex

This atomic spin lock conforms to C++ Named Requirements of Lockable which makes it compatible with std::lock_guard.

carb::tasking::SpinSharedMutex

Spin lock conforming to C++ named requirements of SharedMutex .

carb::tasking::TaskDebugInfo

Defines debug information about a task retrieved by ITasking::getTaskDebugInfo() or ITasking::walkTaskDebugInfo() .

carb::tasking::TaskDesc

Defines a task descriptor.

carb::tasking::TaskingDesc

Defines a tasking plugin descriptor.

carb::tasking::Tracker

Helper class to provide correct types to the Trackers class.

carb::tasking::Trackers

Helper class to ensure correct compliance with trackers parameter of ITasking::addTask() variants.

carb::thread::IThreadUtil

An interface to provide various thread utility operations.

carb::thread::RelayTaskDesc

A descriptor of the relay task to be performed.

carb::thread::futex

Futex namespace.

carb::tokens::ITokens

Interface for storing tokens and resolving strings containing them.

carb::variant::IVariant

Interface for carb.variant.plugin

carb::variant::KeyValuePair

A representation of a key value pair, similar to std::pair<const Variant, Variant> .

carb::variant::Translator

Default implementation of a Translator type.

carb::variant::VTable

A v-table definition for a variant type. Each registered type has a unique v-table pointer that is retrievable via IVariant::getVTable() . Each entry in the v-table is a function with a default behavior if nullptr .

carb::variant::VariantData

A standard-layout.

carb::variant::traits

A structure containing functions for performing the prescribed actions on a VariantData . The functions handle the default behavior if the v-table or v-table function are nullptr .

carb::windowing::IGLContext

Defines an OpenGL context interface for off-screen rendering.

carb::windowing::IWindowing

Defines a windowing interface.

carb::windowing::Image

This describes a single 2D image.

carb::windowing::VideoMode

Describes a video mode.

carb::windowing::WindowDesc

Descriptor for how a window is to be created.

omni::core::Implements

Helper template for implementing one or more interfaces.

omni::core::ImplementsCast

Helper template for implementing the cast function for one or more interfaces.

omni::core::ImplementsWeak

Helper template for implementing one or more interfaces that support weak pointers.

omni::core::InterfaceImplementation

Describes a mapping from a chunk of code (i.e. implementation) to one or more interfaces.

omni::core::ModuleExportEntry

Define an entry in omni::core::ModuleExports .

omni::core::ModuleExportEntryCarbClientName

omni::core::ModuleExports entry to interop with g_carbClientName .

omni::core::ModuleExportEntryCarbFramework

omni::core::ModuleExports entry to interop with carb::Framework .

omni::core::ModuleExportEntryCarbIAssert

omni::core::ModuleExports entry to interop with carb::assert::IAssert .

omni::core::ModuleExportEntryCarbIL10n

omni::core::ModuleExports entry to interop with carb::l10n::IL10n .

omni::core::ModuleExportEntryCarbILogging

omni::core::ModuleExports entry to interop with carb::logging::ILogging .

omni::core::ModuleExportEntryCarbIProfiler

omni::core::ModuleExports entry to interop with carb::profiler::IProfiler .

omni::core::ModuleExportEntryGetModuleDependencies

omni::core::ModuleExports entry to register a function to advertise the interface implementations available in the plugin.

omni::core::ModuleExportEntryILog

omni::core::ModuleExports entry to access omni::log::ILog .

omni::core::ModuleExportEntryIStructuredLog

omni::core::ModuleExports entry to access omni::structuredlog::IStructuredLog .

omni::core::ModuleExportEntryITypeFactory

omni::core::ModuleExports entry to access omni::core::ITypeFactory .

omni::core::ModuleExportEntryLogChannel

omni::core::ModuleExports entry to add a logging channel.

omni::core::ModuleExportEntryOnModuleCanUnload

omni::core::ModuleExports entry to register a function to determine if the module can be unloaded.

omni::core::ModuleExportEntryOnModuleLastChanceShutdown

omni::core::ModuleExports entry to register a function to be called when the plugin unload will be skipped during a quick shutdown

omni::core::ModuleExportEntryOnModuleLoad

omni::core::ModuleExports entry to register a function to advertise the interface implementations available in the plugin.

omni::core::ModuleExportEntryOnModuleStarted

omni::core::ModuleExports entry to register a function to be called after the plugin has loaded.

omni::core::ModuleExportEntryOnModuleUnload

omni::core::ModuleExports entry to register a function to be called when the plugin is unloaded.

omni::core::ModuleExportEntrySchema

omni::core::ModuleExports entry to add a new structured logging schema to be registered.

omni::core::ModuleExports

Entities exported by a module for both use and population by omni::core::ITypeFactory .

omni::core::ScopedFrameworkStartup

Scoped object which calls carb::startupFramework() and carb::shutdownFramework() .

omni::core::ScopedOmniCore

Scoped object which calls OMNI_CORE_START() and OMNI_CORE_STOP() .

omni::ext::ExtPathUrl

The result of parsing an extension URL.

omni::ext::ExtensionFolderInfo

A struct for describing Extension Folder information.

omni::ext::ExtensionInfo

A struct describing Extension information.

omni::ext::ExtensionSummary

A struct describing an Extension Summary.

omni::ext::IExtensions

omni.ext plugin interface

omni::ext::RegistryProviderInfo

A struct for describing Registry Provider information.

omni::ext::SolverInput

Input to running custom extension solver.

omni::ext::Version

Extension version struct.

omni::ext::VersionLockDesc

Version lock generation parameters.

omni::extras::SemanticVersion

Version struct, follows Semantic Versioning 2.0.

omni::formatted_t

A flag type to select the omni::string constructor that allows printf style formatting.

omni::kit::AppDesc

Application descriptor.

omni::kit::AppInfo

App information.

omni::kit::BuildInfo

Build information.

omni::kit::PlatformInfo

Platform information.

omni::platforminfo::CompositorInfo

Information about the active compositor on the system.

omni::platforminfo::DisplayInfo

Contains information about a single display device.

omni::platforminfo::ModeInfo

Contains information about a single display mode.

omni::platforminfo::OsVersion

A three-part operating system version number.

omni::structuredlog::EventInfo

A descriptor for a single structured log event.

omni::structuredlog::JsonNode

A node in a JSON structure.

omni::vformatted_t

A flag type to select the omni::string constructor that allows vprintf style formatting.

std::hash< carb::cpp::basic_string_view< CharT, Traits > >

Hash support for string views.

std::hash< omni::string >

Hash specialization for std::string.

std::hash<::carb::RString >

RString specialization for std::hash .

std::hash<::carb::RStringKey >

RStringKey specialization for std::hash .

std::hash<::carb::RStringU >

RStringU specialization for std::hash .

std::hash<::carb::RStringUKey >

RStringUKey specialization for std::hash .

std::owner_less<::carb::RString >

RString specialization for std::owner_less .

std::owner_less<::carb::RStringKey >

RStringKey specialization for std::owner_less .

std::owner_less<::carb::RStringU >

RStringU specialization for std::owner_less .

std::owner_less<::carb::RStringUKey >

RStringUKey specialization for std::owner_less .