Espace de noms winrt (C++/WinRT)

L’espace de noms winrt fournit des types de données personnalisés appartenant à C++/WinRT, la projection de langage C++17 standard pour les API Windows Runtime (WinRT). Ces types personnalisés fournissent des conversions appropriées vers et à partir de types standard afin que, la plupart du temps, vous puissiez continuer à utiliser les fonctionnalités de langage C++ standard que vous êtes habitué à utiliser, ainsi que le code source que vous avez déjà.

L’espace de noms winrt fournit également des fonctions (pour créer des instances de classe runtime, boxing et unboxing, etc.), des pointeurs intelligents et d’autres fonctionnalités.

Types dans l’espace de noms winrt

Type Description
agile_ref, modèle de struct Type représentant une référence agile à un objet ou une interface C++/WinRT.
apartment_context, struct Capture le contexte du thread dans une coroutine afin qu’il puisse être restauré ultérieurement.
array_view, modèle de struct Vue, ou étendue, d’une série contiguë de valeurs.
auto_revoke_t, struct de marqueur Type de marqueur utilisé pour demander un révocateur d’événements lors de l’inscription d’un délégué pour gérer un événement.
modèle de struct de marqueur masqué Type de marqueur utilisé pour indiquer qu’une interface implémentée ne doit pas être signalée par IInspectable::GetIids
clock, struct Type contenant des fonctions d’assistance statiques permettant de convertir un élément Windows::Foundation::D ateTime (autrement dit, un std::chrono::time_point) vers et depuis winrt::file_time, et vers et depuis time_t.
com_array, modèle de struct Vue, ou étendue, d’une série contiguë de valeurs pour le passage vers et depuis Windows Runtime API.
com_ptr, modèle de struct Modèle de pointeur intelligent COM avec nombre de références.
struct de marqueur composable Type de marqueur utilisé pour indiquer que le type peut être la classe interne d’une classe composable.
composition d’un struct de marqueur Type de marqueur utilisé pour indiquer que le type est la classe externe d’une classe composable.
deferrable_event_args Type que vous pouvez utiliser pour implémenter (produire) le modèle d’événement différé.
delegate, modèle de struct Type que vous pouvez utiliser pour déclarer un type délégué personnalisé pour vos propres événements.
event, modèle de struct Type que vous pouvez utiliser pour déclarer et implémenter un événement d’un type délégué spécifié.
event_revoker, modèle de struct Lorsque vous inscrivez un délégué, vous pouvez demander un révocateur d’événements, que vous pouvez utiliser pour révoquer automatiquement ou manuellement votre délégué.
event_token, struct Jeton retourné lors de l’inscription d’un délégué de gestion d’événements auprès d’un événement ; peut être utilisé pour révoquer l’inscription du même délégué.
file_handle, struct Représente un objet de handle de fichier Windows.
fire_and_forget, struct Utilisez ce type de retour pour faire de votre coroutine un fire-and-forget.
guid, struct Représente un identificateur global unique (GUID).
handle, struct Représente un objet de handle Windows.
handle_type, modèle de struct Modèle pour les structs winrt::handle et winrt::file_handle .
hstring, struct Collection séquentielle de caractères Unicode UTF-16 représentant une chaîne de texte.
hresult_access_denied, struct Type dérivé de winrt::hresult_error, représentant un code d’erreur HRESULT E_ACCESSDENIED.
hresult_canceled, struct Type dérivé de winrt::hresult_error, représentant un code d’erreur HRESULT ERROR_CANCELLED.
hresult_changed_state, struct Type dérivé de winrt::hresult_error, représentant un code d’erreur HRESULT E_CHANGED_STATE.
hresult_class_not_available, struct Type dérivé de winrt::hresult_error, représentant un code d’erreur HRESULT CLASS_E_CLASSNOTAVAILABLE.
hresult_error, struct Type représentant un code d’erreur HRESULT.
hresult_illegal_delegate_assignment, struct Type dérivé de winrt::hresult_error, représentant un code d’erreur HRESULT E_ILLEGAL_DELEGATE_ASSIGNMENT.
hresult_illegal_method_call, struct Type dérivé de winrt::hresult_error, représentant un code d’erreur HRESULT E_ILLEGAL_METHOD_CALL.
hresult_illegal_state_change, struct Type dérivé de winrt::hresult_error, représentant un code d’erreur HRESULT E_ILLEGAL_STATE_CHANGE.
hresult_invalid_argument, struct Type dérivé de winrt::hresult_error, représentant un code d’erreur HRESULT E_INVALIDARG.
hresult_no_interface, struct Type dérivé de winrt::hresult_error, représentant un code d’erreur HRESULT E_NOINTERFACE.
hresult_not_implemented, struct Type dérivé de winrt::hresult_error, représentant un code d’erreur HRESULT E_NOTIMPL.
hresult_out_of_bounds, struct Type dérivé de winrt::hresult_error, représentant un code d’erreur HRESULT E_BOUNDS.
hresult_wrong_thread, struct Type dérivé de winrt::hresult_error, représentant un code d’erreur HRESULT RPC_E_WRONG_THREAD.
implements, modèle de struct Modèle de struct de base qui implémente une ou plusieurs interfaces Windows Runtime pour le compte d’un type dérivé.
map_base, modèle de struct Classe de base, dont vous pouvez dériver, qui représente une collection associative non observable.
map_view_base, modèle de struct Classe de base, dont vous pouvez dériver, qui représente une vue d’une séquence contiguë d’éléments dans une collection associative.
no_module_lock struct de marqueur Type de marqueur utilisé pour indiquer que les instances d’un type ne comptent pas dans le nombre d’objets de module.
no_weak_ref, struct de marqueur Type de marqueur utilisé pour refuser la prise en charge des références faibles.
non_agile, struct de marqueur Type de marqueur utilisé pour indiquer que votre type n’est pas agile et, par conséquent, n’implémente pas l’interface IAgileObject.
observable_map_base, modèle de struct Classe de base, dont vous pouvez dériver, qui représente une collection associative observable.
observable_vector_base, modèle de struct Classe de base, dont vous pouvez dériver, qui représente un vecteur observable.
static_lifetime, struct de marqueur Type de marqueur utilisé pour choisir une fabrique d’activation à une durée de vie statique.
vector_base, modèle de struct Classe de base, dont vous pouvez dériver, qui représente une collection à usage général non observable appelée vecteur.
vector_view_base, modèle de struct Classe de base à partir de laquelle vous pouvez dériver pour implémenter votre propre vue personnalisée, ou étendue, d’une séquence contiguë d’éléments dans une collection à usage général.
weak_ref, modèle de struct Type représentant une référence faible à un objet ou une interface C++/WinRT.
Windows::Foundation::IUnknown, struct Chaque classe d’exécution C++/WinRT (qu’il s’agisse d’une classe d’exécution Windows ou d’une classe d’exécution tierce) dérive de winrt::Windows::Foundation::IUnknown.

Fonctions dans l’espace de noms winrt

Fonction Description
attach_abi, fonction Fonction d’assistance qui attache un objet C++/WinRT à un handle ou à un pointeur brut qui possède une référence à sa cible.
box_value, modèle de fonction Modèle de fonction qui encapsule (ou boxe) une valeur scalaire ou matricielle à l’intérieur d’un objet de classe de référence afin qu’elle puisse être transmise à une fonction qui attend IInspectable.
capture, modèle de fonction Un modèle de fonction qui appelle une fonction ou une méthode spécifiée, capture le pointeur d’interface résultant et le retourne en tant que winrt::com_ptr.
check_bool, modèle de fonction Fonction d’assistance qui vérifie si une valeur est false et, le cas échéant, récupère la valeur du code de dernière erreur du thread appelant et lève une exception à l’aide d’un objet C++/WinRT qui représente ce code d’erreur.
check_hresult, fonction Fonction d’assistance qui vérifie si un code HRESULT représente une erreur et, le cas échéant, lève une exception à l’aide d’un objet C++/WinRT qui représente le code d’erreur.
check_nt, modèle de fonction Fonction d’assistance qui vérifie si un code représente une erreur et, le cas échéant, mappe la valeur NT status du code d’erreur à une valeur HRESULT et lève une exception à l’aide d’un objet C++/WinRT qui représente le code d’erreur.
check_pointer, modèle de fonction Fonction d’assistance qui vérifie si un pointeur est null et, le cas échéant, récupère la valeur du code de dernière erreur du thread appelant et lève une exception à l’aide d’un objet C++/WinRT qui représente ce code d’erreur.
check_win32, modèle de fonction Fonction d’assistance qui vérifie si un code représente une erreur et, le cas échéant, mappe le code d’erreur système de la valeur à une valeur HRESULT et lève une exception à l’aide d’un objet C++/WinRT qui représente le code d’erreur.
copy_from_abi, fonction Fonction d’assistance qui copie vers un objet C++/WinRT à partir d’un handle ou d’un pointeur brut.
copy_to_abi, fonction Fonction d’assistance qui copie vers un handle ou vers un pointeur à partir d’un objet C++/WinRT.
create_instance, modèle de fonction Modèle de fonction qui crée un seul objet non initialisé de la classe associée à un CLSID spécifié et le retourne en tant que winrt::com_ptr ou lève en cas de non-réussite.
detach_abi, fonction Fonction d’assistance qui détache un objet C++/WinRT de son handle référencé ou de son interface référencée.
from_abi, modèle de fonction Fonction d’assistance qui, en fonction d’un objet d’un type projeté, récupère un pointeur vers l’implémentation.
get_abi fonction Fonction d’assistance qui récupère un pointeur vers l’interface IUnknown sous-jacente d’un objet C++/WinRT.
get_activation_factory, modèle de fonction Fonction d’assistance qui récupère la fabrique d’activation pour un type de classe Windows Runtime spécifié.
get_cancellation_token, fonction Dans une coroutine, utilisez l’objet retourné par winrt::get_cancellation_token pour interroger l’annulation ou y répondre.
get_class_name, fonction Fonction d’assistance qui récupère une chaîne contenant le nom de type complet d’une classe Windows Runtime spécifiée.
get_interfaces, fonction Fonction d’assistance qui récupère un tableau contenant les identificateurs des interfaces implémentées par un objet C++/WinRT.
get_progress_token, fonction Dans une coroutine, utilisez l’objet retourné par winrt::get_progress_token pour signaler la progression à un gestionnaire de progression.
get_self, modèle de fonction Fonction d’assistance qui, en fonction d’un objet d’un type projeté, récupère un pointeur vers l’implémentation.
get_trust_level, fonction Fonction d’assistance qui récupère le niveau d’approbation d’un objet C++/WinRT.
get_unknown, fonction Fonction d’assistance qui retourne l’adresse de l’interface IUnknown brute sous-jacente d’un objet d’un type projeté.
guid_of, modèle de fonction Modèle de fonction d’assistance qui récupère le GUID d’une classe, d’une coclasse ou d’une interface runtime.
is_guid_of, modèle de fonction Modèle de fonction d’assistance qui détermine si le GUID fourni est celui de l’une des classes d’exécution, coclasses ou interfaces spécifiées.
make, modèle de fonction Méthode de fabrique qui retourne une instance d’un type ou d’une interface projetée lorsqu’elle est paramétrée avec le type d’implémentation correspondant.
make_agile, modèle de fonction Fonction d’assistance qui retourne un objet agile_ref , représentant une référence agile à un objet ou une interface C++/WinRT.
make_self, modèle de fonction Méthode de fabrique qui retourne une com_ptr à un instance du type d’implémentation pour une classe runtime.
make_weak, modèle de fonction Fonction d’assistance qui retourne un objet weak_ref , représentant une référence faible à un objet ou une interface C++/WinRT.
name_of, modèle de fonction Fonction d’assistance qui récupère une vue de chaîne contenant le nom de type complet d’une classe Windows Runtime particulière.
put_abi fonction Fonction d’assistance qui récupère l’adresse du pointeur d’interface IUnknown sous-jacent d’un objet C++/WinRT afin qu’elle puisse être définie sur une autre valeur.
resume_after, fonction Fonction d’assistance qui retourne le contrôle à l’appelant, puis reprend l’exécution sur un thread de pool de threads après un délai.
resume_background, fonction Fonction d’assistance qui retourne le contrôle à l’appelant et reprend l’exécution sur un thread de pool de threads.
resume_foreground, fonction Une fonction d’assistance(à utiliser dans une coroutine) que vous pouvez co_await basculer l’exécution vers un thread de premier plan spécifique.
resume_on_signal Fonction que vous pouvez utiliser pour suspendre jusqu’à ce qu’un événement de noyau soit signalé.
single_threaded_map, modèle de fonction Modèle de fonction qui crée et retourne un objet d’un type qui implémente une collection associative non observable (map). L’objet est retourné sous la forme d’un IMap.
single_threaded_observable_map, modèle de fonction Modèle de fonction qui crée et retourne un objet d’un type qui implémente une collection associative observable (map). L’objet est retourné en tant que IObservableMap.
single_threaded_observable_vector, modèle de fonction Modèle de fonction qui crée et retourne un objet d’un type qui implémente une collection observable. L’objet est retourné en tant que IObservableVector.
single_threaded_vector, modèle de fonction Modèle de fonction qui crée et retourne un objet d’un type qui implémente une collection à usage général. L’objet est retourné en tant qu’IVector.
swap, fonction Fonction d’assistance qui échange le contenu de deux valeurs.
throw_hresult, fonction Fonction d’assistance qui prend un code d’erreur HRESULT et lève une exception à l’aide d’un objet C++/WinRT qui représente ce code d’erreur.
throw_last_error, fonction Fonction d’assistance qui récupère la valeur de code de dernière erreur du thread appelant et lève une exception à l’aide d’un objet C++/WinRT qui représente ce code d’erreur.
to_hresult, fonction Fonction d’assistance, à utiliser dans un bloc catch, qui transforme la dernière exception levée dans un code d’erreur HRESULT.
to_hstring, fonction Fonction d’assistance qui convertit une valeur d’entrée en winrt::hstring contenant la représentation de chaîne de la valeur.
to_string fonction Fonction d’assistance qui convertit une chaîne large d’entrée en chaîne std::string contenant une chaîne étroite UTF-8.
try_capture, modèle de fonction Un modèle de fonction qui appelle une fonction ou une méthode spécifiée, capture le pointeur d’interface qui est sortie de la fonction ou de la méthode, et le retourne sous la forme d’un winrt::com_ptr ou d’un com_ptr vide si elle échoue.
try_create_instance, modèle de fonction Modèle de fonction qui crée un seul objet non initialisé de la classe associée à un CLSID spécifié et le retourne sous la forme d’un winrt::com_ptr ou d’une com_ptr vide si elle échoue.
try_get_activation_factory, modèle de fonction Fonction d’assistance qui récupère la fabrique d’activation pour un type de classe Windows Runtime spécifié ou une com_ptr vide si elle échoue.
unbox_value, modèle de fonction Modèle de fonction qui désactive (ou désactive) une valeur scalaire ou matricielle à l’intérieur d’un objet de classe de référence afin qu’elle puisse être traitée dans une fonction qui attend IInspectable.
unbox_value_or, modèle de fonction Modèle de fonction qui déballe (ou désactive) une valeur scalaire à l’intérieur d’un objet de classe de référence, avec une valeur de secours, afin qu’elle puisse être traitée dans une fonction qui attend IInspectable.
xaml_typename, modèle de fonction Fonction d’assistance qui retourne le nom de type d’un Windows Runtime type, sous la forme d’un objet Windows::UI::Xaml::Interop::TypeName.

Fonctions C++/WinRT qui étendent les API Windows Runtime

Des fonctions d’extension existent sur les types de projection C++/WinRT pour certaines API Windows Runtime. Par exemple, winrt::Windows::Foundation::IAsyncAction est le type de projection C++/WinRT pour IAsyncAction. Les fonctions d’extension ne font pas partie de la surface d’interface binaire d’application (ABI) des types Windows Runtime réels. Elles ne sont donc pas répertoriées en tant que membres des API Windows Runtime. Mais vous pouvez les appeler à partir de n’importe quel projet C++/WinRT.

WinRT API Fonction(s) Description
IAsyncAction get, wait_for Consultez Fonctions d’extension IAsyncAction C++/WinRT
IAsyncActionWithProgress ; get, wait_for Consultez Fonctions d’extension IAsyncActionWithProgress C++/WinRT
IAsyncOperation get, wait_for Consultez Fonctions d’extension IAsyncOperation C++/WinRT
IAsyncOperationWithProgress. get, wait_for Consultez Fonctions d’extension IAsyncOperationWithProgress C++/WinRT
IBindableIterable début, fin Voir Fonctions d’extension IBindableIterable C++/WinRT
IBindableIterator begin, end, operator++, operator++(int), operator* Consultez Fonctions d’extension IBindableIterator C++/WinRT
IBuffer data Voir Fonctions d’extension IBuffer C++/WinRT
IIterable début, fin Voir Fonctions d’extension IIterable C++/WinRT
IIterator operator++, operator++(int), operator* Voir Fonctions d’extension IIterator C++/WinRT
IKeyValuePair operator== Consultez Fonctions d’extension IKeyValuePair C++/WinRT
Imap begin, end, TryLookup, TryRemove Voir Fonctions d’extension IMap C++/WinRT
IMapView begin, end, TryLookup Voir Fonctions d’extension IMapView C++/WinRT
IMemoryBufferReference data Voir Fonctions d’extension IMemoryBufferReference C++/WinRT
IVector début, fin Consultez Fonctions d’extension IVector C++/WinRT
IVectorView début, fin Voir Fonctions d’extension IVectorView C++/WinRT

Autres fonctions

Fonction Description
GetRuntimeClassName, fonction Fonction membre (d’un type d’implémentation généré) qui retourne une chaîne contenant le nom de type complet de la classe Windows Runtime en cours d’implémentation.

Voir aussi

C++/WinRT