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-2022 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 scipopt.org. */
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 */
44  SCIP_TABLE* table, /**< statistics table */
45  SCIP_SET* set /**< SCIP_SET of SCIP to copy to */
46  );
47 
48 /** creates a statistics table */
50  SCIP_TABLE** table, /**< pointer to store statistics table */
51  SCIP_SET* set, /**< global SCIP settings */
52  SCIP_MESSAGEHDLR* messagehdlr, /**< message handler */
53  BMS_BLKMEM* blkmem, /**< block memory for parameter settings */
54  const char* name, /**< name of statistics table */
55  const char* desc, /**< description of statistics table */
56  SCIP_Bool active, /**< should the table be activated by default? */
57  SCIP_DECL_TABLECOPY ((*tablecopy)), /**< copy method of statistics table or NULL if you don't want to copy your plugin into sub-SCIPs */
58  SCIP_DECL_TABLEFREE ((*tablefree)), /**< destructor of statistics table */
59  SCIP_DECL_TABLEINIT ((*tableinit)), /**< initialize statistics table */
60  SCIP_DECL_TABLEEXIT ((*tableexit)), /**< deinitialize statistics table */
61  SCIP_DECL_TABLEINITSOL ((*tableinitsol)), /**< solving process initialization method of statistics table */
62  SCIP_DECL_TABLEEXITSOL ((*tableexitsol)), /**< solving process deinitialization method of statistics table */
63  SCIP_DECL_TABLEOUTPUT ((*tableoutput)), /**< output method */
64  SCIP_TABLEDATA* tabledata, /**< statistics table data */
65  int position, /**< position of statistics table */
66  SCIP_STAGE earlieststage /**< output of the statistics table is only printed from this stage onwards */
67  );
68 
69 /** frees memory of statistics table */
71  SCIP_TABLE** table, /**< pointer to statistics table data structure */
72  SCIP_SET* set /**< global SCIP settings */
73  );
74 
75 /** initializes statistics table */
77  SCIP_TABLE* table, /**< statistics table */
78  SCIP_SET* set /**< global SCIP settings */
79  );
80 
81 /** deinitializes statistics table */
83  SCIP_TABLE* table, /**< statistics table */
84  SCIP_SET* set /**< global SCIP settings */
85  );
86 
87 /** informs statistics table that the branch and bound process is being started */
89  SCIP_TABLE* table, /**< statistics table */
90  SCIP_SET* set /**< global SCIP settings */
91  );
92 
93 /** informs statistics table that the branch and bound process data is being freed */
95  SCIP_TABLE* table, /**< statistics table */
96  SCIP_SET* set /**< global SCIP settings */
97  );
98 
99 /** output statistics table to screen */
101  SCIP_TABLE* table, /**< statistics table */
102  SCIP_SET* set, /**< global SCIP settings */
103  FILE* file /**< output file (or NULL for standard output) */
104  );
105 
106 #ifdef __cplusplus
107 }
108 #endif
109 
110 #endif
#define SCIP_DECL_TABLEINITSOL(x)
Definition: type_table.h:93
#define SCIP_DECL_TABLEFREE(x)
Definition: type_table.h:66
enum SCIP_Retcode SCIP_RETCODE
Definition: type_retcode.h:54
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:46
public methods for displaying statistic tables
SCIP_RETCODE SCIPtableExitsol(SCIP_TABLE *table, SCIP_SET *set)
Definition: table.c:245
SCIP_RETCODE SCIPtableInitsol(SCIP_TABLE *table, SCIP_SET *set)
Definition: table.c:227
SCIP_RETCODE SCIPtableExit(SCIP_TABLE *table, SCIP_SET *set)
Definition: table.c:203
#define SCIP_Bool
Definition: def.h:84
#define SCIP_DECL_TABLECOPY(x)
Definition: type_table.h:58
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:121
#define SCIP_DECL_TABLEEXIT(x)
Definition: type_table.h:82
SCIP_RETCODE SCIPtableInit(SCIP_TABLE *table, SCIP_SET *set)
Definition: table.c:179
#define SCIP_DECL_TABLEINIT(x)
Definition: type_table.h:74
SCIP_RETCODE SCIPtableFree(SCIP_TABLE **table, SCIP_SET *set)
Definition: table.c:154
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:263
common defines and data types used in all packages of SCIP
struct BMS_BlkMem BMS_BLKMEM
Definition: memory.h:430
#define SCIP_DECL_TABLEOUTPUT(x)
Definition: type_table.h:113
#define SCIP_DECL_TABLEEXITSOL(x)
Definition: type_table.h:104
type definitions for displaying statistics tables
struct SCIP_TableData SCIP_TABLEDATA
Definition: type_table.h:49
memory allocation routines