00001 #ifndef LAP_MAIN 00002 #define LAP_MAIN 00003 /************************************************************************ 00004 * 00005 * lap.h 00006 version 1.0 - 21 june 1996 00007 author Roy Jonker, MagicLogic Optimization Inc. 00008 00009 header file for LAP 00010 * 00011 **************************************************************************/ 00012 00028 /* Some changes by Joern P. Meier <mail@ionflux.org>: 00029 00030 (2006-06-18) - Added a namespace prefix to functions. 00031 - Added doxygen documentation. 00032 - Added include guards. 00033 - Added conditional extern "C" tags. 00034 (2006-07-12) - Changed BIG to something bigger to prevent segfaults 00035 with matrices containing large values. 00036 */ 00037 00038 /*************** CONSTANTS *******************/ 00039 00040 #define BIG 2147483647 00041 00042 /*************** TYPES *******************/ 00043 00044 typedef int row; 00045 typedef int col; 00046 typedef int cost; 00047 00048 /*************** FUNCTIONS *******************/ 00049 00050 #ifdef __cplusplus 00051 extern "C" 00052 { 00053 #endif 00054 00066 int LAP_lap(int dim, int **assigncost, 00067 int *rowsol, int *colsol, int *u, int *v); 00068 00080 void LAP_checklap(int dim, int **assigncost, 00081 int *rowsol, int *colsol, int *u, int *v); 00082 00083 #ifdef __cplusplus 00084 } 00085 #endif 00086 #endif