-
Notifications
You must be signed in to change notification settings - Fork 79
/
libgrb_common.jl
573 lines (564 loc) · 22.1 KB
/
libgrb_common.jl
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
# Copyright (c) 2015 Dahua Lin, Miles Lubin, Joey Huchette, Iain Dunning, and
# contributors
#
# Use of this source code is governed by an MIT-style license that can be found
# in the LICENSE.md file or at https://opensource.org/licenses/MIT.
# Automatically generated using Clang.jl
const GRB_VERSION_MAJOR = 9
const GRB_VERSION_MINOR = 1
const GRB_VERSION_TECHNICAL = 0
const DEFAULT_CS_PRIORITY = 0
const MAX_CS_PRIORITY = 100
const DEFAULT_CS_PORT = 61000
const DEFAULT_CS_HANGUP = 60
const GRB_ERROR_OUT_OF_MEMORY = 10001
const GRB_ERROR_NULL_ARGUMENT = 10002
const GRB_ERROR_INVALID_ARGUMENT = 10003
const GRB_ERROR_UNKNOWN_ATTRIBUTE = 10004
const GRB_ERROR_DATA_NOT_AVAILABLE = 10005
const GRB_ERROR_INDEX_OUT_OF_RANGE = 10006
const GRB_ERROR_UNKNOWN_PARAMETER = 10007
const GRB_ERROR_VALUE_OUT_OF_RANGE = 10008
const GRB_ERROR_NO_LICENSE = 10009
const GRB_ERROR_SIZE_LIMIT_EXCEEDED = 10010
const GRB_ERROR_CALLBACK = 10011
const GRB_ERROR_FILE_READ = 10012
const GRB_ERROR_FILE_WRITE = 10013
const GRB_ERROR_NUMERIC = 10014
const GRB_ERROR_IIS_NOT_INFEASIBLE = 10015
const GRB_ERROR_NOT_FOR_MIP = 10016
const GRB_ERROR_OPTIMIZATION_IN_PROGRESS = 10017
const GRB_ERROR_DUPLICATES = 10018
const GRB_ERROR_NODEFILE = 10019
const GRB_ERROR_Q_NOT_PSD = 10020
const GRB_ERROR_QCP_EQUALITY_CONSTRAINT = 10021
const GRB_ERROR_NETWORK = 10022
const GRB_ERROR_JOB_REJECTED = 10023
const GRB_ERROR_NOT_SUPPORTED = 10024
const GRB_ERROR_EXCEED_2B_NONZEROS = 10025
const GRB_ERROR_INVALID_PIECEWISE_OBJ = 10026
const GRB_ERROR_UPDATEMODE_CHANGE = 10027
const GRB_ERROR_CLOUD = 10028
const GRB_ERROR_MODEL_MODIFICATION = 10029
const GRB_ERROR_CSWORKER = 10030
const GRB_ERROR_TUNE_MODEL_TYPES = 10031
const GRB_ERROR_SECURITY = 10032
const GRB_LESS_EQUAL = '<'
const GRB_GREATER_EQUAL = '>'
const GRB_EQUAL = '='
const GRB_CONTINUOUS = 'C'
const GRB_BINARY = 'B'
const GRB_INTEGER = 'I'
const GRB_SEMICONT = 'S'
const GRB_SEMIINT = 'N'
const GRB_MINIMIZE = 1
const GRB_MAXIMIZE = -1
const GRB_SOS_TYPE1 = 1
const GRB_SOS_TYPE2 = 2
const GRB_INFINITY = 1.0e100
const GRB_UNDEFINED = 1.0e101
const GRB_MAXINT = 2000000000
const GRB_MAX_NAMELEN = 255
const GRB_MAX_STRLEN = 512
const GRB_MAX_TAGLEN = 10240
const GRB_MAX_CONCURRENT = 64
# Skipping MacroDefinition: CB_ARGS GRBmodel * model , void * cbdata , int where , void * usrdata
const GRB_INT_ATTR_NUMCONSTRS = "NumConstrs"
const GRB_INT_ATTR_NUMVARS = "NumVars"
const GRB_INT_ATTR_NUMSOS = "NumSOS"
const GRB_INT_ATTR_NUMQCONSTRS = "NumQConstrs"
const GRB_INT_ATTR_NUMGENCONSTRS = "NumGenConstrs"
const GRB_INT_ATTR_NUMNZS = "NumNZs"
const GRB_DBL_ATTR_DNUMNZS = "DNumNZs"
const GRB_INT_ATTR_NUMQNZS = "NumQNZs"
const GRB_INT_ATTR_NUMQCNZS = "NumQCNZs"
const GRB_INT_ATTR_NUMINTVARS = "NumIntVars"
const GRB_INT_ATTR_NUMBINVARS = "NumBinVars"
const GRB_INT_ATTR_NUMPWLOBJVARS = "NumPWLObjVars"
const GRB_STR_ATTR_MODELNAME = "ModelName"
const GRB_INT_ATTR_MODELSENSE = "ModelSense"
const GRB_DBL_ATTR_OBJCON = "ObjCon"
const GRB_INT_ATTR_IS_MIP = "IsMIP"
const GRB_INT_ATTR_IS_QP = "IsQP"
const GRB_INT_ATTR_IS_QCP = "IsQCP"
const GRB_INT_ATTR_IS_MULTIOBJ = "IsMultiObj"
const GRB_STR_ATTR_SERVER = "Server"
const GRB_STR_ATTR_JOBID = "JobID"
const GRB_INT_ATTR_LICENSE_EXPIRATION = "LicenseExpiration"
const GRB_INT_ATTR_NUMTAGGED = "NumTagged"
const GRB_INT_ATTR_FINGERPRINT = "Fingerprint"
const GRB_INT_ATTR_BATCHERRORCODE = "BatchErrorCode"
const GRB_STR_ATTR_BATCHERRORMESSAGE = "BatchErrorMessage"
const GRB_STR_ATTR_BATCHID = "BatchID"
const GRB_INT_ATTR_BATCHSTATUS = "BatchStatus"
const GRB_DBL_ATTR_LB = "LB"
const GRB_DBL_ATTR_UB = "UB"
const GRB_DBL_ATTR_OBJ = "Obj"
const GRB_CHAR_ATTR_VTYPE = "VType"
const GRB_DBL_ATTR_START = "Start"
const GRB_DBL_ATTR_PSTART = "PStart"
const GRB_INT_ATTR_BRANCHPRIORITY = "BranchPriority"
const GRB_STR_ATTR_VARNAME = "VarName"
const GRB_INT_ATTR_PWLOBJCVX = "PWLObjCvx"
const GRB_DBL_ATTR_VARHINTVAL = "VarHintVal"
const GRB_INT_ATTR_VARHINTPRI = "VarHintPri"
const GRB_INT_ATTR_PARTITION = "Partition"
const GRB_STR_ATTR_VTAG = "VTag"
const GRB_STR_ATTR_CTAG = "CTag"
const GRB_DBL_ATTR_RHS = "RHS"
const GRB_DBL_ATTR_DSTART = "DStart"
const GRB_CHAR_ATTR_SENSE = "Sense"
const GRB_STR_ATTR_CONSTRNAME = "ConstrName"
const GRB_INT_ATTR_LAZY = "Lazy"
const GRB_STR_ATTR_QCTAG = "QCTag"
const GRB_DBL_ATTR_QCRHS = "QCRHS"
const GRB_CHAR_ATTR_QCSENSE = "QCSense"
const GRB_STR_ATTR_QCNAME = "QCName"
const GRB_INT_ATTR_GENCONSTRTYPE = "GenConstrType"
const GRB_STR_ATTR_GENCONSTRNAME = "GenConstrName"
const GRB_INT_ATTR_FUNCPIECES = "FuncPieces"
const GRB_DBL_ATTR_FUNCPIECEERROR = "FuncPieceError"
const GRB_DBL_ATTR_FUNCPIECELENGTH = "FuncPieceLength"
const GRB_DBL_ATTR_FUNCPIECERATIO = "FuncPieceRatio"
const GRB_DBL_ATTR_MAX_COEFF = "MaxCoeff"
const GRB_DBL_ATTR_MIN_COEFF = "MinCoeff"
const GRB_DBL_ATTR_MAX_BOUND = "MaxBound"
const GRB_DBL_ATTR_MIN_BOUND = "MinBound"
const GRB_DBL_ATTR_MAX_OBJ_COEFF = "MaxObjCoeff"
const GRB_DBL_ATTR_MIN_OBJ_COEFF = "MinObjCoeff"
const GRB_DBL_ATTR_MAX_RHS = "MaxRHS"
const GRB_DBL_ATTR_MIN_RHS = "MinRHS"
const GRB_DBL_ATTR_MAX_QCCOEFF = "MaxQCCoeff"
const GRB_DBL_ATTR_MIN_QCCOEFF = "MinQCCoeff"
const GRB_DBL_ATTR_MAX_QOBJ_COEFF = "MaxQObjCoeff"
const GRB_DBL_ATTR_MIN_QOBJ_COEFF = "MinQObjCoeff"
const GRB_DBL_ATTR_MAX_QCLCOEFF = "MaxQCLCoeff"
const GRB_DBL_ATTR_MIN_QCLCOEFF = "MinQCLCoeff"
const GRB_DBL_ATTR_MAX_QCRHS = "MaxQCRHS"
const GRB_DBL_ATTR_MIN_QCRHS = "MinQCRHS"
const GRB_DBL_ATTR_RUNTIME = "Runtime"
const GRB_INT_ATTR_STATUS = "Status"
const GRB_DBL_ATTR_OBJVAL = "ObjVal"
const GRB_DBL_ATTR_OBJBOUND = "ObjBound"
const GRB_DBL_ATTR_OBJBOUNDC = "ObjBoundC"
const GRB_DBL_ATTR_POOLOBJBOUND = "PoolObjBound"
const GRB_DBL_ATTR_POOLOBJVAL = "PoolObjVal"
const GRB_DBL_ATTR_MIPGAP = "MIPGap"
const GRB_INT_ATTR_SOLCOUNT = "SolCount"
const GRB_DBL_ATTR_ITERCOUNT = "IterCount"
const GRB_INT_ATTR_BARITERCOUNT = "BarIterCount"
const GRB_DBL_ATTR_NODECOUNT = "NodeCount"
const GRB_DBL_ATTR_OPENNODECOUNT = "OpenNodeCount"
const GRB_INT_ATTR_HASDUALNORM = "HasDualNorm"
const GRB_DBL_ATTR_X = "X"
const GRB_DBL_ATTR_XN = "Xn"
const GRB_DBL_ATTR_BARX = "BarX"
const GRB_DBL_ATTR_RC = "RC"
const GRB_DBL_ATTR_VDUALNORM = "VDualNorm"
const GRB_INT_ATTR_VBASIS = "VBasis"
const GRB_DBL_ATTR_PI = "Pi"
const GRB_DBL_ATTR_QCPI = "QCPi"
const GRB_DBL_ATTR_SLACK = "Slack"
const GRB_DBL_ATTR_QCSLACK = "QCSlack"
const GRB_DBL_ATTR_CDUALNORM = "CDualNorm"
const GRB_INT_ATTR_CBASIS = "CBasis"
const GRB_DBL_ATTR_BOUND_VIO = "BoundVio"
const GRB_DBL_ATTR_BOUND_SVIO = "BoundSVio"
const GRB_INT_ATTR_BOUND_VIO_INDEX = "BoundVioIndex"
const GRB_INT_ATTR_BOUND_SVIO_INDEX = "BoundSVioIndex"
const GRB_DBL_ATTR_BOUND_VIO_SUM = "BoundVioSum"
const GRB_DBL_ATTR_BOUND_SVIO_SUM = "BoundSVioSum"
const GRB_DBL_ATTR_CONSTR_VIO = "ConstrVio"
const GRB_DBL_ATTR_CONSTR_SVIO = "ConstrSVio"
const GRB_INT_ATTR_CONSTR_VIO_INDEX = "ConstrVioIndex"
const GRB_INT_ATTR_CONSTR_SVIO_INDEX = "ConstrSVioIndex"
const GRB_DBL_ATTR_CONSTR_VIO_SUM = "ConstrVioSum"
const GRB_DBL_ATTR_CONSTR_SVIO_SUM = "ConstrSVioSum"
const GRB_DBL_ATTR_CONSTR_RESIDUAL = "ConstrResidual"
const GRB_DBL_ATTR_CONSTR_SRESIDUAL = "ConstrSResidual"
const GRB_INT_ATTR_CONSTR_RESIDUAL_INDEX = "ConstrResidualIndex"
const GRB_INT_ATTR_CONSTR_SRESIDUAL_INDEX = "ConstrSResidualIndex"
const GRB_DBL_ATTR_CONSTR_RESIDUAL_SUM = "ConstrResidualSum"
const GRB_DBL_ATTR_CONSTR_SRESIDUAL_SUM = "ConstrSResidualSum"
const GRB_DBL_ATTR_DUAL_VIO = "DualVio"
const GRB_DBL_ATTR_DUAL_SVIO = "DualSVio"
const GRB_INT_ATTR_DUAL_VIO_INDEX = "DualVioIndex"
const GRB_INT_ATTR_DUAL_SVIO_INDEX = "DualSVioIndex"
const GRB_DBL_ATTR_DUAL_VIO_SUM = "DualVioSum"
const GRB_DBL_ATTR_DUAL_SVIO_SUM = "DualSVioSum"
const GRB_DBL_ATTR_DUAL_RESIDUAL = "DualResidual"
const GRB_DBL_ATTR_DUAL_SRESIDUAL = "DualSResidual"
const GRB_INT_ATTR_DUAL_RESIDUAL_INDEX = "DualResidualIndex"
const GRB_INT_ATTR_DUAL_SRESIDUAL_INDEX = "DualSResidualIndex"
const GRB_DBL_ATTR_DUAL_RESIDUAL_SUM = "DualResidualSum"
const GRB_DBL_ATTR_DUAL_SRESIDUAL_SUM = "DualSResidualSum"
const GRB_DBL_ATTR_INT_VIO = "IntVio"
const GRB_INT_ATTR_INT_VIO_INDEX = "IntVioIndex"
const GRB_DBL_ATTR_INT_VIO_SUM = "IntVioSum"
const GRB_DBL_ATTR_COMPL_VIO = "ComplVio"
const GRB_INT_ATTR_COMPL_VIO_INDEX = "ComplVioIndex"
const GRB_DBL_ATTR_COMPL_VIO_SUM = "ComplVioSum"
const GRB_DBL_ATTR_KAPPA = "Kappa"
const GRB_DBL_ATTR_KAPPA_EXACT = "KappaExact"
const GRB_DBL_ATTR_N2KAPPA = "N2Kappa"
const GRB_DBL_ATTR_SA_OBJLOW = "SAObjLow"
const GRB_DBL_ATTR_SA_OBJUP = "SAObjUp"
const GRB_DBL_ATTR_SA_LBLOW = "SALBLow"
const GRB_DBL_ATTR_SA_LBUP = "SALBUp"
const GRB_DBL_ATTR_SA_UBLOW = "SAUBLow"
const GRB_DBL_ATTR_SA_UBUP = "SAUBUp"
const GRB_DBL_ATTR_SA_RHSLOW = "SARHSLow"
const GRB_DBL_ATTR_SA_RHSUP = "SARHSUp"
const GRB_INT_ATTR_IIS_MINIMAL = "IISMinimal"
const GRB_INT_ATTR_IIS_LB = "IISLB"
const GRB_INT_ATTR_IIS_UB = "IISUB"
const GRB_INT_ATTR_IIS_CONSTR = "IISConstr"
const GRB_INT_ATTR_IIS_SOS = "IISSOS"
const GRB_INT_ATTR_IIS_QCONSTR = "IISQConstr"
const GRB_INT_ATTR_IIS_GENCONSTR = "IISGenConstr"
const GRB_INT_ATTR_TUNE_RESULTCOUNT = "TuneResultCount"
const GRB_DBL_ATTR_FARKASDUAL = "FarkasDual"
const GRB_DBL_ATTR_FARKASPROOF = "FarkasProof"
const GRB_DBL_ATTR_UNBDRAY = "UnbdRay"
const GRB_INT_ATTR_INFEASVAR = "InfeasVar"
const GRB_INT_ATTR_UNBDVAR = "UnbdVar"
const GRB_INT_ATTR_VARPRESTAT = "VarPreStat"
const GRB_DBL_ATTR_PREFIXVAL = "PreFixVal"
const GRB_DBL_ATTR_OBJN = "ObjN"
const GRB_DBL_ATTR_OBJNVAL = "ObjNVal"
const GRB_DBL_ATTR_OBJNCON = "ObjNCon"
const GRB_DBL_ATTR_OBJNWEIGHT = "ObjNWeight"
const GRB_INT_ATTR_OBJNPRIORITY = "ObjNPriority"
const GRB_DBL_ATTR_OBJNRELTOL = "ObjNRelTol"
const GRB_DBL_ATTR_OBJNABSTOL = "ObjNAbsTol"
const GRB_STR_ATTR_OBJNNAME = "ObjNName"
const GRB_DBL_ATTR_SCENNLB = "ScenNLB"
const GRB_DBL_ATTR_SCENNUB = "ScenNUB"
const GRB_DBL_ATTR_SCENNOBJ = "ScenNObj"
const GRB_DBL_ATTR_SCENNRHS = "ScenNRHS"
const GRB_STR_ATTR_SCENNNAME = "ScenNName"
const GRB_DBL_ATTR_SCENNX = "ScenNX"
const GRB_DBL_ATTR_SCENNOBJBOUND = "ScenNObjBound"
const GRB_DBL_ATTR_SCENNOBJVAL = "ScenNObjVal"
const GRB_INT_ATTR_NUMOBJ = "NumObj"
const GRB_INT_ATTR_NUMSCENARIOS = "NumScenarios"
const GRB_INT_ATTR_NUMSTART = "NumStart"
const GRB_DBL_ATTR_Xn = "Xn"
const GRB_GENCONSTR_MAX = 0
const GRB_GENCONSTR_MIN = 1
const GRB_GENCONSTR_ABS = 2
const GRB_GENCONSTR_AND = 3
const GRB_GENCONSTR_OR = 4
const GRB_GENCONSTR_INDICATOR = 5
const GRB_GENCONSTR_PWL = 6
const GRB_GENCONSTR_POLY = 7
const GRB_GENCONSTR_EXP = 8
const GRB_GENCONSTR_EXPA = 9
const GRB_GENCONSTR_LOG = 10
const GRB_GENCONSTR_LOGA = 11
const GRB_GENCONSTR_POW = 12
const GRB_GENCONSTR_SIN = 13
const GRB_GENCONSTR_COS = 14
const GRB_GENCONSTR_TAN = 15
const GRB_CB_POLLING = 0
const GRB_CB_PRESOLVE = 1
const GRB_CB_SIMPLEX = 2
const GRB_CB_MIP = 3
const GRB_CB_MIPSOL = 4
const GRB_CB_MIPNODE = 5
const GRB_CB_MESSAGE = 6
const GRB_CB_BARRIER = 7
const GRB_CB_MULTIOBJ = 8
const GRB_CB_PRE_COLDEL = 1000
const GRB_CB_PRE_ROWDEL = 1001
const GRB_CB_PRE_SENCHG = 1002
const GRB_CB_PRE_BNDCHG = 1003
const GRB_CB_PRE_COECHG = 1004
const GRB_CB_SPX_ITRCNT = 2000
const GRB_CB_SPX_OBJVAL = 2001
const GRB_CB_SPX_PRIMINF = 2002
const GRB_CB_SPX_DUALINF = 2003
const GRB_CB_SPX_ISPERT = 2004
const GRB_CB_MIP_OBJBST = 3000
const GRB_CB_MIP_OBJBND = 3001
const GRB_CB_MIP_NODCNT = 3002
const GRB_CB_MIP_SOLCNT = 3003
const GRB_CB_MIP_CUTCNT = 3004
const GRB_CB_MIP_NODLFT = 3005
const GRB_CB_MIP_ITRCNT = 3006
const GRB_CB_MIP_OBJBNDC = 3007
const GRB_CB_MIPSOL_SOL = 4001
const GRB_CB_MIPSOL_OBJ = 4002
const GRB_CB_MIPSOL_OBJBST = 4003
const GRB_CB_MIPSOL_OBJBND = 4004
const GRB_CB_MIPSOL_NODCNT = 4005
const GRB_CB_MIPSOL_SOLCNT = 4006
const GRB_CB_MIPSOL_OBJBNDC = 4007
const GRB_CB_MIPNODE_STATUS = 5001
const GRB_CB_MIPNODE_REL = 5002
const GRB_CB_MIPNODE_OBJBST = 5003
const GRB_CB_MIPNODE_OBJBND = 5004
const GRB_CB_MIPNODE_NODCNT = 5005
const GRB_CB_MIPNODE_SOLCNT = 5006
const GRB_CB_MIPNODE_BRVAR = 5007
const GRB_CB_MIPNODE_OBJBNDC = 5008
const GRB_CB_MSG_STRING = 6001
const GRB_CB_RUNTIME = 6002
const GRB_CB_BARRIER_ITRCNT = 7001
const GRB_CB_BARRIER_PRIMOBJ = 7002
const GRB_CB_BARRIER_DUALOBJ = 7003
const GRB_CB_BARRIER_PRIMINF = 7004
const GRB_CB_BARRIER_DUALINF = 7005
const GRB_CB_BARRIER_COMPL = 7006
const GRB_CB_MULTIOBJ_OBJCNT = 8001
const GRB_CB_MULTIOBJ_SOLCNT = 8002
const GRB_CB_MULTIOBJ_SOL = 8003
const GRB_FEASRELAX_LINEAR = 0
const GRB_FEASRELAX_QUADRATIC = 1
const GRB_FEASRELAX_CARDINALITY = 2
# Skipping MacroDefinition: MALLOCCB_ARGS size_t size , void * syscbusrdata
# Skipping MacroDefinition: CALLOCCB_ARGS size_t nmemb , size_t size , void * syscbusrdata
# Skipping MacroDefinition: REALLOCCB_ARGS void * ptr , size_t size , void * syscbusrdata
# Skipping MacroDefinition: FREECB_ARGS void * ptr , void * syscbusrdata
# Skipping MacroDefinition: THREADCREATECB_ARGS void * * threadP , void ( * start_routine ) ( void * ) , void * arg , void * syscbusrdata
# Skipping MacroDefinition: THREADJOINCB_ARGS void * thread , void * syscbusrdata
const GRB_LOADED = 1
const GRB_OPTIMAL = 2
const GRB_INFEASIBLE = 3
const GRB_INF_OR_UNBD = 4
const GRB_UNBOUNDED = 5
const GRB_CUTOFF = 6
const GRB_ITERATION_LIMIT = 7
const GRB_NODE_LIMIT = 8
const GRB_TIME_LIMIT = 9
const GRB_SOLUTION_LIMIT = 10
const GRB_INTERRUPTED = 11
const GRB_NUMERIC = 12
const GRB_SUBOPTIMAL = 13
const GRB_INPROGRESS = 14
const GRB_USER_OBJ_LIMIT = 15
const GRB_BASIC = 0
const GRB_NONBASIC_LOWER = -1
const GRB_NONBASIC_UPPER = -2
const GRB_SUPERBASIC = -3
const GRB_INT_PAR_BARITERLIMIT = "BarIterLimit"
const GRB_DBL_PAR_CUTOFF = "Cutoff"
const GRB_DBL_PAR_ITERATIONLIMIT = "IterationLimit"
const GRB_DBL_PAR_NODELIMIT = "NodeLimit"
const GRB_INT_PAR_SOLUTIONLIMIT = "SolutionLimit"
const GRB_DBL_PAR_TIMELIMIT = "TimeLimit"
const GRB_DBL_PAR_BESTOBJSTOP = "BestObjStop"
const GRB_DBL_PAR_BESTBDSTOP = "BestBdStop"
const GRB_DBL_PAR_FEASIBILITYTOL = "FeasibilityTol"
const GRB_DBL_PAR_INTFEASTOL = "IntFeasTol"
const GRB_DBL_PAR_MARKOWITZTOL = "MarkowitzTol"
const GRB_DBL_PAR_MIPGAP = "MIPGap"
const GRB_DBL_PAR_MIPGAPABS = "MIPGapAbs"
const GRB_DBL_PAR_OPTIMALITYTOL = "OptimalityTol"
const GRB_DBL_PAR_PSDTOL = "PSDTol"
const GRB_INT_PAR_METHOD = "Method"
const GRB_DBL_PAR_PERTURBVALUE = "PerturbValue"
const GRB_DBL_PAR_OBJSCALE = "ObjScale"
const GRB_INT_PAR_SCALEFLAG = "ScaleFlag"
const GRB_INT_PAR_SIMPLEXPRICING = "SimplexPricing"
const GRB_INT_PAR_QUAD = "Quad"
const GRB_INT_PAR_NORMADJUST = "NormAdjust"
const GRB_INT_PAR_SIFTING = "Sifting"
const GRB_INT_PAR_SIFTMETHOD = "SiftMethod"
const GRB_DBL_PAR_BARCONVTOL = "BarConvTol"
const GRB_INT_PAR_BARCORRECTORS = "BarCorrectors"
const GRB_INT_PAR_BARHOMOGENEOUS = "BarHomogeneous"
const GRB_INT_PAR_BARORDER = "BarOrder"
const GRB_DBL_PAR_BARQCPCONVTOL = "BarQCPConvTol"
const GRB_INT_PAR_CROSSOVER = "Crossover"
const GRB_INT_PAR_CROSSOVERBASIS = "CrossoverBasis"
const GRB_INT_PAR_BRANCHDIR = "BranchDir"
const GRB_INT_PAR_DEGENMOVES = "DegenMoves"
const GRB_INT_PAR_DISCONNECTED = "Disconnected"
const GRB_DBL_PAR_HEURISTICS = "Heuristics"
const GRB_DBL_PAR_IMPROVESTARTGAP = "ImproveStartGap"
const GRB_DBL_PAR_IMPROVESTARTTIME = "ImproveStartTime"
const GRB_DBL_PAR_IMPROVESTARTNODES = "ImproveStartNodes"
const GRB_INT_PAR_INTEGRALITYFOCUS = "IntegralityFocus"
const GRB_INT_PAR_MINRELNODES = "MinRelNodes"
const GRB_INT_PAR_MIPFOCUS = "MIPFocus"
const GRB_STR_PAR_NODEFILEDIR = "NodefileDir"
const GRB_DBL_PAR_NODEFILESTART = "NodefileStart"
const GRB_INT_PAR_NODEMETHOD = "NodeMethod"
const GRB_DBL_PAR_NORELHEURTIME = "NoRelHeurTime"
const GRB_DBL_PAR_NORELHEURWORK = "NoRelHeurWork"
const GRB_INT_PAR_PUMPPASSES = "PumpPasses"
const GRB_INT_PAR_RINS = "RINS"
const GRB_STR_PAR_SOLFILES = "SolFiles"
const GRB_INT_PAR_STARTNODELIMIT = "StartNodeLimit"
const GRB_INT_PAR_SUBMIPNODES = "SubMIPNodes"
const GRB_INT_PAR_SYMMETRY = "Symmetry"
const GRB_INT_PAR_VARBRANCH = "VarBranch"
const GRB_INT_PAR_SOLUTIONNUMBER = "SolutionNumber"
const GRB_INT_PAR_ZEROOBJNODES = "ZeroObjNodes"
const GRB_INT_PAR_CUTS = "Cuts"
const GRB_INT_PAR_CLIQUECUTS = "CliqueCuts"
const GRB_INT_PAR_COVERCUTS = "CoverCuts"
const GRB_INT_PAR_FLOWCOVERCUTS = "FlowCoverCuts"
const GRB_INT_PAR_FLOWPATHCUTS = "FlowPathCuts"
const GRB_INT_PAR_GUBCOVERCUTS = "GUBCoverCuts"
const GRB_INT_PAR_IMPLIEDCUTS = "ImpliedCuts"
const GRB_INT_PAR_PROJIMPLIEDCUTS = "ProjImpliedCuts"
const GRB_INT_PAR_MIPSEPCUTS = "MIPSepCuts"
const GRB_INT_PAR_MIRCUTS = "MIRCuts"
const GRB_INT_PAR_STRONGCGCUTS = "StrongCGCuts"
const GRB_INT_PAR_MODKCUTS = "ModKCuts"
const GRB_INT_PAR_ZEROHALFCUTS = "ZeroHalfCuts"
const GRB_INT_PAR_NETWORKCUTS = "NetworkCuts"
const GRB_INT_PAR_SUBMIPCUTS = "SubMIPCuts"
const GRB_INT_PAR_INFPROOFCUTS = "InfProofCuts"
const GRB_INT_PAR_RLTCUTS = "RLTCuts"
const GRB_INT_PAR_RELAXLIFTCUTS = "RelaxLiftCuts"
const GRB_INT_PAR_BQPCUTS = "BQPCuts"
const GRB_INT_PAR_PSDCUTS = "PSDCuts"
const GRB_INT_PAR_CUTAGGPASSES = "CutAggPasses"
const GRB_INT_PAR_CUTPASSES = "CutPasses"
const GRB_INT_PAR_GOMORYPASSES = "GomoryPasses"
const GRB_STR_PAR_WORKERPOOL = "WorkerPool"
const GRB_STR_PAR_WORKERPASSWORD = "WorkerPassword"
const GRB_STR_PAR_COMPUTESERVER = "ComputeServer"
const GRB_STR_PAR_TOKENSERVER = "TokenServer"
const GRB_STR_PAR_SERVERPASSWORD = "ServerPassword"
const GRB_INT_PAR_SERVERTIMEOUT = "ServerTimeout"
const GRB_STR_PAR_CSROUTER = "CSRouter"
const GRB_STR_PAR_CSGROUP = "CSGroup"
const GRB_DBL_PAR_CSQUEUETIMEOUT = "CSQueueTimeout"
const GRB_INT_PAR_CSPRIORITY = "CSPriority"
const GRB_INT_PAR_CSIDLETIMEOUT = "CSIdleTimeout"
const GRB_INT_PAR_CSTLSINSECURE = "CSTLSInsecure"
const GRB_INT_PAR_TSPORT = "TSPort"
const GRB_STR_PAR_CLOUDACCESSID = "CloudAccessID"
const GRB_STR_PAR_CLOUDSECRETKEY = "CloudSecretKey"
const GRB_STR_PAR_CLOUDPOOL = "CloudPool"
const GRB_STR_PAR_CLOUDHOST = "CloudHost"
const GRB_STR_PAR_CSMANAGER = "CSManager"
const GRB_STR_PAR_CSAUTHTOKEN = "CSAuthToken"
const GRB_STR_PAR_CSAPIACCESSID = "CSAPIAccessID"
const GRB_STR_PAR_CSAPISECRET = "CSAPISecret"
const GRB_INT_PAR_CSBATCHMODE = "CSBatchMode"
const GRB_STR_PAR_USERNAME = "Username"
const GRB_STR_PAR_CSAPPNAME = "CSAppName"
const GRB_INT_PAR_CSCLIENTLOG = "CSClientLog"
const GRB_INT_PAR_AGGREGATE = "Aggregate"
const GRB_INT_PAR_AGGFILL = "AggFill"
const GRB_INT_PAR_CONCURRENTMIP = "ConcurrentMIP"
const GRB_INT_PAR_CONCURRENTJOBS = "ConcurrentJobs"
const GRB_INT_PAR_DISPLAYINTERVAL = "DisplayInterval"
const GRB_INT_PAR_DISTRIBUTEDMIPJOBS = "DistributedMIPJobs"
const GRB_INT_PAR_DUALREDUCTIONS = "DualReductions"
const GRB_DBL_PAR_FEASRELAXBIGM = "FeasRelaxBigM"
const GRB_INT_PAR_IISMETHOD = "IISMethod"
const GRB_INT_PAR_INFUNBDINFO = "InfUnbdInfo"
const GRB_INT_PAR_JSONSOLDETAIL = "JSONSolDetail"
const GRB_INT_PAR_LAZYCONSTRAINTS = "LazyConstraints"
const GRB_STR_PAR_LOGFILE = "LogFile"
const GRB_INT_PAR_LOGTOCONSOLE = "LogToConsole"
const GRB_INT_PAR_MIQCPMETHOD = "MIQCPMethod"
const GRB_INT_PAR_NONCONVEX = "NonConvex"
const GRB_INT_PAR_NUMERICFOCUS = "NumericFocus"
const GRB_INT_PAR_OUTPUTFLAG = "OutputFlag"
const GRB_INT_PAR_PRECRUSH = "PreCrush"
const GRB_INT_PAR_PREDEPROW = "PreDepRow"
const GRB_INT_PAR_PREDUAL = "PreDual"
const GRB_INT_PAR_PREPASSES = "PrePasses"
const GRB_INT_PAR_PREQLINEARIZE = "PreQLinearize"
const GRB_INT_PAR_PRESOLVE = "Presolve"
const GRB_DBL_PAR_PRESOS1BIGM = "PreSOS1BigM"
const GRB_DBL_PAR_PRESOS2BIGM = "PreSOS2BigM"
const GRB_INT_PAR_PRESPARSIFY = "PreSparsify"
const GRB_INT_PAR_PREMIQCPFORM = "PreMIQCPForm"
const GRB_INT_PAR_QCPDUAL = "QCPDual"
const GRB_INT_PAR_RECORD = "Record"
const GRB_STR_PAR_RESULTFILE = "ResultFile"
const GRB_INT_PAR_SEED = "Seed"
const GRB_INT_PAR_THREADS = "Threads"
const GRB_DBL_PAR_TUNETIMELIMIT = "TuneTimeLimit"
const GRB_INT_PAR_TUNERESULTS = "TuneResults"
const GRB_INT_PAR_TUNECRITERION = "TuneCriterion"
const GRB_INT_PAR_TUNETRIALS = "TuneTrials"
const GRB_INT_PAR_TUNEOUTPUT = "TuneOutput"
const GRB_INT_PAR_TUNEJOBS = "TuneJobs"
const GRB_DBL_PAR_TUNECLEANUP = "TuneCleanup"
const GRB_INT_PAR_UPDATEMODE = "UpdateMode"
const GRB_INT_PAR_OBJNUMBER = "ObjNumber"
const GRB_INT_PAR_MULTIOBJMETHOD = "MultiObjMethod"
const GRB_INT_PAR_MULTIOBJPRE = "MultiObjPre"
const GRB_INT_PAR_SCENARIONUMBER = "ScenarioNumber"
const GRB_INT_PAR_POOLSOLUTIONS = "PoolSolutions"
const GRB_DBL_PAR_POOLGAP = "PoolGap"
const GRB_DBL_PAR_POOLGAPABS = "PoolGapAbs"
const GRB_INT_PAR_POOLSEARCHMODE = "PoolSearchMode"
const GRB_INT_PAR_IGNORENAMES = "IgnoreNames"
const GRB_INT_PAR_STARTNUMBER = "StartNumber"
const GRB_INT_PAR_PARTITIONPLACE = "PartitionPlace"
const GRB_INT_PAR_FUNCPIECES = "FuncPieces"
const GRB_DBL_PAR_FUNCPIECELENGTH = "FuncPieceLength"
const GRB_DBL_PAR_FUNCPIECEERROR = "FuncPieceError"
const GRB_DBL_PAR_FUNCPIECERATIO = "FuncPieceRatio"
const GRB_DBL_PAR_FUNCMAXVAL = "FuncMaxVal"
const GRB_STR_PAR_DUMMY = "Dummy"
const GRB_STR_PAR_JOBID = "JobID"
const GRB_CUTS_AUTO = -1
const GRB_CUTS_OFF = 0
const GRB_CUTS_CONSERVATIVE = 1
const GRB_CUTS_AGGRESSIVE = 2
const GRB_CUTS_VERYAGGRESSIVE = 3
const GRB_PRESOLVE_AUTO = -1
const GRB_PRESOLVE_OFF = 0
const GRB_PRESOLVE_CONSERVATIVE = 1
const GRB_PRESOLVE_AGGRESSIVE = 2
const GRB_METHOD_AUTO = -1
const GRB_METHOD_PRIMAL = 0
const GRB_METHOD_DUAL = 1
const GRB_METHOD_BARRIER = 2
const GRB_METHOD_CONCURRENT = 3
const GRB_METHOD_DETERMINISTIC_CONCURRENT = 4
const GRB_METHOD_DETERMINISTIC_CONCURRENT_SIMPLEX = 5
const GRB_BARHOMOGENEOUS_AUTO = -1
const GRB_BARHOMOGENEOUS_OFF = 0
const GRB_BARHOMOGENEOUS_ON = 1
const GRB_MIPFOCUS_BALANCED = 0
const GRB_MIPFOCUS_FEASIBILITY = 1
const GRB_MIPFOCUS_OPTIMALITY = 2
const GRB_MIPFOCUS_BESTBOUND = 3
const GRB_BARORDER_AUTOMATIC = -1
const GRB_BARORDER_AMD = 0
const GRB_BARORDER_NESTEDDISSECTION = 1
const GRB_SIMPLEXPRICING_AUTO = -1
const GRB_SIMPLEXPRICING_PARTIAL = 0
const GRB_SIMPLEXPRICING_STEEPEST_EDGE = 1
const GRB_SIMPLEXPRICING_DEVEX = 2
const GRB_SIMPLEXPRICING_STEEPEST_QUICK = 3
const GRB_VARBRANCH_AUTO = -1
const GRB_VARBRANCH_PSEUDO_REDUCED = 0
const GRB_VARBRANCH_PSEUDO_SHADOW = 1
const GRB_VARBRANCH_MAX_INFEAS = 2
const GRB_VARBRANCH_STRONG = 3
const GRB_PARTITION_EARLY = 16
const GRB_PARTITION_ROOTSTART = 8
const GRB_PARTITION_ROOTEND = 4
const GRB_PARTITION_NODES = 2
const GRB_PARTITION_CLEANUP = 1
const GRB_BATCH_STATUS_UNKNOWN = 0
const GRB_BATCH_CREATED = 1
const GRB_BATCH_SUBMITTED = 2
const GRB_BATCH_ABORTED = 3
const GRB_BATCH_FAILED = 4
const GRB_BATCH_COMPLETED = 5
const _GRBbatch = Cvoid
const GRBbatch = _GRBbatch
const _GRBmodel = Cvoid
const GRBmodel = _GRBmodel
const _GRBenv = Cvoid
const GRBenv = _GRBenv
struct _GRBsvec
len::Cint
ind::Ptr{Cint}
val::Ptr{Cdouble}
end
const GRBsvec = _GRBsvec