Scippy

SCIP

Solving Constraint Integer Programs

type_exprinterpret.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 type_exprinterpret.h
17  * @ingroup TYPEDEFINITIONS
18  * @brief type definitions for expression interpreter
19  * @author Stefan Vigerske
20  */
21 
22 /** @defgroup DEFPLUGINS_EXPRINT Default expression interpreter
23  * @ingroup DEFPLUGINS
24  * @brief implementation files (.c/.cpp files) of the default expression handlers of SCIP
25  */
26 
27 /*---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8----+----9----+----0----+----1----+----2*/
28 
29 #ifndef __SCIP_TYPE_EXPRINTERPRET_H__
30 #define __SCIP_TYPE_EXPRINTERPRET_H__
31 
32 #ifdef __cplusplus
33 extern "C" {
34 #endif
35 
36 typedef struct SCIP_ExprInt SCIP_EXPRINT; /**< an expression interpreter */
37 typedef struct SCIP_ExprIntData SCIP_EXPRINTDATA; /**< data of an expression interpreter */
38 typedef unsigned int SCIP_EXPRINTCAPABILITY; /**< type of expression interpreter capability */
39 
40 #define SCIP_EXPRINTCAPABILITY_NONE 0x00000000 /**< the expression interpreter is capable of nothing */
41 #define SCIP_EXPRINTCAPABILITY_FUNCVALUE 0x00000001 /**< the expression interpreter is able to compute a function value in a point */
42 #define SCIP_EXPRINTCAPABILITY_GRADIENT 0x00000010 /**< the expression interpreter is able to compute a gradient in a point */
43 #define SCIP_EXPRINTCAPABILITY_HESSIAN 0x00000100 /**< the expression interpreter is able to compute a full hessian in a point */
44 #define SCIP_EXPRINTCAPABILITY_ALL (SCIP_EXPRINTCAPABILITY_FUNCVALUE | SCIP_EXPRINTCAPABILITY_GRADIENT | SCIP_EXPRINTCAPABILITY_HESSIAN)
45 
46 #ifdef __cplusplus
47 }
48 #endif
49 
50 #endif /* __SCIP_TYPE_EXPRINTERPRET_H__ */
unsigned int SCIP_EXPRINTCAPABILITY
struct SCIP_ExprInt SCIP_EXPRINT
struct SCIP_ExprIntData SCIP_EXPRINTDATA