UniRec 3.3.2
Loading...
Searching...
No Matches
unirec2csv.h
Go to the documentation of this file.
1
7/*
8 * Copyright (C) 2019 CESNET
9 *
10 * SPDX-License-Identifier: BSD-3-Clause
11 *
12 */
13
14#ifndef _UNIREC2CSV_H_
15#define _UNIREC2CSV_H_
16
17#include "unirec.h"
18
19#ifdef __cplusplus
20extern "C" {
21#endif
22
47typedef struct urcsv_s {
52
56 char *buffer;
57
61 char *curpos;
62
66 uint32_t buffer_size;
67
71 uint32_t free_space;
72
77} urcsv_t;
78
88urcsv_t *urcsv_init(ur_template_t *tmplt, char delimiter);
89
96void urcsv_free(urcsv_t **urcsv);
97
105char *urcsv_header(urcsv_t *urcsv);
106
115char *urcsv_record(urcsv_t *urcsv, const void *rec);
116
128int urcsv_field(char *dst, uint32_t size, const void *rec, ur_field_type_t id, ur_template_t *tmplt);
129
132/* unirec2csv */
133
134#ifdef __cplusplus
135} // extern "C"
136#endif
137
138#endif
139
uint32_t buffer_size
Definition unirec2csv.h:66
uint32_t free_space
Definition unirec2csv.h:71
char delimiter
Definition unirec2csv.h:76
char * curpos
Definition unirec2csv.h:61
ur_template_t * tmplt
Definition unirec2csv.h:51
char * buffer
Definition unirec2csv.h:56
char * urcsv_record(urcsv_t *urcsv, const void *rec)
Definition unirec2csv.c:210
void urcsv_free(urcsv_t **urcsv)
Definition unirec2csv.c:28
char * urcsv_header(urcsv_t *urcsv)
Definition unirec2csv.c:37
urcsv_t * urcsv_init(ur_template_t *tmplt, char delimiter)
Definition unirec2csv.c:7
int urcsv_field(char *dst, uint32_t size, const void *rec, ur_field_type_t id, ur_template_t *tmplt)
Definition unirec2csv.c:130
Definition of UniRec structures and functions.
ur_field_type_t
Definition unirec.h:95
UniRec template. It contains a table mapping a field to its position in an UniRec record.
Definition unirec.h:191