diff options
Diffstat (limited to 'Src/playlist/PlaylistsXML.h')
-rw-r--r-- | Src/playlist/PlaylistsXML.h | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/Src/playlist/PlaylistsXML.h b/Src/playlist/PlaylistsXML.h new file mode 100644 index 00000000..8207c653 --- /dev/null +++ b/Src/playlist/PlaylistsXML.h @@ -0,0 +1,38 @@ +#ifndef NULLSOFT_AGAVE_PLAYLISTSXML_H +#define NULLSOFT_AGAVE_PLAYLISTSXML_H + +#include "../xml/obj_xml.h" +#include "../xml/ifc_xmlreadercallback.h" +#include <api/service/waServiceFactory.h> +class Playlists; + +enum +{ + PLAYLISTSXML_SUCCESS = 0, + PLAYLISTSXML_FAILURE = 1, + PLAYLISTSXML_NO_PARSER = 2, + PLAYLISTSXML_NO_FILE = 3, + PLAYLISTSXML_XML_PARSE_ERROR = 4, +}; + +class PlaylistsXML : public ifc_xmlreadercallback +{ +public: + PlaylistsXML( Playlists *_playlists ); + ~PlaylistsXML(); + + int LoadFile( const wchar_t *filename ); + +private: + RECVS_DISPATCH; + /* XML callbacks */ + void StartTag( const wchar_t *xmlpath, const wchar_t *xmltag, ifc_xmlreaderparams *params ); + + obj_xml *parser = 0; + waServiceFactory *parserFactory = 0; + Playlists *playlists = 0; + + wchar_t rootPath[ MAX_PATH ]; +}; + +#endif
\ No newline at end of file |