1 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ 2 /* */ 3 /* This file is part of the program and library */ 4 /* SCIP --- Solving Constraint Integer Programs */ 5 /* */ 6 /* Copyright (C) 2002-2021 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 scip_table.h 17 * @ingroup PUBLICCOREAPI 18 * @brief public methods for statistics table plugins 19 * @author Tobias Achterberg 20 * @author Timo Berthold 21 * @author Thorsten Koch 22 * @author Alexander Martin 23 * @author Marc Pfetsch 24 * @author Kati Wolter 25 * @author Gregor Hendel 26 * @author Leona Gottwald 27 */ 28 29 /*---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8----+----9----+----0----+----1----+----2*/ 30 31 #ifndef __SCIP_SCIP_TABLE_H__ 32 #define __SCIP_SCIP_TABLE_H__ 33 34 35 #include "scip/def.h" 36 #include "scip/type_retcode.h" 37 #include "scip/type_scip.h" 38 #include "scip/type_set.h" 39 #include "scip/type_table.h" 40 41 #ifdef __cplusplus 42 extern "C" { 43 #endif 44 45 /**@addtogroup PublicTableMethods 46 * 47 * @{ 48 */ 49 50 /** creates a statistics table and includes it in SCIP */ 51 SCIP_EXPORT 52 SCIP_RETCODE SCIPincludeTable( 53 SCIP* scip, /**< SCIP data structure */ 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 /** returns the statistics table of the given name, or NULL if not existing */ 70 SCIP_EXPORT 71 SCIP_TABLE* SCIPfindTable( 72 SCIP* scip, /**< SCIP data structure */ 73 const char* name /**< name of statistics table */ 74 ); 75 76 /** returns the array of currently available statistics tables */ 77 SCIP_EXPORT 78 SCIP_TABLE** SCIPgetTables( 79 SCIP* scip /**< SCIP data structure */ 80 ); 81 82 /** returns the number of currently available statistics tables */ 83 SCIP_EXPORT 84 int SCIPgetNTables( 85 SCIP* scip /**< SCIP data structure */ 86 ); 87 88 /** @} */ 89 90 #ifdef __cplusplus 91 } 92 #endif 93 94 #endif 95