ReactOS 0.4.16-dev-2357-g35d0dfe
roapi.h
Go to the documentation of this file.
1/*
2 * PROJECT: ReactOS SDK
3 * LICENSE: MIT (https://spdx.org/licenses/MIT)
4 * PURPOSE: WinRT Runtime Object API
5 * COPYRIGHT: Copyright 2024 Timo Kreuzer (timo.kreuzer@reactos.org)
6 */
7
8#pragma once
9#define __ROAPI_H_
10
11#include <sal.h>
12#include <activation.h>
13
14#ifdef __cplusplus
15extern "C" {
16#endif
17
18#ifdef _ROAPI_
19 #define ROAPI
20#else
21 #define ROAPI DECLSPEC_IMPORT
22#endif
23
24typedef enum RO_INIT_TYPE
25{
29
30DECLARE_HANDLE(APARTMENT_SHUTDOWN_REGISTRATION_COOKIE);
31
32#ifdef __cplusplus
33typedef struct {} *RO_REGISTRATION_COOKIE;
34#else
35typedef struct _RO_REGISTRATION_COOKIE *RO_REGISTRATION_COOKIE;
36#endif
37
43 _In_ HSTRING classid,
44 _Out_ IInspectable **instance
45);
46
52 _In_ HSTRING classid,
53 _In_ REFIID iid,
54 _Out_ void **class_factory
55);
56
62 _In_ RO_INIT_TYPE initType);
63
65void
67RoUninitialize(void);
68
70
71#ifdef __cplusplus
72} // extern "C"
73#endif
static HINSTANCE instance
Definition: main.c:40
#define DECLARE_HANDLE(name)
Definition: mimeole.idl:23
#define _Check_return_
Definition: no_sal2.h:60
#define _Out_
Definition: no_sal2.h:160
#define _In_
Definition: no_sal2.h:158
#define REFIID
Definition: guiddef.h:118
ROAPI _Check_return_ HRESULT WINAPI RoActivateInstance(_In_ HSTRING classid, _Out_ IInspectable **instance)
ROAPI void WINAPI RoUninitialize(void)
Definition: roapi.c:138
struct _RO_REGISTRATION_COOKIE * RO_REGISTRATION_COOKIE
Definition: roapi.h:35
ROAPI _Check_return_ HRESULT WINAPI RoInitialize(_In_ RO_INIT_TYPE initType)
RO_INIT_TYPE
Definition: roapi.h:25
@ RO_INIT_SINGLETHREADED
Definition: roapi.h:26
@ RO_INIT_MULTITHREADED
Definition: roapi.h:27
ROAPI _Check_return_ HRESULT WINAPI RoGetActivationFactory(_In_ HSTRING classid, _In_ REFIID iid, _Out_ void **class_factory)
HRESULT(WINAPI * PFNGETACTIVATIONFACTORY)(_In_ HSTRING classId, _Out_ IActivationFactory **factory)
Definition: roapi.h:69
#define ROAPI
Definition: roapi.h:21
Definition: main.c:439
#define HRESULT
Definition: msvc.h:7
#define WINAPI
Definition: msvc.h:6