engine.h
changeset 5187 12dc9dfa6af6
parent 5037 70f2158c5de0
child 5211 fb4dc0ca975d
--- a/engine.h	Thu Nov 30 13:52:31 2006 +0000
+++ b/engine.h	Thu Nov 30 16:03:12 2006 +0000
@@ -293,4 +293,15 @@
  */
 int32 RemoveEngineReplacement(EngineRenewList* erl, EngineID engine, uint32 flags);
 
+/* Engine list manipulators - current implementation is only C wrapper of CBlobT<EngineID> class (helpers.cpp) */
+void EngList_Create(EngineList *el);            ///< Creates engine list
+void EngList_Destroy(EngineList *el);           ///< Deallocate and destroy engine list
+uint EngList_Count(const EngineList *el);       ///< Returns number of items in the engine list
+void EngList_Add(EngineList *el, EngineID eid); ///< Append one item at the end of engine list
+EngineID* EngList_Items(EngineList *el);        ///< Returns engine list items as C array
+void EngList_RemoveAll(EngineList *el);         ///< Removes all items from engine list
+typedef int CDECL EngList_SortTypeFunction(const void*, const void*); ///< argument type for EngList_Sort()
+void EngList_Sort(EngineList *el, EngList_SortTypeFunction compare); ///< qsort of the engine list
+void EngList_SortPartial(EngineList *el, EngList_SortTypeFunction compare, uint begin, uint num_items); ///< qsort of specified portion of the engine list
+
 #endif /* ENGINE_H */