changeset 15991:21a1ff62938c draft

(svn r20679) -Codechange: Remove unused insertion sorter.
author alberth <alberth@openttd.org>
date Sun, 29 Aug 2010 13:32:39 +0000
parents af02aa3e35c0
children 45d8dc0ad068
files src/pathfinder/npf/queue.cpp src/pathfinder/npf/queue.h
diffstat 2 files changed, 0 insertions(+), 94 deletions(-) [+]
line wrap: on
line diff
--- a/src/pathfinder/npf/queue.cpp
+++ b/src/pathfinder/npf/queue.cpp
@@ -15,82 +15,6 @@
 
 
 /*
- * Insertion Sorter
- */
-
-static void InsSort_Clear(Queue *q, bool free_values)
-{
-	InsSortNode *node = q->data.inssort.first;
-	InsSortNode *prev;
-
-	while (node != NULL) {
-		if (free_values) free(node->item);
-		prev = node;
-		node = node->next;
-		free(prev);
-	}
-	q->data.inssort.first = NULL;
-}
-
-static void InsSort_Free(Queue *q, bool free_values)
-{
-	q->clear(q, free_values);
-}
-
-static bool InsSort_Push(Queue *q, void *item, int priority)
-{
-	InsSortNode *newnode = MallocT<InsSortNode>(1);
-
-	newnode->item = item;
-	newnode->priority = priority;
-	if (q->data.inssort.first == NULL ||
-			q->data.inssort.first->priority >= priority) {
-		newnode->next = q->data.inssort.first;
-		q->data.inssort.first = newnode;
-	} else {
-		InsSortNode *node = q->data.inssort.first;
-		while (node != NULL) {
-			if (node->next == NULL || node->next->priority >= priority) {
-				newnode->next = node->next;
-				node->next = newnode;
-				break;
-			}
-			node = node->next;
-		}
-	}
-	return true;
-}
-
-static void *InsSort_Pop(Queue *q)
-{
-	InsSortNode *node = q->data.inssort.first;
-	void *result;
-
-	if (node == NULL) return NULL;
-	result = node->item;
-	q->data.inssort.first = q->data.inssort.first->next;
-	assert(q->data.inssort.first == NULL || q->data.inssort.first->priority >= node->priority);
-	free(node);
-	return result;
-}
-
-static bool InsSort_Delete(Queue *q, void *item, int priority)
-{
-	return false;
-}
-
-void init_InsSort(Queue *q)
-{
-	q->push = InsSort_Push;
-	q->pop = InsSort_Pop;
-	q->del = InsSort_Delete;
-	q->clear = InsSort_Clear;
-	q->free = InsSort_Free;
-	q->data.inssort.first = NULL;
-}
-
-
-/*
  * Binary Heap
  * For information, see: http://www.policyalmanac.org/games/binaryHeaps.htm
  */
--- a/src/pathfinder/npf/queue.h
+++ b/src/pathfinder/npf/queue.h
@@ -25,12 +25,6 @@
 typedef void Queue_ClearProc(Queue *q, bool free_values);
 typedef void Queue_FreeProc(Queue *q, bool free_values);
 
-struct InsSortNode {
-	void *item;
-	int priority;
-	InsSortNode *next;
-};
-
 struct BinaryHeapNode {
 	void *item;
 	int priority;
@@ -68,9 +62,6 @@
 
 	union {
 		struct {
-			InsSortNode *first;
-		} inssort;
-		struct {
 			uint max_size;
 			uint size;
 			uint blocks; ///< The amount of blocks for which space is reserved in elements
@@ -80,15 +71,6 @@
 };
 
 
-/**
- * Insertion Sorter
- */
-
-/* Initializes a inssort and allocates internal memory. There is no maximum
- * size */
-void init_InsSort(Queue *q);
-
-
 /*
  *  Binary Heap
  *  For information, see: