COIN-OR::LEMON - Graph Library

source: glpk-cmake/src/colamd/colamd.h @ 2:4c8956a7bdf4

Last change on this file since 2:4c8956a7bdf4 was 1:c445c931472f, checked in by Alpar Juttner <alpar@…>, 14 years ago

Import glpk-4.45

  • Generated files and doc/notes are removed
File size: 2.1 KB
Line 
1/* colamd.h */
2
3/* Written by Andrew Makhorin <mao@gnu.org>. */
4
5#ifndef COLAMD_H
6#define COLAMD_H
7
8#define _GLPSTD_STDIO
9#include "glpenv.h"
10
11#define COLAMD_DATE "Nov 1, 2007"
12#define COLAMD_VERSION_CODE(main, sub) ((main) * 1000 + (sub))
13#define COLAMD_MAIN_VERSION 2
14#define COLAMD_SUB_VERSION 7
15#define COLAMD_SUBSUB_VERSION 1
16#define COLAMD_VERSION \
17        COLAMD_VERSION_CODE(COLAMD_MAIN_VERSION, COLAMD_SUB_VERSION)
18
19#define COLAMD_KNOBS 20
20#define COLAMD_STATS 20
21#define COLAMD_DENSE_ROW 0
22#define COLAMD_DENSE_COL 1
23#define COLAMD_AGGRESSIVE 2
24#define COLAMD_DEFRAG_COUNT 2
25#define COLAMD_STATUS 3
26#define COLAMD_INFO1 4
27#define COLAMD_INFO2 5
28#define COLAMD_INFO3 6
29
30#define COLAMD_OK                            (0)
31#define COLAMD_OK_BUT_JUMBLED                (1)
32#define COLAMD_ERROR_A_not_present           (-1)
33#define COLAMD_ERROR_p_not_present           (-2)
34#define COLAMD_ERROR_nrow_negative           (-3)
35#define COLAMD_ERROR_ncol_negative           (-4)
36#define COLAMD_ERROR_nnz_negative            (-5)
37#define COLAMD_ERROR_p0_nonzero              (-6)
38#define COLAMD_ERROR_A_too_small             (-7)
39#define COLAMD_ERROR_col_length_negative     (-8)
40#define COLAMD_ERROR_row_index_out_of_bounds (-9)
41#define COLAMD_ERROR_out_of_memory           (-10)
42#define COLAMD_ERROR_internal_error          (-999)
43
44#define colamd_recommended _glp_colamd_recommended
45size_t colamd_recommended(int nnz, int n_row, int n_col);
46
47#define colamd_set_defaults _glp_colamd_set_defaults
48void colamd_set_defaults(double knobs [COLAMD_KNOBS]);
49
50#define colamd _glp_colamd
51int colamd(int n_row, int n_col, int Alen, int A[], int p[],
52      double knobs[COLAMD_KNOBS], int stats[COLAMD_STATS]);
53
54#define symamd _glp_symamd
55int symamd(int n, int A[], int p[], int perm[],
56      double knobs[COLAMD_KNOBS], int stats[COLAMD_STATS],
57      void *(*allocate)(size_t, size_t), void(*release)(void *));
58
59#define colamd_report _glp_colamd_report
60void colamd_report(int stats[COLAMD_STATS]);
61
62#define symamd_report _glp_symamd_report
63void symamd_report(int stats[COLAMD_STATS]);
64
65#define colamd_printf xprintf
66
67#endif
68
69/* eof */
Note: See TracBrowser for help on using the repository browser.