package io.mycat.sqlengine.tmp; import io.mycat.server.packet.RowDataPacket; import java.util.List; /** * @author coderczp-2014-12-17 */ public interface HeapItf { /** * 构建堆 */ void buildHeap(); /** * 获取堆根节点 * * @return */ RowDataPacket getRoot(); /** * 向堆添加元素 * * @param row */ void add(RowDataPacket row); /** * 获取堆数据 * * @return */ List<RowDataPacket> getData(); /** * 设置根节点元素 * * @param root */ void setRoot(RowDataPacket root); /** * 向已满的堆添加元素 * * @param row */ boolean addIfRequired(RowDataPacket row); /** * 堆排序 */ void heapSort(int size); }