WindowsXP/Source/XPSP1/NT/inetsrv/query/cindex/unioncur.hxx
2024-08-03 16:30:48 +02:00

62 lines
1.3 KiB
C++

//+---------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1991 - 1992.
//
// File: UNIONCUR.HXX
//
// Contents: Merge Cursor
//
// Classes: CUnionCursor
//
// History: 26-Sep-91 BartoszM Created.
//
//----------------------------------------------------------------------------
#pragma once
#ifdef DISPLAY_INCLUDES
#pragma message( "#include <" __FILE__ ">..." )
#endif
#include <wcurheap.hxx>
#include <curstk.hxx>
//+---------------------------------------------------------------------------
//
// Class: CUnionCursor
//
// Purpose: Merge cursor, merges several cursors into one ordered cursor
//
// History: 26-Sep-91 BartoszM Created.
//
//----------------------------------------------------------------------------
class CUnionCursor: public CCursor
{
public:
CUnionCursor( int cCursor, CCurStack& curStack );
~CUnionCursor() {} // heaps are deleted
WORKID WorkId();
WORKID NextWorkId();
ULONG WorkIdCount();
ULONG HitCount();
LONG Rank();
ULONG GetRankVector( LONG * plVector, ULONG cElements );
void RatioFinished ( ULONG& denom, ULONG& num );
private:
CWidHeap _widHeap;
};