1 /*****************************************************************************
2 * This file is part of gfxprim library. *
4 * Gfxprim is free software; you can redistribute it and/or *
5 * modify it under the terms of the GNU Lesser General Public *
6 * License as published by the Free Software Foundation; either *
7 * version 2.1 of the License, or (at your option) any later version. *
9 * Gfxprim is distributed in the hope that it will be useful, *
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of *
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU *
12 * Lesser General Public License for more details. *
14 * You should have received a copy of the GNU Lesser General Public *
15 * License along with gfxprim; if not, write to the Free Software *
16 * Foundation, Inc., 51 Franklin Street, Fifth Floor, *
17 * Boston, MA 02110-1301 USA *
19 * Copyright (C) 2009-2010 Jiri "BlueBear" Dluhos *
20 * <jiri.bluebear.dluhos@gmail.com> *
22 * Copyright (C) 2009-2010 Cyril Hrubis <metan@ucw.cz> *
24 *****************************************************************************/
28 Common bytes to ascci and ascii to bytes functions.
32 #ifndef GP_PXM_COMMON_H
33 #define GP_PXM_COMMON_H
36 #include "core/GP_Core.h"
39 * Save context to ascii file.
41 * The pixel type is not checked here as these are internal funcitons.
43 GP_RetCode
GP_PXMSave1bpp(FILE *f
, GP_Context
*context
);
44 GP_RetCode
GP_PXMSave2bpp(FILE *f
, GP_Context
*context
);
45 GP_RetCode
GP_PXMSave4bpp(FILE *f
, GP_Context
*context
);
46 GP_RetCode
GP_PXMSave8bpp(FILE *f
, GP_Context
*context
);
49 * Load context from ascii file.
51 GP_RetCode
GP_PXMLoad1bpp(FILE *f
, GP_Context
*context
);
52 GP_RetCode
GP_PXMLoad2bpp(FILE *f
, GP_Context
*context
);
53 GP_RetCode
GP_PXMLoad4bpp(FILE *f
, GP_Context
*context
);
54 GP_RetCode
GP_PXMLoad8bpp(FILE *f
, GP_Context
*context
);
57 * Loads image header, returns pointer to FILE* on success, fills image
58 * metadata into arguments.
60 FILE *GP_ReadHeaderPNM(const char *src_path
, char *fmt
,
61 uint32_t *w
, uint32_t *h
, uint32_t *depth
);
63 FILE *GP_WriteHeaderPNM(const char *dst_path
, char *fmt
,
64 uint32_t w
, uint32_t h
, uint32_t depth
);
67 #endif /* GP_PXM_COMMON_H */