62 lines
1.3 KiB
C++
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;
|
||
|
};
|
||
|
|