/* Copyright (C) 2016-2020, Dirk Krause SPDX-License-Identifier: BSD-3-Clause */ /* WARNING: This file was generated by the dkct program (see http://dktools.sourceforge.net/ for details). Changes you make here will be lost if dkct is run again! You should modify the original source and run dkct on it. Original source: dk4serf.ctr */ #ifndef DK4SERF_H_INCLUDED /** Avoid multiple inclusions. */ #define DK4SERF_H_INCLUDED 1 #line 9 "dk4serf.ctr" /** @file dk4serf.h Serialize data to binary file. */ #ifndef DK4CONF_H_INCLUDED #if DK4_BUILDING_DKTOOLS4 #include "dk4conf.h" #else #include #endif #endif #ifndef DK4TYPES_H_INCLUDED #if DK4_BUILDING_DKTOOLS4 #include "dk4types.h" #else #include #endif #endif #ifndef DK4ERROR_H_INCLUDED #if DK4_BUILDING_DKTOOLS4 #include "dk4error.h" #else #include #endif #endif #if DK4_HAVE_STDLIB_H #ifndef DK4_STDLIB_H_INCLUDED #include #define DK4_STDLIB_H_INCLUDED 1 #endif #endif #if DK4_HAVE_SYS_TYPES_H #ifndef DK4_SYS_TYPES_H_INCLUDED #include #define DK4_SYS_TYPES_H_INCLUDED 1 #endif #endif #if DK4_HAVE_STDINT_H #ifndef DK4_STDINT_H_INCLUDED #include #define DK4_STDINT_H_INCLUDED 1 #endif #endif #include #ifdef __cplusplus extern "C" { #endif /** Serialize 16 bit unsigned int to file. @param fipo Output file. @param u Number to write. @param erp Error report, may be NULL. @return 1 on success, 0 on error. Error codes: - DK4_E_INVALID_ARGUMENTS
if fipo is NULL or u is out of range, - DK4_E_WRITE_FAILED
if fwrite() failed. */ int dk4serialize_file_uint16_t(FILE *fipo, uint16_t u, dk4_er_t *erp); /** Serialize 16 bit signed int to file. @param fipo Output file. @param i Number to write. @param erp Error report, may be NULL. @return 1 on success, 0 on error. Error codes: - DK4_E_INVALID_ARGUMENTS
if fipo is NULL or i is out of range, - DK4_E_WRITE_FAILED
if fwrite() failed. */ int dk4serialize_file_int16_t(FILE *fipo, int16_t i, dk4_er_t *erp); /** Serialize 32 bit unsigned int to file. @param fipo Output file. @param u Number to write. @param erp Error report, may be NULL. @return 1 on success, 0 on error. Error codes: - DK4_E_INVALID_ARGUMENTS
if fipo is NULL or u is out of range, - DK4_E_WRITE_FAILED
if fwrite() failed. */ int dk4serialize_file_uint32_t(FILE *fipo, uint32_t u, dk4_er_t *erp); /** Serialize 32 bit signed int to file. @param fipo Output file. @param i Number to write. @param erp Error report, may be NULL. @return 1 on success, 0 on error. Error codes: - DK4_E_INVALID_ARGUMENTS
if fipo is NULL or i is out of range, - DK4_E_WRITE_FAILED
if fwrite() failed. */ int dk4serialize_file_int32_t(FILE *fipo, int32_t i, dk4_er_t *erp); /** Serialize UTF-8 encoded string to file. @param fipo Output file. @param str String to write. @param erp Error report, may be NULL. @return 1 on success, 0 on error. */ int dk4serialize_file_utf8_string(FILE *fipo, const char *str, dk4_er_t *erp); /** Serialize dkChar string to file (convert to UTF-8). @param fipo Output file. @param str String to write. @param de Encoding for dkChar strings. @param erp Error report, may be NULL. @return 1 on success, 0 on error. */ int dk4serialize_file_dk_string(FILE *fipo,const dkChar *str,int de,dk4_er_t *erp); /** Serialize double value to file. The value is converted to string and saved as string, so you may loose information. @param fipo Output file. @param d Value to write. @param erp Error report, may be NULL. @return 1 on success, 0 on error. */ int dk4serialize_file_double(FILE *fipo, double d, dk4_er_t *erp); #ifdef __cplusplus } #endif #endif