2025-04-27 07:49:33 -04:00

44 lines
890 B
C++

//
// enumss.h
//
// CEnumSpanSetRanges
//
#ifndef ENUMSS_H
#define ENUMSS_H
#include "private.h"
#include "spans.h"
#include "ic.h"
class CEnumSpanSetRanges : private CSpanSet,
public IEnumTfRanges,
public CComObjectRootImmx
{
public:
CEnumSpanSetRanges(CInputContext *pic);
~CEnumSpanSetRanges();
BEGIN_COM_MAP_IMMX(CEnumSpanSetRanges)
COM_INTERFACE_ENTRY(IEnumTfRanges)
END_COM_MAP_IMMX()
IMMX_OBJECT_IUNKNOWN_FOR_ATL()
// IEnumTfRanges
STDMETHODIMP Clone(IEnumTfRanges **ppEnum);
STDMETHODIMP Next(ULONG ulCount, ITfRange **ppRange, ULONG *pcFetched);
STDMETHODIMP Reset();
STDMETHODIMP Skip(ULONG ulCount);
void _Merge(CSpanSet *pss);
private:
CInputContext *_pic;
int _iCur;
DBG_ID_DECLARE;
};
#endif // ENUMSS_H