Scippy

    SCIP

    Solving Constraint Integer Programs

    retcode.c
    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-2025 Zuse Institute Berlin (ZIB) */
    7/* */
    8/* Licensed under the Apache License, Version 2.0 (the "License"); */
    9/* you may not use this file except in compliance with the License. */
    10/* You may obtain a copy of the License at */
    11/* */
    12/* http://www.apache.org/licenses/LICENSE-2.0 */
    13/* */
    14/* Unless required by applicable law or agreed to in writing, software */
    15/* distributed under the License is distributed on an "AS IS" BASIS, */
    16/* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. */
    17/* See the License for the specific language governing permissions and */
    18/* limitations under the License. */
    19/* */
    20/* You should have received a copy of the Apache-2.0 license */
    21/* along with SCIP; see the file LICENSE. If not visit scipopt.org. */
    22/* */
    23/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
    24
    25/**@file retcode.c
    26 * @ingroup OTHER_CFILES
    27 * @brief methods for return codes for SCIP methods
    28 * @author Tobias Achterberg
    29 */
    30
    31/*---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8----+----9----+----0----+----1----+----2*/
    32
    33#include <stdio.h>
    34
    35#include "scip/retcode.h"
    36
    37/** prints error message for return code via message handler */
    39 SCIP_MESSAGEHDLR* messagehdlr, /**< message handler */
    40 FILE* file, /**< file stream to write error message */
    41 SCIP_RETCODE retcode /**< SCIP return code causing the error */
    42 )
    43{
    44 switch( retcode )
    45 {
    46 case SCIP_OKAY:
    47 SCIPmessageFPrintInfo(messagehdlr, file, "normal termination");
    48 break;
    49 case SCIP_ERROR:
    50 SCIPmessageFPrintInfo(messagehdlr, file, "unspecified error");
    51 break;
    52 case SCIP_NOMEMORY:
    53 SCIPmessageFPrintInfo(messagehdlr, file, "insufficient memory error");
    54 break;
    55 case SCIP_READERROR:
    56 SCIPmessageFPrintInfo(messagehdlr, file, "read error");
    57 break;
    58 case SCIP_WRITEERROR:
    59 SCIPmessageFPrintInfo(messagehdlr, file, "write error");
    60 break;
    61 case SCIP_NOFILE:
    62 SCIPmessageFPrintInfo(messagehdlr, file, "file not found error");
    63 break;
    65 SCIPmessageFPrintInfo(messagehdlr, file, "cannot create file");
    66 break;
    67 case SCIP_LPERROR:
    68 SCIPmessageFPrintInfo(messagehdlr, file, "error in LP solver");
    69 break;
    70 case SCIP_NOPROBLEM:
    71 SCIPmessageFPrintInfo(messagehdlr, file, "no problem exists");
    72 break;
    74 SCIPmessageFPrintInfo(messagehdlr, file, "method cannot be called at this time in solution process");
    75 break;
    77 SCIPmessageFPrintInfo(messagehdlr, file, "method cannot be called with this type of data");
    78 break;
    80 SCIPmessageFPrintInfo(messagehdlr, file, "method returned an invalid result code");
    81 break;
    83 SCIPmessageFPrintInfo(messagehdlr, file, "a required plugin was not found");
    84 break;
    86 SCIPmessageFPrintInfo(messagehdlr, file, "the parameter with the given name was not found");
    87 break;
    89 SCIPmessageFPrintInfo(messagehdlr, file, "the parameter is not of the expected type");
    90 break;
    92 SCIPmessageFPrintInfo(messagehdlr, file, "the value is invalid for the given parameter");
    93 break;
    95 SCIPmessageFPrintInfo(messagehdlr, file, "the given key is already existing in table");
    96 break;
    98 SCIPmessageFPrintInfo(messagehdlr, file, "maximal branching depth level exceeded");
    99 break;
    100 case SCIP_BRANCHERROR:
    101 SCIPmessageFPrintInfo(messagehdlr, file, "branching could not be performed (e.g. too large values in variable domain)");
    102 break;
    104 SCIPmessageFPrintInfo(messagehdlr, file, "function not implemented");
    105 break;
    106 default:
    107 SCIPmessageFPrintInfo(messagehdlr, file, "unknown error code");
    108 break;
    109 }
    110}
    111
    112/** prints error message for return code via error message */
    114 SCIP_RETCODE retcode /**< SCIP return code causing the error */
    115 )
    116{
    117 switch( retcode )
    118 {
    119 case SCIP_OKAY:
    120 SCIPmessagePrintError("normal termination");
    121 break;
    122 case SCIP_ERROR:
    123 SCIPmessagePrintError("unspecified error");
    124 break;
    125 case SCIP_NOMEMORY:
    126 SCIPmessagePrintError("insufficient memory error");
    127 break;
    128 case SCIP_READERROR:
    129 SCIPmessagePrintError("read error");
    130 break;
    131 case SCIP_WRITEERROR:
    132 SCIPmessagePrintError("write error");
    133 break;
    134 case SCIP_NOFILE:
    135 SCIPmessagePrintError("file not found error");
    136 break;
    138 SCIPmessagePrintError("cannot create file");
    139 break;
    140 case SCIP_LPERROR:
    141 SCIPmessagePrintError("error in LP solver");
    142 break;
    143 case SCIP_NOPROBLEM:
    144 SCIPmessagePrintError("no problem exists");
    145 break;
    146 case SCIP_INVALIDCALL:
    147 SCIPmessagePrintError("method cannot be called at this time in solution process");
    148 break;
    149 case SCIP_INVALIDDATA:
    150 SCIPmessagePrintError("method cannot be called with this type of data");
    151 break;
    153 SCIPmessagePrintError("method returned an invalid result code");
    154 break;
    156 SCIPmessagePrintError("a required plugin was not found");
    157 break;
    159 SCIPmessagePrintError("the parameter with the given name was not found");
    160 break;
    162 SCIPmessagePrintError("the parameter is not of the expected type");
    163 break;
    165 SCIPmessagePrintError("the value is invalid for the given parameter");
    166 break;
    168 SCIPmessagePrintError("the given key is already existing in table");
    169 break;
    171 SCIPmessagePrintError("maximal branching depth level exceeded");
    172 break;
    173 case SCIP_BRANCHERROR:
    174 SCIPmessagePrintError("branching could not be performed (e.g. too large values in variable domain)");
    175 break;
    177 SCIPmessagePrintError("function not implemented");
    178 break;
    179 default:
    180 SCIPmessagePrintError("unknown error code");
    181 break;
    182 }
    183}
    void SCIPmessagePrintError(const char *formatstr,...)
    Definition: message.c:791
    void SCIPmessageFPrintInfo(SCIP_MESSAGEHDLR *messagehdlr, FILE *file, const char *formatstr,...)
    Definition: message.c:618
    void SCIPretcodePrint(SCIP_MESSAGEHDLR *messagehdlr, FILE *file, SCIP_RETCODE retcode)
    Definition: retcode.c:38
    void SCIPretcodePrintError(SCIP_RETCODE retcode)
    Definition: retcode.c:113
    internal methods for return codes for SCIP methods
    @ SCIP_FILECREATEERROR
    Definition: type_retcode.h:48
    @ SCIP_LPERROR
    Definition: type_retcode.h:49
    @ SCIP_BRANCHERROR
    Definition: type_retcode.h:60
    @ SCIP_INVALIDRESULT
    Definition: type_retcode.h:53
    @ SCIP_NOFILE
    Definition: type_retcode.h:47
    @ SCIP_READERROR
    Definition: type_retcode.h:45
    @ SCIP_INVALIDDATA
    Definition: type_retcode.h:52
    @ SCIP_PLUGINNOTFOUND
    Definition: type_retcode.h:54
    @ SCIP_PARAMETERUNKNOWN
    Definition: type_retcode.h:55
    @ SCIP_WRITEERROR
    Definition: type_retcode.h:46
    @ SCIP_PARAMETERWRONGVAL
    Definition: type_retcode.h:57
    @ SCIP_PARAMETERWRONGTYPE
    Definition: type_retcode.h:56
    @ SCIP_KEYALREADYEXISTING
    Definition: type_retcode.h:58
    @ SCIP_NOMEMORY
    Definition: type_retcode.h:44
    @ SCIP_NOPROBLEM
    Definition: type_retcode.h:50
    @ SCIP_OKAY
    Definition: type_retcode.h:42
    @ SCIP_INVALIDCALL
    Definition: type_retcode.h:51
    @ SCIP_ERROR
    Definition: type_retcode.h:43
    @ SCIP_NOTIMPLEMENTED
    Definition: type_retcode.h:61
    @ SCIP_MAXDEPTHLEVEL
    Definition: type_retcode.h:59
    enum SCIP_Retcode SCIP_RETCODE
    Definition: type_retcode.h:63