eLynx SDK
v3.3.0 C++ image processing API reference |
00001 //============================================================================ 00002 // CoreSort.h Core.Component package 00003 //============================================================================ 00004 // Usage : 00005 //---------------------------------------------------------------------------- 00006 // Copyright (C) 2006 by eLynx project 00007 // 00008 // This library is free software; you can redistribute it and/or 00009 // modify it under the terms of the GNU Library General Public 00010 // License as published by the Free Software Foundation; either 00011 // version 2 of the License, or (at your option) any later version. 00012 // 00013 // This library is distributed in the hope that it will be useful, 00014 // but WITHOUT ANY WARRANTY; without even the implied warranty of 00015 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 00016 // See the GNU Library General Public License for more details. 00017 //---------------------------------------------------------------------------- 00018 #ifndef __CoreSort_h__ 00019 #define __CoreSort_h__ 00020 00021 namespace eLynx { 00022 00023 //---------------------------------------------------------------------------- 00026 //---------------------------------------------------------------------------- 00027 template <class T, size_t N> 00028 void elxInsertionSort(T (&ioArray)[N]); 00029 00030 //---------------------------------------------------------------------------- 00036 //---------------------------------------------------------------------------- 00037 template <class T> 00038 void elxShellSort(T * ioprArray, uint32 iSize, uint32 iMaxIncrement); 00039 00040 //---------------------------------------------------------------------------- 00051 //---------------------------------------------------------------------------- 00052 template <class T> 00053 void elxQuickSort( 00054 T * ioprArray, uint32 iSize, int32(*iComp)(const T*, const T*) ); 00055 00056 }// namespace eLynx 00057 00058 #include <elx/core/inl/CoreSort.inl> 00059 00060 #endif // __CoreSort_h__