IOFireWireLibCoalesceTree.h [plain text]
#import <IOKit/IOKitLib.h>
namespace IOFireWireLib {
class CoalesceTree
{
struct Node
{
Node* left ;
Node* right ;
IOVirtualRange range ;
} ;
public:
CoalesceTree() ;
~CoalesceTree() ;
public:
void CoalesceRange(const IOVirtualRange& inRange) ;
const UInt32 GetCount() const ;
void GetCoalesceList(IOVirtualRange* outRanges) const ;
protected:
void DeleteNode(Node* inNode) ;
void CoalesceRange(const IOVirtualRange& inRange, Node* inNode) ;
const UInt32 GetCount(Node* inNode) const ;
void GetCoalesceList(IOVirtualRange* outRanges, Node* inNode, UInt32* pIndex) const ;
protected:
Node * mTop ;
} ;
}