Scippy

SCIP

Solving Constraint Integer Programs

table.h
Go to the documentation of this file.
1 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
2 /* */
3 /* This file is part of the program and library */
4 /* SCIP --- Solving Constraint Integer Programs */
5 /* */
6 /* Copyright (C) 2002-2019 Konrad-Zuse-Zentrum */
7 /* fuer Informationstechnik Berlin */
8 /* */
9 /* SCIP is distributed under the terms of the ZIB Academic License. */
10 /* */
11 /* You should have received a copy of the ZIB Academic License */
12 /* along with SCIP; see the file COPYING. If not visit scip.zib.de. */
13 /* */
14 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
15 
16 /**@file table.h
17  * @ingroup INTERNALAPI
18  * @brief internal methods for displaying statistics tables
19  * @author Tristan Gally
20  */
21 
22 /*---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8----+----9----+----0----+----1----+----2*/
23 
24 #ifndef __SCIP_TABLE_H__
25 #define __SCIP_TABLE_H__
26 
27 
28 #include <stdio.h>
29 
30 #include "scip/def.h"
31 #include "blockmemshell/memory.h"
32 #include "scip/type_retcode.h"
33 #include "scip/type_set.h"
34 #include "scip/type_table.h"
35 #include "scip/type_paramset.h"
36 #include "scip/pub_table.h"
37 
38 #ifdef __cplusplus
39 extern "C" {
40 #endif
41 
42 /** copies the given statistics table to a new scip */
43 extern
45  SCIP_TABLE* table, /**< statistics table */
46  SCIP_SET* set /**< SCIP_SET of SCIP to copy to */
47  );
48 
49 /** creates a statistics table */
50 extern
52  SCIP_TABLE** table, /**< pointer to store statistics table */
53  SCIP_SET* set, /**< global SCIP settings */
54  SCIP_MESSAGEHDLR* messagehdlr, /**< message handler */
55  BMS_BLKMEM* blkmem, /**< block memory for parameter settings */
56  const char* name, /**< name of statistics table */
57  const char* desc, /**< description of statistics table */
58  SCIP_Bool active, /**< should the table be activated by default? */
59  SCIP_DECL_TABLECOPY ((*tablecopy)), /**< copy method of statistics table or NULL if you don't want to copy your plugin into sub-SCIPs */
60  SCIP_DECL_TABLEFREE ((*tablefree)), /**< destructor of statistics table */
61  SCIP_DECL_TABLEINIT ((*tableinit)), /**< initialize statistics table */
62  SCIP_DECL_TABLEEXIT ((*tableexit)), /**< deinitialize statistics table */
63  SCIP_DECL_TABLEINITSOL ((*tableinitsol)), /**< solving process initialization method of statistics table */
64  SCIP_DECL_TABLEEXITSOL ((*tableexitsol)), /**< solving process deinitialization method of statistics table */
65  SCIP_DECL_TABLEOUTPUT ((*tableoutput)), /**< output method */
66  SCIP_TABLEDATA* tabledata, /**< statistics table data */
67  int position, /**< position of statistics table */
68  SCIP_STAGE earlieststage /**< output of the statistics table is only printed from this stage onwards */
69  );
70 
71 /** frees memory of statistics table */
72 extern
74  SCIP_TABLE** table, /**< pointer to statistics table data structure */
75  SCIP_SET* set /**< global SCIP settings */
76  );
77 
78 /** initializes statistics table */
79 extern
81  SCIP_TABLE* table, /**< statistics table */
82  SCIP_SET* set /**< global SCIP settings */
83  );
84 
85 /** deinitializes statistics table */
86 extern
88  SCIP_TABLE* table, /**< statistics table */
89  SCIP_SET* set /**< global SCIP settings */
90  );
91 
92 /** informs statistics table that the branch and bound process is being started */
93 extern
95  SCIP_TABLE* table, /**< statistics table */
96  SCIP_SET* set /**< global SCIP settings */
97  );
98 
99 /** informs statistics table that the branch and bound process data is being freed */
100 extern
102  SCIP_TABLE* table, /**< statistics table */
103  SCIP_SET* set /**< global SCIP settings */
104  );
105 
106 /** output statistics table to screen */
107 extern
109  SCIP_TABLE* table, /**< statistics table */
110  SCIP_SET* set, /**< global SCIP settings */
111  FILE* file /**< output file (or NULL for standard output) */
112  );
113 
114 #ifdef __cplusplus
115 }
116 #endif
117 
118 #endif
#define SCIP_DECL_TABLEINITSOL(x)
Definition: type_table.h:88
#define SCIP_DECL_TABLEFREE(x)
Definition: type_table.h:61
enum SCIP_Retcode SCIP_RETCODE
Definition: type_retcode.h:53
type definitions for global SCIP settings
static GRAPHNODE ** active
type definitions for return codes for SCIP methods
SCIP_RETCODE SCIPtableCopyInclude(SCIP_TABLE *table, SCIP_SET *set)
Definition: table.c:45
public methods for displaying statistic tables
SCIP_RETCODE SCIPtableExitsol(SCIP_TABLE *table, SCIP_SET *set)
Definition: table.c:244
SCIP_RETCODE SCIPtableInitsol(SCIP_TABLE *table, SCIP_SET *set)
Definition: table.c:226
SCIP_RETCODE SCIPtableExit(SCIP_TABLE *table, SCIP_SET *set)
Definition: table.c:202
#define SCIP_Bool
Definition: def.h:69
#define SCIP_DECL_TABLECOPY(x)
Definition: type_table.h:53
SCIP_RETCODE SCIPtableCreate(SCIP_TABLE **table, SCIP_SET *set, SCIP_MESSAGEHDLR *messagehdlr, BMS_BLKMEM *blkmem, const char *name, const char *desc, SCIP_Bool active, SCIP_DECL_TABLECOPY((*tablecopy)), SCIP_DECL_TABLEFREE((*tablefree)), SCIP_DECL_TABLEINIT((*tableinit)), SCIP_DECL_TABLEEXIT((*tableexit)), SCIP_DECL_TABLEINITSOL((*tableinitsol)), SCIP_DECL_TABLEEXITSOL((*tableexitsol)), SCIP_DECL_TABLEOUTPUT((*tableoutput)), SCIP_TABLEDATA *tabledata, int position, SCIP_STAGE earlieststage)
Definition: table.c:120
#define SCIP_DECL_TABLEEXIT(x)
Definition: type_table.h:77
SCIP_RETCODE SCIPtableInit(SCIP_TABLE *table, SCIP_SET *set)
Definition: table.c:178
#define SCIP_DECL_TABLEINIT(x)
Definition: type_table.h:69
SCIP_RETCODE SCIPtableFree(SCIP_TABLE **table, SCIP_SET *set)
Definition: table.c:153
type definitions for handling parameter settings
enum SCIP_Stage SCIP_STAGE
Definition: type_set.h:50
SCIP_RETCODE SCIPtableOutput(SCIP_TABLE *table, SCIP_SET *set, FILE *file)
Definition: table.c:262
common defines and data types used in all packages of SCIP
struct BMS_BlkMem BMS_BLKMEM
Definition: memory.h:426
#define SCIP_DECL_TABLEOUTPUT(x)
Definition: type_table.h:108
#define SCIP_DECL_TABLEEXITSOL(x)
Definition: type_table.h:99
type definitions for displaying statistics tables
struct SCIP_TableData SCIP_TABLEDATA
Definition: type_table.h:44
memory allocation routines