Windows2003-3790/inetcore/outlookexpress/mailnews/store/enummsgs.h
2020-09-30 16:53:55 +02:00

48 lines
2.0 KiB
C++

//--------------------------------------------------------------------------
// EnumMsgs.h
//--------------------------------------------------------------------------
#pragma once
//--------------------------------------------------------------------------
// CEnumerateMessages
//--------------------------------------------------------------------------
class CEnumerateMessages : public IUnknown
{
public:
//----------------------------------------------------------------------
// CEnumerateMessages
//----------------------------------------------------------------------
CEnumerateMessages(void);
~CEnumerateMessages(void);
//----------------------------------------------------------------------
// IUnknown Members
//----------------------------------------------------------------------
STDMETHODIMP QueryInterface(REFIID riid, LPVOID *ppv);
STDMETHODIMP_(ULONG) AddRef(void);
STDMETHODIMP_(ULONG) Release(void);
//----------------------------------------------------------------------
// CEnumerateMessages Members
//----------------------------------------------------------------------
HRESULT Initialize(IDatabase *pDB, MESSAGEID idParent);
//----------------------------------------------------------------------
// IEnumerateFolders Members
//----------------------------------------------------------------------
STDMETHODIMP Next(ULONG cFetch, LPMESSAGEINFO prgInfo, ULONG *pcFetched);
STDMETHODIMP Skip(ULONG cItems);
STDMETHODIMP Reset(void);
STDMETHODIMP Clone(CEnumerateMessages **ppEnum);
STDMETHODIMP Count(ULONG *pcItems);
private:
//----------------------------------------------------------------------
// Private Data
//----------------------------------------------------------------------
LONG m_cRef;
HROWSET m_hRowset;
MESSAGEID m_idParent;
IDatabase *m_pDB;
};