xref: /reactos/dll/win32/vssapi/main.c (revision 1a83762c)
1 /*
2  * Copyright 2014 Hans Leidekker for CodeWeavers
3  *
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.
8  *
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.
13  *
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
17  */
18 
19 #ifndef __REACTOS__
20 #include "config.h"
21 #endif
22 #include <stdarg.h>
23 #include "windef.h"
24 #include "winbase.h"
25 #include "vss.h"
26 #include "vswriter.h"
27 #include "wine/asm.h"
28 #include "wine/debug.h"
29 
30 #ifdef __REACTOS__
31 #ifdef _MSC_VER
32 #define __thiscall __stdcall
33 #endif
34 #endif
35 
36 WINE_DEFAULT_DEBUG_CHANNEL( vssapi );
37 
38 struct CVssWriter
39 {
40     void **vtable;
41 };
42 
43 /******************************************************************
44  *  ??0CVssWriter@@QAE@XZ (VSSAPI.@)
45  */
46 struct CVssWriter * __thiscall VSSAPI_CVssWriter_default_ctor( struct CVssWriter *writer )
47 {
48     FIXME( "%p\n", writer );
49     writer->vtable = NULL;
50     return writer;
51 }
52 DEFINE_THISCALL_WRAPPER( VSSAPI_CVssWriter_default_ctor, 4 )
53 
54 /******************************************************************
55  *  ??1CVssWriter@@UAE@XZ (VSSAPI.@)
56  */
57 void __thiscall VSSAPI_CVssWriter_dtor( struct CVssWriter *writer )
58 {
59     FIXME( "%p\n", writer );
60 }
61 DEFINE_THISCALL_WRAPPER( VSSAPI_CVssWriter_dtor, 4 )
62 
63 /******************************************************************
64  *  ?Initialize@CVssWriter@@QAGJU_GUID@@PBGW4VSS_USAGE_TYPE@@W4VSS_SOURCE_TYPE@@W4_VSS_APPLICATION_LEVEL@@KW4VSS_ALTERNATE_WRITER_STATE@@_N@Z
65  */
66 HRESULT __thiscall VSSAPI_CVssWriter_Initialize( struct CVssWriter *writer, VSS_ID id,
67     LPCWSTR name, VSS_USAGE_TYPE usage_type, VSS_SOURCE_TYPE source_type,
68     VSS_APPLICATION_LEVEL level, DWORD timeout, VSS_ALTERNATE_WRITER_STATE alt_writer_state,
69     BOOL throttle, LPCWSTR instance )
70 {
71     FIXME( "%p, %s, %s, %u, %u, %u, %u, %u, %d, %s\n", writer, debugstr_guid(&id),
72            debugstr_w(name), usage_type, source_type, level, timeout, alt_writer_state,
73            throttle, debugstr_w(instance) );
74     return S_OK;
75 }
76 DEFINE_THISCALL_WRAPPER( VSSAPI_CVssWriter_Initialize, 52 )
77 
78 /******************************************************************
79  *  ?Subscribe@CVssWriter@@QAGJK@Z
80  */
81 HRESULT __thiscall VSSAPI_CVssWriter_Subscribe( struct CVssWriter *writer, DWORD flags )
82 {
83     FIXME( "%p, %x\n", writer, flags );
84     return S_OK;
85 }
86 DEFINE_THISCALL_WRAPPER( VSSAPI_CVssWriter_Subscribe, 8 )
87 
88 /******************************************************************
89  *  ?Unsubscribe@CVssWriter@@QAGJXZ
90  */
91 HRESULT __thiscall VSSAPI_CVssWriter_Unsubscribe( struct CVssWriter *writer )
92 {
93     FIXME( "%p\n", writer );
94     return S_OK;
95 }
96 DEFINE_THISCALL_WRAPPER( VSSAPI_CVssWriter_Unsubscribe, 4 )
97