[cig-commits] r6074 - in long/3D/Gale/trunk/src/StGermain: . Base/Container/src

walter at geodynamics.org walter at geodynamics.org
Fri Feb 23 10:00:51 PST 2007


Author: walter
Date: 2007-02-23 10:00:50 -0800 (Fri, 23 Feb 2007)
New Revision: 6074

Modified:
   long/3D/Gale/trunk/src/StGermain/
   long/3D/Gale/trunk/src/StGermain/Base/Container/src/List.c
   long/3D/Gale/trunk/src/StGermain/Base/Container/src/List.h
Log:
 r3325 at earth (orig r3981):  LukeHodkinson | 2007-01-21 22:15:46 -0800
 Adding a routine to check if an item exists in a
 list.
 



Property changes on: long/3D/Gale/trunk/src/StGermain
___________________________________________________________________
Name: svk:merge
   - 1ef209d2-b310-0410-a72d-e20c9eb0015c:/cig:3196
afb6c753-b9d0-0310-b4e7-dbd8d91cdd35:/branches/decomp3d/StGermain:3980
afb6c753-b9d0-0310-b4e7-dbd8d91cdd35:/trunk/StGermain:3899
   + 1ef209d2-b310-0410-a72d-e20c9eb0015c:/cig:3196
afb6c753-b9d0-0310-b4e7-dbd8d91cdd35:/branches/decomp3d/StGermain:3981
afb6c753-b9d0-0310-b4e7-dbd8d91cdd35:/trunk/StGermain:3899

Modified: long/3D/Gale/trunk/src/StGermain/Base/Container/src/List.c
===================================================================
--- long/3D/Gale/trunk/src/StGermain/Base/Container/src/List.c	2007-02-23 18:00:18 UTC (rev 6073)
+++ long/3D/Gale/trunk/src/StGermain/Base/Container/src/List.c	2007-02-23 18:00:50 UTC (rev 6074)
@@ -215,7 +215,21 @@
 	return self->nItems;
 }
 
+Bool List_Exists( void* list, void* data ) {
+	List*		self = (List*)list;
+	unsigned	item_i;
 
+	assert( self );
+
+	for( item_i = 0; item_i < self->nItems; item_i++ ) {
+		if( !memcmp( self->items + self->itemSize * item_i, data, self->itemSize ) )
+			break;
+	}
+
+	return (item_i < self->nItems) ? True : False;
+}
+
+
 /*----------------------------------------------------------------------------------------------------------------------------------
 ** Private Functions
 */

Modified: long/3D/Gale/trunk/src/StGermain/Base/Container/src/List.h
===================================================================
--- long/3D/Gale/trunk/src/StGermain/Base/Container/src/List.h	2007-02-23 18:00:18 UTC (rev 6073)
+++ long/3D/Gale/trunk/src/StGermain/Base/Container/src/List.h	2007-02-23 18:00:50 UTC (rev 6074)
@@ -98,6 +98,7 @@
 
 	void* List_GetItem( void* list, unsigned index );
 	unsigned List_GetSize( void* list );
+	Bool List_Exists( void* list, void* data );
 
 	#define List_Get( list, index, type )		\
 		((type*)List_GetItem( list, index ))



More information about the cig-commits mailing list