2 Calf Box, an open source musical instrument.
3 Copyright (C) 2010-2011 Krzysztof Foltman
5 This program is free software: you can redistribute it and/or modify
6 it under the terms of the GNU General Public License as published by
7 the Free Software Foundation, either version 3 of the License, or
8 (at your option) any later version.
10 This program is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 GNU General Public License for more details.
15 You should have received a copy of the GNU General Public License
16 along with this program. If not, see <http://www.gnu.org/licenses/>.
19 #ifndef CBOX_SFZPARSER_H
20 #define CBOX_SFZPARSER_H
24 #define CBOX_SFZPARSER_ERROR cbox_sfz_parser_error_quark()
26 enum CboxSfzParserError
28 CBOX_SFZ_PARSER_ERROR_FAILED
,
29 CBOX_SFZ_PARSER_ERROR_INVALID_CHAR
,
30 CBOX_SFZ_PARSER_ERROR_INVALID_HEADER
,
33 struct sfz_parser_client
36 gboolean (*token
)(struct sfz_parser_client
*client
, const char *token
, GError
**error
);
37 gboolean (*key_value
)(struct sfz_parser_client
*client
, const char *key
, const char *value
);
40 extern gboolean
load_sfz(const char *name
, struct sfz_parser_client
*c
, GError
**error
);
41 extern gboolean
load_sfz_from_string(const char *buf
, int len
, struct sfz_parser_client
*c
, GError
**error
);
43 extern GQuark
cbox_sfz_parser_error_quark(void);