ReactOS 0.4.16-dev-2354-g16de117
marshal.c File Reference
#include <stdarg.h>
#include <string.h>
#include <assert.h>
#include "windef.h"
#include "winbase.h"
#include "winuser.h"
#include "objbase.h"
#include "ole2.h"
#include "winerror.h"
#include "compobj_private.h"
#include "wine/debug.h"
Include dependency graph for marshal.c:

Go to the source code of this file.

Macros

#define COBJMACROS
 

Functions

 WINE_DEFAULT_DEBUG_CHANNEL (ole)
 
HRESULT WINAPI InternalCoStdMarshalObject (REFIID riid, DWORD dest_context, void *dest_context_data, void **ppvObject)
 
static HRESULT WINAPI StdMarshalCF_QueryInterface (LPCLASSFACTORY iface, REFIID riid, LPVOID *ppv)
 
static ULONG WINAPI StdMarshalCF_AddRef (LPCLASSFACTORY iface)
 
static ULONG WINAPI StdMarshalCF_Release (LPCLASSFACTORY iface)
 
static HRESULT WINAPI StdMarshalCF_CreateInstance (LPCLASSFACTORY iface, LPUNKNOWN pUnk, REFIID riid, LPVOID *ppv)
 
static HRESULT WINAPI StdMarshalCF_LockServer (LPCLASSFACTORY iface, BOOL fLock)
 
HRESULT MARSHAL_GetStandardMarshalCF (LPVOID *ppv)
 

Variables

static const IClassFactoryVtbl StdMarshalCFVtbl
 
static const IClassFactoryVtbl * StdMarshalCF = &StdMarshalCFVtbl
 

Macro Definition Documentation

◆ COBJMACROS

#define COBJMACROS

Definition at line 27 of file marshal.c.

Function Documentation

◆ InternalCoStdMarshalObject()

HRESULT WINAPI InternalCoStdMarshalObject ( REFIID  riid,
DWORD  dest_context,
void dest_context_data,
void **  ppvObject 
)

Definition at line 2260 of file marshal.c.

2261{
2262 return StdMarshalImpl_Construct(riid, dest_context, dest_context_data, ppvObject);
2263}
static HRESULT StdMarshalImpl_Construct(REFIID, DWORD, void *, void **)
Definition: marshal.c:2240
REFIID riid
Definition: atlbase.h:39

Referenced by StdMarshalCF_CreateInstance().

◆ MARSHAL_GetStandardMarshalCF()

HRESULT MARSHAL_GetStandardMarshalCF ( LPVOID ppv)

Definition at line 92 of file marshal.c.

93{
94 *ppv = &StdMarshalCF;
95 return S_OK;
96}
static const IClassFactoryVtbl * StdMarshalCF
Definition: marshal.c:90
REFIID LPVOID * ppv
Definition: atlbase.h:39
#define S_OK
Definition: intsafe.h:52

Referenced by DllGetClassObject().

◆ StdMarshalCF_AddRef()

static ULONG WINAPI StdMarshalCF_AddRef ( LPCLASSFACTORY  iface)
static

Definition at line 56 of file marshal.c.

57{
58 return 2; /* non-heap based object */
59}

◆ StdMarshalCF_CreateInstance()

static HRESULT WINAPI StdMarshalCF_CreateInstance ( LPCLASSFACTORY  iface,
LPUNKNOWN  pUnk,
REFIID  riid,
LPVOID ppv 
)
static

Definition at line 66 of file marshal.c.

68{
69 if (IsEqualIID(riid, &IID_IUnknown) || IsEqualIID(riid, &IID_IMarshal))
71
72 FIXME("(%s), not supported.\n",debugstr_guid(riid));
73 return E_NOINTERFACE;
74}
#define FIXME(fmt,...)
Definition: precomp.h:53
const GUID IID_IUnknown
#define NULL
Definition: types.h:112
HRESULT WINAPI InternalCoStdMarshalObject(REFIID riid, DWORD dest_context, void *dest_context_data, void **ppvObject)
Definition: marshal.c:2260
#define debugstr_guid
Definition: kernel32.h:35
#define IsEqualIID(riid1, riid2)
Definition: guiddef.h:95
#define E_NOINTERFACE
Definition: winerror.h:3479

◆ StdMarshalCF_LockServer()

static HRESULT WINAPI StdMarshalCF_LockServer ( LPCLASSFACTORY  iface,
BOOL  fLock 
)
static

Definition at line 76 of file marshal.c.

77{
78 FIXME("(%d), stub!\n",fLock);
79 return S_OK;
80}

◆ StdMarshalCF_QueryInterface()

static HRESULT WINAPI StdMarshalCF_QueryInterface ( LPCLASSFACTORY  iface,
REFIID  riid,
LPVOID ppv 
)
static

Definition at line 44 of file marshal.c.

46{
47 *ppv = NULL;
49 {
50 *ppv = iface;
51 return S_OK;
52 }
53 return E_NOINTERFACE;
54}
const GUID IID_IClassFactory

◆ StdMarshalCF_Release()

static ULONG WINAPI StdMarshalCF_Release ( LPCLASSFACTORY  iface)
static

Definition at line 61 of file marshal.c.

62{
63 return 1; /* non-heap based object */
64}

◆ WINE_DEFAULT_DEBUG_CHANNEL()

WINE_DEFAULT_DEBUG_CHANNEL ( ole  )

Variable Documentation

◆ StdMarshalCF

const IClassFactoryVtbl* StdMarshalCF = &StdMarshalCFVtbl
static

Definition at line 90 of file marshal.c.

Referenced by MARSHAL_GetStandardMarshalCF().

◆ StdMarshalCFVtbl

const IClassFactoryVtbl StdMarshalCFVtbl
static
Initial value:
=
{
}
static ULONG WINAPI StdMarshalCF_AddRef(LPCLASSFACTORY iface)
Definition: marshal.c:56
static ULONG WINAPI StdMarshalCF_Release(LPCLASSFACTORY iface)
Definition: marshal.c:61
static HRESULT WINAPI StdMarshalCF_LockServer(LPCLASSFACTORY iface, BOOL fLock)
Definition: marshal.c:76
static HRESULT WINAPI StdMarshalCF_CreateInstance(LPCLASSFACTORY iface, LPUNKNOWN pUnk, REFIID riid, LPVOID *ppv)
Definition: marshal.c:66
static HRESULT WINAPI StdMarshalCF_QueryInterface(LPCLASSFACTORY iface, REFIID riid, LPVOID *ppv)
Definition: marshal.c:44

Definition at line 82 of file marshal.c.