2 * Copyright 2014 Hans Leidekker for CodeWeavers
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2.1 of the License, or (at your option) any later version.
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the Free Software
16 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
25 #include "wine/debug.h"
27 WINE_DEFAULT_DEBUG_CHANNEL( vssapi
);
29 #ifdef __i386__ /* thiscall functions are i386-specific */
31 #define THISCALL(func) __thiscall_ ## func
32 #define THISCALL_NAME(func) __ASM_NAME("__thiscall_" #func)
34 #define __thiscall __stdcall
36 #define DEFINE_THISCALL_WRAPPER(func,args) \
37 void __declspec(naked) __thiscall_ ##func(void) \
45 #define DEFINE_THISCALL_WRAPPER(func,args) \
46 extern void THISCALL(func)(void); \
47 __ASM_GLOBAL_FUNC(__thiscall_ ## func, \
51 "jmp " __ASM_NAME(#func) __ASM_STDCALL(args) )
55 #define THISCALL(func) func
56 #define THISCALL_NAME(func) __ASM_NAME(#func)
57 #define __thiscall __cdecl
58 #define DEFINE_THISCALL_WRAPPER(func,args) /* nothing */
67 /******************************************************************
68 * ??0CVssWriter@@QAE@XZ (VSSAPI.@)
70 struct CVssWriter
* __thiscall
VSSAPI_CVssWriter_default_ctor( struct CVssWriter
*writer
)
72 FIXME( "%p\n", writer
);
73 writer
->vtable
= NULL
;
76 DEFINE_THISCALL_WRAPPER( VSSAPI_CVssWriter_default_ctor
, 4 )
78 /******************************************************************
79 * ??1CVssWriter@@UAE@XZ (VSSAPI.@)
81 void __thiscall
VSSAPI_CVssWriter_dtor( struct CVssWriter
*writer
)
83 FIXME( "%p\n", writer
);
85 DEFINE_THISCALL_WRAPPER( VSSAPI_CVssWriter_dtor
, 4 )
87 /******************************************************************
88 * ?Initialize@CVssWriter@@QAGJU_GUID@@PBGW4VSS_USAGE_TYPE@@W4VSS_SOURCE_TYPE@@W4_VSS_APPLICATION_LEVEL@@KW4VSS_ALTERNATE_WRITER_STATE@@_N@Z
90 HRESULT __thiscall
VSSAPI_CVssWriter_Initialize( struct CVssWriter
*writer
, VSS_ID id
,
91 LPCWSTR name
, VSS_USAGE_TYPE usage_type
, VSS_SOURCE_TYPE source_type
,
92 VSS_APPLICATION_LEVEL level
, DWORD timeout
, VSS_ALTERNATE_WRITER_STATE alt_writer_state
,
93 BOOL throttle
, LPCWSTR instance
)
95 FIXME( "%p, %s, %s, %u, %u, %u, %u, %u, %d, %s\n", writer
, debugstr_guid(&id
),
96 debugstr_w(name
), usage_type
, source_type
, level
, timeout
, alt_writer_state
,
97 throttle
, debugstr_w(instance
) );
100 DEFINE_THISCALL_WRAPPER( VSSAPI_CVssWriter_Initialize
, 52 )
102 /******************************************************************
103 * ?Subscribe@CVssWriter@@QAGJK@Z
105 HRESULT __thiscall
VSSAPI_CVssWriter_Subscribe( struct CVssWriter
*writer
, DWORD flags
)
107 FIXME( "%p, %x\n", writer
, flags
);
110 DEFINE_THISCALL_WRAPPER( VSSAPI_CVssWriter_Subscribe
, 8 )
112 /******************************************************************
113 * ?Unsubscribe@CVssWriter@@QAGJXZ
115 HRESULT __thiscall
VSSAPI_CVssWriter_Unsubscribe( struct CVssWriter
*writer
)
117 FIXME( "%p\n", writer
);
120 DEFINE_THISCALL_WRAPPER( VSSAPI_CVssWriter_Unsubscribe
, 4 )