Scippy

SCIP

Solving Constraint Integer Programs

pub_fileio.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-2024 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 pub_fileio.h
26  * @ingroup PUBLICCOREAPI
27  * @brief wrapper functions to map file i/o to standard or zlib file i/o
28  * @author Tobias Achterberg
29  */
30 
31 /*---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8----+----9----+----0----+----1----+----2*/
32 
33 #ifndef __SCIP_PUB_FILEIO_H__
34 #define __SCIP_PUB_FILEIO_H__
35 
36 #include <stddef.h>
37 #include "scip/def.h"
38 
39 #ifdef __cplusplus
40 extern "C" {
41 #endif
42 
43 typedef struct SCIP_File SCIP_FILE; /**< file data structure */
44 
45 SCIP_EXPORT SCIP_FILE* SCIPfopen(const char *path, const char *mode);
46 SCIP_EXPORT SCIP_FILE* SCIPfdopen(int fildes, const char *mode);
47 SCIP_EXPORT size_t SCIPfread(void *ptr, size_t size, size_t nmemb, SCIP_FILE *stream);
48 SCIP_EXPORT size_t SCIPfwrite(const void *ptr, size_t size, size_t nmemb, SCIP_FILE *stream);
49 #ifdef __GNUC__
50 __attribute__((format(printf, 2, 3)))
51 #endif
52 SCIP_EXPORT int SCIPfprintf(SCIP_FILE *stream, const char *format, ...);
53 SCIP_EXPORT int SCIPfputc(int c, SCIP_FILE *stream);
54 SCIP_EXPORT int SCIPfputs(const char *s, SCIP_FILE *stream);
55 SCIP_EXPORT int SCIPfgetc(SCIP_FILE *stream);
56 SCIP_EXPORT char* SCIPfgets(char *s, int size, SCIP_FILE *stream);
57 SCIP_EXPORT int SCIPfflush(SCIP_FILE *stream);
58 SCIP_EXPORT int SCIPfseek(SCIP_FILE *stream, long offset, int whence);
59 SCIP_EXPORT void SCIPrewind(SCIP_FILE *stream);
60 SCIP_EXPORT long SCIPftell(SCIP_FILE *stream);
61 SCIP_EXPORT int SCIPfeof(SCIP_FILE *stream);
62 SCIP_EXPORT int SCIPfclose(SCIP_FILE *fp);
63 
64 #ifdef __cplusplus
65 }
66 #endif
67 
68 #endif
size_t SCIPfwrite(const void *ptr, size_t size, size_t nmemb, SCIP_FILE *stream)
Definition: fileio.c:168
int SCIPfseek(SCIP_FILE *stream, long offset, int whence)
Definition: fileio.c:212
int SCIPfclose(SCIP_FILE *fp)
Definition: fileio.c:232
int SCIPfeof(SCIP_FILE *stream)
Definition: fileio.c:227
int SCIPfprintf(SCIP_FILE *stream, const char *format,...)
Definition: fileio.c:173
struct SCIP_File SCIP_FILE
Definition: pub_fileio.h:43
void SCIPrewind(SCIP_FILE *stream)
Definition: fileio.c:217
SCIP_FILE * SCIPfopen(const char *path, const char *mode)
Definition: fileio.c:153
char * SCIPfgets(char *s, int size, SCIP_FILE *stream)
Definition: fileio.c:200
SCIP_FILE * SCIPfdopen(int fildes, const char *mode)
Definition: fileio.c:158
int SCIPfputs(const char *s, SCIP_FILE *stream)
Definition: fileio.c:190
long SCIPftell(SCIP_FILE *stream)
Definition: fileio.c:222
size_t SCIPfread(void *ptr, size_t size, size_t nmemb, SCIP_FILE *stream)
Definition: fileio.c:163
int SCIPfputc(int c, SCIP_FILE *stream)
Definition: fileio.c:185
int SCIPfgetc(SCIP_FILE *stream)
Definition: fileio.c:195
int SCIPfflush(SCIP_FILE *stream)
Definition: fileio.c:207
common defines and data types used in all packages of SCIP