Classes
OmniCoreStartArgs: Arguments passed to omniCoreStart() .
carb::Allocator: A class implementing the ' Allocator ' C++ Named Requirement.
carb::Deleter: Allocated object deleter helper class.
carb::EmptyMemberPair: Attempts to invoke the Empty Member Optimization by inheriting from the First element if possible, which, if empty will eliminate the storage necessary for an empty class; the Second element is always stored as a separate member. The First element is inherited from if it is an empty
class
/struct
and is not declaredfinal
.carb::EventSubscribers: A class that manages subscribers.
carb::FrameworkInitializerForBindings: A helper class used by CARB_BINDINGS() to acquire and release the Framework for a binding.
carb::IObject: Reference-counted object base.
carb::ObjectPtr: Smart pointer type for ref counting
IObject
.carb::RString: Carbonite registered strings.
carb::RStringKey: A registered string key.
carb::RStringU: Case-insensitive registered string.
carb::RStringUKey: A case-insensitive registered string key.
carb::UseCarbAllocatorAligned: An object can inherit from this class in order to use Carbonite allocation functions for creation/deletion.
carb::assets::ScopedSnapshot: A scoped snapshot, this automatically releases the snapshot when it goes out of scope.
carb::audio::EventListener: A listener for data from an EventStreamer .
carb::audio::EventStreamer: A events::IEvents based audio streamer.
carb::audio::NullStreamer: a null streamer implementation.
carb::audio::OutputStreamer: a streamer object to write to a stream to a file.
carb::audio::StreamerWrapper: wrapper base class to handle defining new streamer objects in C++ classes.
carb::container::BufferedObject: Lock-Free Asynchronous Buffer Supports only 1 producer, 1 consumer.
carb::container::IntrusiveList: IntrusiveList is very similar to std::list, but requires the tracking information to be contained within the stored type
T
, rather than built around it.carb::container::IntrusiveListLink: Defines a "link node" that IntrusiveList will use for tracking data for the contained type.
carb::container::IntrusiveUnorderedMultimap: IntrusiveUnorderedMultimap is a closed-addressing hash table very similar to std::unordered_multimap, but requires the tracking information to be contained within the stored type
T
, rather than built around it.carb::container::IntrusiveUnorderedMultimapLink: Defines a "link node" that IntrusiveUnorderedMultimap will use for tracking data for the contained type.
carb::container::LocklessQueue: Implements a lockless queue: a FIFO queue that is thread-safe yet requires no kernel synchronization.
carb::container::LocklessQueueLink: Defines the link object.
carb::container::LocklessStack: Implements a lockless stack: a LIFO container that is thread-safe yet requires no kernel involvement.
carb::container::LocklessStackLink: Defines the link object.
carb::container::RHUnorderedMap: Implements an Unordered Map, that is: a container that contains a mapping of keys to values where all keys must be unique.
carb::container::RHUnorderedMultimap: Implements an Unordered Multimap, that is: a container that contains a mapping of keys to values where keys may be inserted multiple times, each creating a new element.
carb::container::RHUnorderedMultiset: Implements an Unordered Multimap, that is: a container that contains a set of keys where keys may be inserted multiple times, each creating a new element.
carb::container::RHUnorderedSet: Implements an Unordered Set, that is: a container that contains a set of keys that all must be unique.
carb::container::detail::RobinHood: Implements a "Robin Hood" open-addressing hash container that can either store keys alone or key/value pairs; this template is not meant to be used directly instead use RHUnorderedSet , RHUnorderedMap , RHUnorderedMultimap , or RHUnorderedMultiset .
carb::cpp::barrier: Implements a C++20 barrier in C++14 semantics.
carb::cpp::basic_string_view: The class template basic_string_view describes an object that can refer to a constant contiguous sequence of elements with the first element of the sequence at position zero.
carb::cpp::counting_semaphore: C++20-compatible counting semaphore class.
carb::cpp::latch: Implements a C++20 latch in C++14 semantics.
carb::cpp::span: An object that refers to a contiguous sequence of objects.
carb::delegate::Delegate< void(Args…)>: Implements a thread-safe callback system that can have multiple subscribers.
carb::delegate::DelegateRef< void(Args…)>: Holds a reference to a Delegate .
carb::delegate::detail::DelegateBase< Mutex, Exec, void(Args…)>: Base class for carb::delegate::Delegate .
carb::detail::RStringTraits: The base class for all registered string classes: RString , RStringU , RStringKey , and RStringUKey .
carb::dictionary::ScopedRead: A helper class for calling readLock() and unlock().
carb::dictionary::ScopedWrite: A helper class for calling writeLock() and unlock().
carb::eventdispatcher::Event: A presentation class for EventData . Allows querying the data via a simple C++ interface.
carb::eventdispatcher::ObserverGuard: Structure to manage the lifetime of an observer. Similar to
std::unique_ptr
.carb::events::IEvent: Event object which is sent and received.
carb::events::IEventListener: Interface to implement for event listener.
carb::events::IEventStream: Event stream is fundamental primitive used to send, receive and listen for events.
carb::events::ISubscription: Subscription holder is created by all event listening subscription functions.
carb::events::LambdaEventListener: A helper to use a
std::function
as an carb::events::IEventListener .carb::extras::Base64: Encoder and decoder helper for Base64 data.
carb::extras::CpuInfo: Helper class for gathering and querying CPU information for x86 and x64 CPUs.
carb::extras::EnvironmentVariable: Defines an environment variable class that allows one to get, set, and restore value on destruction.
carb::extras::EnvironmentVariableParser: Parses environment variables into program options or environment variables.
carb::extras::HandleDatabase: Provides an OS-style mapping of a Handle to a Resource.
carb::extras::Path: Path objects are used for filesystem path manipulations.
carb::extras::SharedMemory: A utility helper class to provide shared memory access to one or more processes.
carb::extras::Utf8Iterator: A simple iterator class for walking a UTF-8 string.
carb::extras::Utf8Parser: Static helper class to allow for the processing of UTF-8 strings.
carb::extras::Uuid: UUIDv4 Unique Identifier (RFC 4122)
carb::input::ActionMappingSet: A type representing a set of action mappings.
carb::input::ScopedRead: A RAII class for holding a read lock over multiple operations.
carb::input::ScopedWrite: A RAII class for holding a write lock over multiple operations.
carb::launcher::ArgCollector: A simple child process argument collector helper class.
carb::launcher::EnvCollector: A simple environment variable collector helper class.
carb::logging::ScopedFilePause: A class that pauses logging to a file when constructed and resumes logging to a file when destroyed.
carb::logging::ScopedLevelThreadOverride: A RAII object for overriding a thread's log level for a given type in StandardLogger while in scope.
carb::logging::StandardLogger2: A sub-interface of ILogging for StandardLogger instances.
carb::memory::ArenaAllocator: An allocator that initially allocates from a memory arena (typically on the stack) and falls back to another allocator when that is exhausted.
carb::options::Options: Receives the results of parsing an options string.
carb::options::Value: A multi-value type.
carb::profiler::Channel: Profiler channel which can be configured via carb::settings::ISettings .
carb::profiler::ProfileZoneDynamic: Helper class that allows to automatically stop profiling upon leaving block.
carb::profiler::ProfileZoneStatic: Helper class that allows to automatically stop profiling upon leaving block.
carb::profiler::ProfiledMutex: Wrapper to add automatic profiling to a mutex.
carb::profiler::ProfiledSharedMutex: Wrapper to add automatic profiling to a shared mutex.
carb::settings::ScopedRead: A helper class for performing a scoped read lock on the settings database.
carb::settings::ScopedSubscription: Helper class to add a setting node or tree change subscription that will be automatically unregistered when the object goes out of scope.
carb::settings::ScopedWrite: A helper class for performing a scoped write lock on the settings database.
carb::settings::ThreadSafeLocalCache: A utility for caching a setting and automatically subscribing to changes of the value, as opposed to constantly polling.
carb::tasking::ConditionVariable: A fiber-aware condition_variable: a synchronization primitive that, together with a Mutex , blocks one or more threads or tasks until a condition becomes true.
carb::tasking::ConditionVariableWrapper: Wrapper for carb::tasking::ConditionVariable .
carb::tasking::Counter: Used to create dependencies between tasks and to wait for a set of tasks to finish.
carb::tasking::CounterWrapper: Wrapper for a carb::tasking::Counter .
carb::tasking::Delegate< void(Args…)>: Implements a task-aware, task-safe callback system that can have multiple subscribers.
carb::tasking::DelegateRef< void(Args…)>: Holds a reference to a Delegate .
carb::tasking::Future: A Future is a counterpart to a Promise .
carb::tasking::Mutex: A fiber-aware mutex: a synchronization primitive for mutual exclusion.
carb::tasking::MutexWrapper: Wrapper for a carb::tasking::Mutex that conforms to C++ Named Requirements of Lockable .
carb::tasking::PinGuard: Causes the currently executing TaskContext to be "pinned" to the thread it is currently running on until PinGuard is destroyed.
carb::tasking::Promise: A facility to store a value that is later acquired asynchronously via a Future created via Promise::get_future() .
carb::tasking::RecursiveMutexWrapper: Wrapper for a recursive carb::tasking::Mutex that conforms to C++ Named Requirements of Lockable .
carb::tasking::ScopedTracking: When instantiated, begins tracking the passed Trackers .
carb::tasking::Semaphore: A fiber-aware semaphore: a synchronization primitive that limits to N threads/fibers.
carb::tasking::SemaphoreWrapper: Wrapper for a carb::tasking::Semaphore .
carb::tasking::SharedFuture: SharedFuture is a shareable version of Future .
carb::tasking::SharedMutex: A fiber-aware shared_mutex: a synchronization primitive that functions as a multiple-reader/single-writer lock.
carb::tasking::SharedMutexWrapper: Wrapper for a carb::tasking::SharedMutex that (mostly) conforms to C++ Named Requirements of SharedMutex .
carb::tasking::TaskGroup: TaskGroup is a small and fast counter for tasks.
carb::tasking::ThreadPool: Opaque handle for a thread pool.
carb::tasking::ThreadPoolWrapper: Helper class for using IThreadPool API.
carb::thread::AtomicBackoff: A utility class for providing a growing number of pause instructions, followed by yielding.
carb::thread::ThreadLocal: Base template.
carb::thread::ThreadLocal< T, false >: A class for declaring a dynamic thread-local variable (Large/Non-trivial specialization).
carb::thread::ThreadLocal< T, true >: A class for declaring a dynamic thread-local variable (Trivial/Pointer/POD specialization).
carb::thread::detail::SpinlockImpl: Spinlock and RecursiveSpinlock are locking primitives that never enter the kernel to wait.
carb::thread::mutex: A Carbonite implementation of std::mutex .
carb::thread::recursive_mutex: A Carbonite implementation of std::recursive_mutex .
carb::thread::recursive_shared_mutex: A recursive shared mutex.
carb::thread::shared_mutex: A shared mutex implementation conforming to C++17's shared_mutex .
carb::time::tsc_clock: Static class for a CPU time-stamp clock.
carb::variant::Registrar: Lifetime management wrapper for IVariant::registerType() .
carb::variant::Variant: A wrapper class for managing the lifetime of VariantData and converting the contained value to C++ types.
carb::variant::VariantArray: An array-of-variants type that can itself be contained in a Variant .
carb::variant::VariantMap: An associative array (i.e.
omni::audio::experimental::IAudioCapture: Low-Level Audio Capture Plugin Interface.
omni::audio::experimental::ICaptureStream: An individual audio capture stream.
omni::audio::experimental::ICaptureStream_abi: An individual audio capture stream.
omni::core::Api: The API layer of an Omniverse interface.
omni::core::Api< omni::core::ITypeFactory_abi >: Implements the generated API layer for omni::core::ITypeFactory
omni::core::Generated: Templated class to store generated code from the omni.bind code generator.
omni::core::Generated< omni::core::IObject_abi >: Base class for all.
omni::core::Generated< omni::core::ITypeFactory_abi >: A mapping from type id's to implementations.
omni::core::Generated< omni::core::IWeakObjectControlBlock_abi >: Control block to maintain weak and strong reference counts for an object.
omni::core::Generated< omni::core::IWeakObject_abi >: Interface defining a contract for objects which support "weak"/non-owning references.
omni::core::Generated< omni::experimental::job::IAffinityMask_abi >: Interface for providing a CPU affinity mask to the plugin.
omni::core::Generated< omni::experimental::job::IJobAffinity_abi >: Interface for setting CPU affinity for the job system.
omni::core::Generated< omni::experimental::job::IJobWorker_abi >: Interface for managing the number of workers in the job system.
omni::core::Generated< omni::experimental::job::IJob_abi >: Basic interface for launching jobs on a foreign job system.
omni::core::Generated< omni::ext::IExtensionData_abi >: Information about an extension.
omni::core::Generated< omni::ext::IExtensionHooks_abi >: Hooks that can be defined by plugins to better understand how the plugin is being used by the extension system.
omni::core::Generated< omni::log::ILogChannelFilter_abi >: Read-only object to encapsulate a channel filter's pattern and effects.
omni::core::Generated< omni::log::ILogChannelUpdateConsumer_abi >: Consumes (listens for) state change to one or more omni::log::ILog objects.
omni::core::Generated< omni::log::ILogMessageConsumer_abi >: Consumes (listens for) log messages.
omni::core::Generated< omni::log::ILog_abi >: Multi-channel logging interface which can write logs to multiple consumers.
omni::core::Generated< omni::platforminfo::ICpuInfo_abi >: Interface to collect information about the CPUs installed in the calling system.
omni::core::Generated< omni::platforminfo::IMemoryInfo_abi >: Interface to collect and retrieve information about memory installed in the system.
omni::core::Generated< omni::platforminfo::IOsInfo_abi >: Interface to collect and retrieve information about the operating system.
omni::core::Generated< omni::str::IReadOnlyCString_abi >: Reference counted read-only C-style (i.e. null-terminated) string.
omni::core::Generated< omni::structuredlog::IStructuredLogControl_abi >: Structured log state control interface.
omni::core::Generated< omni::structuredlog::IStructuredLogExtraFields_abi >: Interface to manage extra CloudEvent fields to be included in each emitted message.
omni::core::Generated< omni::structuredlog::IStructuredLogFromILog_abi >: This interface controls the ability to send Carbonite and Omniverse logging through the structured log system.
omni::core::Generated< omni::structuredlog::IStructuredLogSettings2_abi >: Interface for the second version of the IStructuredLogSettings interface.
omni::core::Generated< omni::structuredlog::IStructuredLogSettings_abi >: Structured log settings interface.
omni::core::Generated< omni::structuredlog::IStructuredLog_abi >: Main structured log interface.
omni::core::IObject: Base class for all.
omni::core::IObject_abi: Base class for all.
omni::core::ITypeFactory_abi: A mapping from type id's to implementations.
omni::core::IWeakObject: Interface defining a contract for objects which support "weak"/non-owning references.
omni::core::IWeakObjectControlBlock: Control block to maintain weak and strong reference counts for an object.
omni::core::IWeakObjectControlBlock_abi: Control block to maintain weak and strong reference counts for an object.
omni::core::IWeakObject_abi: Interface defining a contract for objects which support "weak"/non-owning references.
omni::core::Inherits: Helper template for interface inheritance.
omni::core::ObjectParam: Helper object used by omni.bind to ease, at zero cost, the acceptance of raw and smart pointers to methods that wish to accept a raw pointer.
omni::core::ObjectPtr: Smart pointer wrapper around interface pointers.
omni::core::ResultError: Exception object that encapsulates a Result along with a customizable message.
omni::core::TypeFactoryArgs: Arguments passed to omniCreateTypeFactory() .
omni::core::WeakPtr: Weak pointer to ONI objects much like std::weak_ptr .
omni::detail::PointerIterator: This iterator adapter wraps a pointer type into a class. It does not change the semantics of any operations from the fundamental logic of pointers. There are no bounds checks, there is no additional safety.
omni::expected: A monad which holds either an expected value (the success case) or an unexpected value (the error case).
omni::experimental::job::IAffinityMask_abi: Interface for providing a CPU affinity mask to the plugin.
omni::experimental::job::IJobAffinity_abi: Interface for setting CPU affinity for the job system.
omni::experimental::job::IJobWorker_abi: Interface for managing the number of workers in the job system.
omni::experimental::job::IJob_abi: Basic interface for launching jobs on a foreign job system.
omni::ext::ExtensionManager: The manager class that is responsible for all Extensions.
omni::ext::ExtensionStateChangeHookLambda: A wrapper object to allow passing an invocable type (i.e.
omni::ext::IExt: Extension plugin interface.
omni::ext::IExtensionData_abi: Information about an extension.
omni::ext::IExtensionHooks_abi: Hooks that can be defined by plugins to better understand how the plugin is being used by the extension system.
omni::ext::IExtensionManagerHooks: Extension manager subclass with all the hooks that can be installed into it.
omni::ext::IExtensionStateChangeHook: An interface that can be implemented to receive extension state changes.
omni::ext::IHookHolder: Hook holder.
omni::ext::IPathProtocolProvider: Interface to be implemented to add new extension path protocols.
omni::ext::IRegistryProvider: Interface to be implemented by registry providers.
omni::extras::ForceSymbolLink: Helper class to force the linking of a C++ symbol.
omni::extras::PrivacySettings: Static helper class to provide standardized access to the telemetry privacy setting values.
omni::extras::ScratchBuffer: A templated helper class to provide a simple resizable scratch buffer.
omni::extras::UniqueApp: Helper class to manage a unique app.
omni::function< TReturn(TArgs…)>: A polymorphic function wrapper which is compatible with
std::function
.omni::kit::IApp: Main Kit Application plugin.
omni::kit::IAppMessageBox: Interface for producing an OS-specific modal message box.
omni::kit::IAppScripting: Scripting Engine interface.
omni::kit::IRunLoopRunner: Interface to implement by custom run loop runners.
omni::kit::RunLoop: Run Loop.
omni::kit::Wildcard: Defines the wildcard class.
omni::log::ILog: Multi-channel logging interface which can write logs to multiple consumers.
omni::log::ILogChannelFilter: Read-only object to encapsulate a channel filter's pattern and effects.
omni::log::ILogChannelFilter_abi: Read-only object to encapsulate a channel filter's pattern and effects.
omni::log::ILogChannelUpdateConsumer: Consumes (listens for) state change to one or more omni::log::ILog objects.
omni::log::ILogChannelUpdateConsumer_abi: Consumes (listens for) state change to one or more omni::log::ILog objects.
omni::log::ILogMessageConsumer: Consumes (listens for) log messages.
omni::log::ILogMessageConsumer_abi: Consumes (listens for) log messages.
omni::log::ILog_abi: Multi-channel logging interface which can write logs to multiple consumers.
omni::platforminfo::ICpuInfo: Interface to collect information about the CPUs installed in the calling system.
omni::platforminfo::ICpuInfo_abi: Interface to collect information about the CPUs installed in the calling system.
omni::platforminfo::IMemoryInfo: Interface to collect and retrieve information about memory installed in the system.
omni::platforminfo::IMemoryInfo_abi: Interface to collect and retrieve information about memory installed in the system.
omni::platforminfo::IOsInfo: Interface to collect and retrieve information about the operating system.
omni::platforminfo::IOsInfo_abi: Interface to collect and retrieve information about the operating system.
omni::python::detail::PyObjectPtr: pybind11 "holder" for objects inherited from omni::core::ObjectPtr .
omni::str::IReadOnlyCString_abi: Reference counted read-only C-style (i.e. null-terminated) string.
omni::str::ReadOnlyCString: Concrete implementation of the IReadOnlyCString interface.
omni::string: This class is an ABI safe string implementation.
omni::structuredlog::Allocator: A memory allocator interface, which can be overwritten with your custom allocator.
omni::structuredlog::BasicStringView: An extension of carb::cpp::basic_string_view that can handle nullptr and
std::basic_string
as inputs.omni::structuredlog::BinaryBlobSizeCalculator: A helper class to calculate the required size of a binary blob.
omni::structuredlog::BlobReader: A class to read binary blobs produced by the BlobWriter .
omni::structuredlog::BlobWriter: A class to build a binary blob.
omni::structuredlog::BlockAllocator: An implementation of Allocator which will just allocate from a preallocated block of memory and never deallocate memory until the full preallocated block is freed.
omni::structuredlog::IStructuredLog: Main structured log interface.
omni::structuredlog::IStructuredLogControl: Structured log state control interface.
omni::structuredlog::IStructuredLogControl_abi: Structured log state control interface.
omni::structuredlog::IStructuredLogExtraFields: Interface to manage extra CloudEvent fields to be included in each emitted message.
omni::structuredlog::IStructuredLogExtraFields_abi: Interface to manage extra CloudEvent fields to be included in each emitted message.
omni::structuredlog::IStructuredLogFromILog: This interface controls the ability to send Carbonite and Omniverse logging through the structured log system.
omni::structuredlog::IStructuredLogFromILog_abi: This interface controls the ability to send Carbonite and Omniverse logging through the structured log system.
omni::structuredlog::IStructuredLogSettings: Structured log settings interface.
omni::structuredlog::IStructuredLogSettings2: Interface for the second version of the IStructuredLogSettings interface.
omni::structuredlog::IStructuredLogSettings2_abi: Interface for the second version of the IStructuredLogSettings interface.
omni::structuredlog::IStructuredLogSettings_abi: Structured log settings interface.
omni::structuredlog::IStructuredLog_abi: Main structured log interface.
omni::structuredlog::JsonBuilder: A class to build JSON trees using JsonNode structs.
omni::structuredlog::JsonConsumer: An interface for consuming the output JSON from the JsonSerializer .
omni::structuredlog::JsonLengthCounter: An implementation of JsonConsumer that just counts the length of the output string.
omni::structuredlog::JsonPrinter: An implementation of JsonConsumer that just prints to a fixed string.
omni::structuredlog::JsonSerializer: A utility that allows you to easily encode JSON data.
omni::structuredlog::JsonTreeSizeCalculator: Class for determining the allocation size required to build a JSON tree in a single block of memory.
omni::structuredlog::TempJsonNode: A temporary JsonNode object that will be cleaned up at the end of a scope.
omni::unexpected: The unexpected value of an expected monad. This is used as a convenient mechanism to report the error case when constructing an
expected
return.omni::vector: Implementation of an ABI-safe vector container.
omni::vector< bool >: For now, the bool specialization is defined so as to not be used. This way we can decide later if we want to provide an ABI-safe version or not.
rtx::RenderSettings: A class encapsulating render settings.