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
40extern "C" {
41#endif
42
43typedef struct SCIP_File SCIP_FILE; /**< file data structure */
44
45SCIP_EXPORT SCIP_FILE* SCIPfopen(const char *path, const char *mode);
46SCIP_EXPORT SCIP_FILE* SCIPfdopen(int fildes, const char *mode);
47SCIP_EXPORT size_t SCIPfread(void *ptr, size_t size, size_t nmemb, SCIP_FILE *stream);
48SCIP_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
52SCIP_EXPORT int SCIPfprintf(SCIP_FILE *stream, const char *format, ...);
53SCIP_EXPORT int SCIPfputc(int c, SCIP_FILE *stream);
54SCIP_EXPORT int SCIPfputs(const char *s, SCIP_FILE *stream);
55SCIP_EXPORT int SCIPfgetc(SCIP_FILE *stream);
56SCIP_EXPORT char* SCIPfgets(char *s, int size, SCIP_FILE *stream);
57SCIP_EXPORT int SCIPfflush(SCIP_FILE *stream);
58SCIP_EXPORT int SCIPfseek(SCIP_FILE *stream, long offset, int whence);
59SCIP_EXPORT void SCIPrewind(SCIP_FILE *stream);
60SCIP_EXPORT long SCIPftell(SCIP_FILE *stream);
61SCIP_EXPORT int SCIPfeof(SCIP_FILE *stream);
62SCIP_EXPORT int SCIPfclose(SCIP_FILE *fp);
63
64#ifdef __cplusplus
65}
66#endif
67
68#endif
common defines and data types used in all packages of SCIP
SCIP_FILE * SCIPfopen(const char *path, const char *mode)
Definition: fileio.c:153
size_t SCIPfwrite(const void *ptr, size_t size, size_t nmemb, SCIP_FILE *stream)
Definition: fileio.c:168
int SCIPfgetc(SCIP_FILE *stream)
Definition: fileio.c:195
int SCIPfprintf(SCIP_FILE *stream, const char *format,...)
Definition: fileio.c:173
struct SCIP_File SCIP_FILE
Definition: pub_fileio.h:43
int SCIPfseek(SCIP_FILE *stream, long offset, int whence)
Definition: fileio.c:212
int SCIPfeof(SCIP_FILE *stream)
Definition: fileio.c:227
void SCIPrewind(SCIP_FILE *stream)
Definition: fileio.c:217
size_t SCIPfread(void *ptr, size_t size, size_t nmemb, SCIP_FILE *stream)
Definition: fileio.c:163
long SCIPftell(SCIP_FILE *stream)
Definition: fileio.c:222
int SCIPfputc(int c, SCIP_FILE *stream)
Definition: fileio.c:185
int SCIPfclose(SCIP_FILE *fp)
Definition: fileio.c:232
char * SCIPfgets(char *s, int size, SCIP_FILE *stream)
Definition: fileio.c:200
int SCIPfputs(const char *s, SCIP_FILE *stream)
Definition: fileio.c:190
SCIP_FILE * SCIPfdopen(int fildes, const char *mode)
Definition: fileio.c:158
int SCIPfflush(SCIP_FILE *stream)
Definition: fileio.c:207