ReactOS 0.4.15-dev-7712-gbbbcd8e
CEnumIDListBase.h
Go to the documentation of this file.
1/*
2 * This library is free software; you can redistribute it and/or
3 * modify it under the terms of the GNU Lesser General Public
4 * License as published by the Free Software Foundation; either
5 * version 2.1 of the License, or (at your option) any later version.
6 *
7 * This library is distributed in the hope that it will be useful,
8 * but WITHOUT ANY WARRANTY; without even the implied warranty of
9 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
10 * Lesser General Public License for more details.
11 *
12 * You should have received a copy of the GNU Lesser General Public
13 * License along with this library; if not, write to the Free Software
14 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
15 */
16
17#ifndef __ENUMIDLIST_H__
18#define __ENUMIDLIST_H__
19
21{
24};
25
27 public CComObjectRootEx<CComMultiThreadModelNoCS>,
28 public IEnumIDList
29{
30private:
34public:
36 virtual ~CEnumIDListBase();
41
42 // *** IEnumIDList methods ***
43 virtual HRESULT STDMETHODCALLTYPE Next(ULONG celt, LPITEMIDLIST *rgelt, ULONG *pceltFetched);
44 virtual HRESULT STDMETHODCALLTYPE Skip(ULONG celt);
47
49 COM_INTERFACE_ENTRY_IID(IID_IEnumIDList, IEnumIDList)
51};
52
53#endif /* __ENUMIDLIST_H__ */
#define STDMETHODCALLTYPE
Definition: bdasup.h:9
virtual HRESULT STDMETHODCALLTYPE Next(ULONG celt, LPITEMIDLIST *rgelt, ULONG *pceltFetched)
virtual HRESULT STDMETHODCALLTYPE Clone(IEnumIDList **ppenum)
virtual HRESULT STDMETHODCALLTYPE Reset()
ENUMLIST * mpLast
ENUMLIST * mpCurrent
BOOL HasItemWithCLSID(LPITEMIDLIST pidl)
ENUMLIST * mpFirst
BOOL AddToEnumList(LPITEMIDLIST pidl)
virtual ~CEnumIDListBase()
HRESULT AppendItemsFromEnumerator(IEnumIDList *pEnum)
virtual HRESULT STDMETHODCALLTYPE Skip(ULONG celt)
unsigned int BOOL
Definition: ntddk_ex.h:94
#define BEGIN_COM_MAP(x)
Definition: atlcom.h:581
#define COM_INTERFACE_ENTRY_IID(iid, x)
Definition: atlcom.h:601
#define END_COM_MAP()
Definition: atlcom.h:592
ITEMIDLIST UNALIGNED * LPITEMIDLIST
Definition: shtypes.idl:41
ENUMLIST * pNext
LPITEMIDLIST pidl
uint32_t ULONG
Definition: typedefs.h:59