srd: Move private symbols to sigrokdecode-internal.h.
[libsigrokdecode.git] / sigrokdecode-internal.h
1 /*
2  * This file is part of the sigrok project.
3  *
4  * Copyright (C) 2011 Uwe Hermann <uwe@hermann-uwe.de>
5  *
6  * This program is free software; you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License as published by
8  * the Free Software Foundation; either version 2 of the License, or
9  * (at your option) any later version.
10  *
11  * This program is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14  * GNU General Public License for more details.
15  *
16  * You should have received a copy of the GNU General Public License
17  * along with this program; if not, write to the Free Software
18  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
19  */
20
21 #ifndef LIBSIGROKDECODE_SIGROKDECODE_INTERNAL_H
22 #define LIBSIGROKDECODE_SIGROKDECODE_INTERNAL_H
23
24 #include "sigrokdecode.h"
25 // #include <stdarg.h>
26 // #include <glib.h>
27
28 /*--- Macros ----------------------------------------------------------------*/
29
30 #ifndef ARRAY_SIZE
31 #define ARRAY_SIZE(a) (sizeof(a) / sizeof((a)[0]))
32 #endif
33
34 #ifndef ARRAY_AND_SIZE
35 #define ARRAY_AND_SIZE(a) (a), ARRAY_SIZE(a)
36 #endif
37
38 /*--- controller.c ----------------------------------------------------------*/
39
40 SRD_PRIV int pd_add(struct srd_decoder_instance *di, int output_type,
41                     char *output_id);
42
43 /*--- exception.c -----------------------------------------------------------*/
44
45 SRD_PRIV void catch_exception(const char *format, ...);
46
47 /*--- log.c -----------------------------------------------------------------*/
48
49 SRD_PRIV int srd_log(int loglevel, const char *format, ...);
50 SRD_PRIV int srd_spew(const char *format, ...);
51 SRD_PRIV int srd_dbg(const char *format, ...);
52 SRD_PRIV int srd_info(const char *format, ...);
53 SRD_PRIV int srd_warn(const char *format, ...);
54 SRD_PRIV int srd_err(const char *format, ...);
55
56 /*--- util.c ----------------------------------------------------------------*/
57
58 SRD_PRIV int py_attr_as_str(PyObject *py_obj, const char *attr, char **outstr);
59 SRD_PRIV int py_dictitem_as_str(PyObject *py_obj, const char *key, char **outstr);
60 SRD_PRIV int py_str_as_str(PyObject *py_str, char **outstr);
61 SRD_PRIV int py_strlist_to_char(PyObject *py_strlist, char ***outstr);
62
63 #endif