00001 #ifndef GUIDOParse_H 00002 #define GUIDOParse_H 00003 00004 /* 00005 GUIDO Library 00006 Copyright (C) 2014 Grame 00007 00008 This Source Code Form is subject to the terms of the Mozilla Public 00009 License, v. 2.0. If a copy of the MPL was not distributed with this 00010 file, You can obtain one at http://mozilla.org/MPL/2.0/. 00011 00012 Grame Research Laboratory, 11, cours de Verdun Gensoul 69002 Lyon - France 00013 research@grame.fr 00014 00015 */ 00016 00017 #include "GUIDOEngine.h" 00018 #include "GUIDOExport.h" 00019 00020 class GuidoParser; 00021 class GuidoStream; 00022 00023 #ifdef __cplusplus 00024 extern "C" { 00025 #endif 00026 00032 //--------------------------------------------------------------------------- 00033 // the new API 00034 //--------------------------------------------------------------------------- 00035 00040 GUIDOAPI(GuidoParser *) GuidoOpenParser (); 00041 00047 GUIDOAPI(GuidoErrCode) GuidoCloseParser (GuidoParser *p); 00048 00054 GUIDOAPI(const char *) GuidoGetStream (GuidoStream * gStream); 00055 00062 GUIDOAPI(ARHandler) GuidoFile2AR (GuidoParser *p, const char* file); 00063 00070 GUIDOAPI(ARHandler) GuidoString2AR (GuidoParser *p, const char* str); 00071 00079 GUIDOAPI(ARHandler) GuidoStream2AR (GuidoParser *p, GuidoStream* stream); 00080 00089 GUIDOAPI(GuidoErrCode) GuidoParserGetErrorCode (GuidoParser *p, int& line, int& col, const char ** msg ); 00090 00098 GUIDOAPI(GuidoStream *) GuidoOpenStream (); 00099 00105 GUIDOAPI(GuidoErrCode) GuidoCloseStream (GuidoStream *s); 00106 00129 GUIDOAPI(GuidoErrCode) GuidoWriteStream (GuidoStream *s, const char* str); 00130 00137 GUIDOAPI(GuidoErrCode) GuidoResetStream (GuidoStream *s); 00138 00142 #ifdef __cplusplus 00143 } 00144 #endif 00145 00146 #endif /* GUIDOParse_H */