ReactOS 0.4.16-dev-136-g52192f1
recyclebin_v5.h File Reference
#include <pshpack1.h>
#include <poppack.h>
Include dependency graph for recyclebin_v5.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  _DELETED_FILE_RECORD
 

Macros

#define INTERFACE   IRecycleBin5
 

Typedefs

typedef struct _DELETED_FILE_RECORD DELETED_FILE_RECORD
 
typedef struct _DELETED_FILE_RECORDPDELETED_FILE_RECORD
 
typedef interface IRecycleBin5 IRecycleBin5
 

Functions

 DECLARE_INTERFACE_ (IRecycleBin5, IUnknown)
 
EXTERN_C HRESULT RecycleBin5Enum_Constructor (_In_ IRecycleBin5 *prb, _In_ HANDLE hInfo, _In_ HANDLE hInfoMapped, _In_ LPCWSTR szPrefix, _Out_ IUnknown **ppUnknown)
 

Variables

EXTERN_C const IID IID_IRecycleBin5
 

Macro Definition Documentation

◆ INTERFACE

Definition at line 30 of file recyclebin_v5.h.

Typedef Documentation

◆ DELETED_FILE_RECORD

◆ IRecycleBin5

Definition at line 27 of file recyclebin_v5.h.

◆ PDELETED_FILE_RECORD

Function Documentation

◆ DECLARE_INTERFACE_()

DECLARE_INTERFACE_ ( IRecycleBin5  ,
IUnknown   
)

Definition at line 31 of file recyclebin_v5.h.

32{
34
35 /* IUnknown interface */
39
40 /* IRecycleBin interface */
43 STDMETHOD(EnumObjects)(THIS_ OUT IRecycleBinEnumList **ppEnumList) PURE;
44
45 /* IRecycleBin5 interface */
47 THIS_
48 IN LPCWSTR pDeletedFileName,
49 IN DELETED_FILE_RECORD *pDeletedFile) PURE;
50 STDMETHOD(Restore)(
51 THIS_
52 IN LPCWSTR pDeletedFileName,
53 IN DELETED_FILE_RECORD *pDeletedFile) PURE;
54 STDMETHOD(OnClosing)(
55 THIS_
56 IN IRecycleBinEnumList *prbel) PURE;
57
59};
BOOL Delete(LPCTSTR ServiceName)
Definition: delete.c:12
#define PURE
Definition: basetyps.h:64
#define THIS_
Definition: basetyps.h:65
#define THIS
Definition: basetyps.h:66
#define STDMETHOD_(t, m)
Definition: basetyps.h:63
#define STDMETHOD(m)
Definition: basetyps.h:62
_In_ BOOLEAN Release
Definition: cdrom.h:920
REFIID riid
Definition: atlbase.h:39
static HRESULT QueryInterface(REFIID, void **)
Definition: events.c:2587
static ULONG WINAPI AddRef(IStream *iface)
Definition: clist.c:90
#define END_INTERFACE
Definition: objbase.h:232
#define BEGIN_INTERFACE
Definition: objbase.h:231
#define REFIID
Definition: guiddef.h:118
#define EmptyRecycleBin
Definition: recyclebin.h:111
#define IN
Definition: typedefs.h:39
uint32_t ULONG
Definition: typedefs.h:59
#define OUT
Definition: typedefs.h:40
#define DeleteFile
Definition: winbase.h:3764
_In_ void _In_ PCCERT_CONTEXT _In_opt_ LPFILETIME _In_ DWORD _In_ DWORD _Outptr_opt_ void ** ppvObject
Definition: wincrypt.h:6082
int WINAPI EnumObjects(_In_ HDC, _In_ int, _In_ GOBJENUMPROC, _In_ LPARAM)
const WCHAR * LPCWSTR
Definition: xmlstorage.h:185

◆ RecycleBin5Enum_Constructor()

EXTERN_C HRESULT RecycleBin5Enum_Constructor ( _In_ IRecycleBin5 prb,
_In_ HANDLE  hInfo,
_In_ HANDLE  hInfoMapped,
_In_ LPCWSTR  szPrefix,
_Out_ IUnknown **  ppUnknown 
)

Definition at line 468 of file recyclebin_v5_enumerator.cpp.

474{
475 if (!ppUnknown)
476 return E_POINTER;
477
478 *ppUnknown = NULL;
479
480 RecycleBin5Enum *pThis = new RecycleBin5Enum();
481 if (!pThis)
482 return E_OUTOFMEMORY;
483
484 HRESULT hr = pThis->Init(prb, hInfo, hInfoMapped, szPrefix);
485 if (FAILED(hr))
486 {
487 delete pThis;
488 return hr;
489 }
490
491 *ppUnknown = static_cast<IRecycleBinEnumList *>(pThis);
492 return S_OK;
493}
HRESULT Init(_In_ IRecycleBin5 *prb, _In_ HANDLE hInfo, _In_ HANDLE hInfoMapped, _In_ LPCWSTR pszPrefix)
#define E_OUTOFMEMORY
Definition: ddrawi.h:100
#define NULL
Definition: types.h:112
#define S_OK
Definition: intsafe.h:52
#define FAILED(hr)
Definition: intsafe.h:51
HRESULT hr
Definition: shlfolder.c:183
#define E_POINTER
Definition: winerror.h:2365

Referenced by RecycleBin5::EnumObjects().

Variable Documentation

◆ IID_IRecycleBin5

EXTERN_C const IID IID_IRecycleBin5

Definition at line 28 of file recyclebin_v5.h.

Referenced by RecycleBin5::QueryInterface().