Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

52 lines
2.4 KiB

// --------------------------------------------------------------------------------
// Addrenum.h
// Copyright (c)1993-1995 Microsoft Corporation, All Rights Reserved
// --------------------------------------------------------------------------------
#ifndef __ADDRENUM_H
#define __ADDRENUM_H
// --------------------------------------------------------------------------------
// CMimeEnumAddressTypes
// --------------------------------------------------------------------------------
class CMimeEnumAddressTypes : public IMimeEnumAddressTypes
{
public:
// ----------------------------------------------------------------------------
// Construction
// ----------------------------------------------------------------------------
CMimeEnumAddressTypes(void);
~CMimeEnumAddressTypes(void);
// ----------------------------------------------------------------------------
// IUnknown
// ----------------------------------------------------------------------------
STDMETHODIMP QueryInterface(REFIID, LPVOID *);
STDMETHODIMP_(ULONG) AddRef(void);
STDMETHODIMP_(ULONG) Release(void);
// ----------------------------------------------------------------------------
// IMimeEnumAddressTypes
// ----------------------------------------------------------------------------
STDMETHODIMP Next(ULONG cItems, LPADDRESSPROPS prgAdr, ULONG *pcFetched);
STDMETHODIMP Skip(ULONG cItems);
STDMETHODIMP Reset(void);
STDMETHODIMP Clone(IMimeEnumAddressTypes **ppEnum);
STDMETHODIMP Count(ULONG *pcItems);
// ----------------------------------------------------------------------------
// CMimeEnumAddressTypes
// ----------------------------------------------------------------------------
HRESULT HrInit(IMimeAddressTable *pTable, ULONG iItem, LPADDRESSLIST pList, BOOL fDuplicate);
private:
// ----------------------------------------------------------------------------
// Private Data
// ----------------------------------------------------------------------------
LONG m_cRef; // Reference count
ADDRESSLIST m_rList; // Array of addresses
ULONG m_iAddress; // Current Address
IMimeAddressTable *m_pTable; // Point back to original address table
CRITICAL_SECTION m_cs; // Thread safety
};
#endif // __ADDRENUM_H