Key WRL APIs by Category

The following tables list primary Windows Runtime C++ Template Library classes, structs, functions, and macros. Constructs in helper namespaces and classes are omitted. These lists augment the API documentation, which is arranged by namespace.

Classes

Title

Description

ActivationFactory Class

Enables one or more classes to be activated by the Windows Runtime.

AsyncBase Class

Implements the Windows Runtime asynchronous state machine.

ClassFactory Class

Implements the basic functionality of the IClassFactory interface.

ComPtr Class

Creates a smart pointer type that represents the interface specified by the template parameter. ComPtr automatically maintains a reference count for the underlying interface pointer and releases the interface when the reference count goes to zero.

Event Class (Windows Runtime C++ Template Library)

Represents an event.

EventSource Class

Represents an event. EventSource member functions add, remove, and invoke event handlers.

FtmBase Class

Represents a free-threaded marshaler object.

HandleT Class

Represents a handle to an object.

HString Class

Provides support for manipulating HSTRING handles.

HStringReference Class

Represents an HSTRING that is created from an existing string.

Module Class

Represents a collection of related objects.

Module::GenericReleaseNotifier Class

Invokes an event handler when the last object in the current module is released. The event handler is specified by on a lambda, functor, or pointer-to-function.

Module::MethodReleaseNotifier Class

Invokes an event handler when the last object in the current module is released. The event handler is specified by an object and its pointer-to-a-method member.

Module::ReleaseNotifier Class

Invokes an event handler when the last object in a module is released.

RoInitializeWrapper Class

Initializes the Windows Runtime.

RuntimeClass Class

Represents an instantiated class that inherits the specified number of interfaces, and provides the specified Windows Runtime, classic COM, and weak reference support.

SimpleActivationFactory Class

Provides a fundamental mechanism to create a Windows Runtime or classic COM base class.

SimpleClassFactory Class

Provides a fundamental mechanism to create a base class.

WeakRef Class

Represents a weak reference that can be used by only the Windows Runtime, not classic COM. A weak reference represents an object that might or might not be accessible.

Structures

Title

Description

ChainInterfaces Structure

Specifies verification and initialization functions that can be applied to a set of interface IDs.

CloakedIid Structure

Indicates to the RuntimeClass, Implements and ChainInterfaces templates that the specified interface is not accessible in the IID list.

Implements Structure

Implements QueryInterface and GetIid for the specified interfaces.

MixIn Structure

Ensures that a runtime class derives from Windows Runtime interfaces, if any, and then classic COM interfaces.

Functions

Title

Description

ActivateInstance Function

Registers and retrieves an instance of a specified type defined in a specified class ID.

AsWeak Function

Retrieves a weak reference to a specified instance.

Callback Function (Windows Runtime C++ Template Library)

Creates an object whose member function is a callback method.

CreateActivationFactory Function

Creates a factory that produces instances of the specified class that can be activated by the Windows Runtime.

CreateClassFactory Function

Creates a factory that produces instances of the specified class.

GetActivationFactory Function

Retrieves an activation factory for the type specified by the template parameter.

Make Function

Initializes the specified Windows Runtime class.

Macros

Title

Description

ActivatableClass Macros

Populates an internal cache that contains a factory that can create an instance of the specified class.

InspectableClass Macro

Sets the runtime class name and trust level.

See Also

Concepts

Windows Runtime C++ Template Library (WRL)