Added courtesy tokenising class
authorlilo_booter <lilo_booter@d19143bc-622f-0410-bfdd-b5b2a6649095>
Sun, 31 Oct 2004 15:30:43 +0000 (15:30 +0000)
committerlilo_booter <lilo_booter@d19143bc-622f-0410-bfdd-b5b2a6649095>
Sun, 31 Oct 2004 15:30:43 +0000 (15:30 +0000)
git-svn-id: https://mlt.svn.sourceforge.net/svnroot/mlt/trunk/mlt++@496 d19143bc-622f-0410-bfdd-b5b2a6649095

mlt++/src/Makefile
mlt++/src/Mlt.h
mlt++/src/MltTokeniser.cpp [new file with mode: 0644]
mlt++/src/MltTokeniser.h [new file with mode: 0644]
mlt++/test/server.cpp

index 79601d6..a04ea5a 100644 (file)
@@ -20,6 +20,7 @@ OBJS = MltConsumer.o \
           MltProperties.o \
           MltResponse.o \
           MltService.o \
+          MltTokeniser.o \
           MltTractor.o \
           MltTransition.o
 
index 820354e..0b76913 100644 (file)
@@ -36,6 +36,7 @@
 #include "MltProperties.h"
 #include "MltResponse.h"
 #include "MltService.h"
+#include "MltTokeniser.h"
 #include "MltTractor.h"
 #include "MltTransition.h"
 
diff --git a/mlt++/src/MltTokeniser.cpp b/mlt++/src/MltTokeniser.cpp
new file mode 100644 (file)
index 0000000..ed1287d
--- /dev/null
@@ -0,0 +1,56 @@
+/**
+ * MltTokeniser.cpp - MLT Wrapper
+ * Copyright (C) 2004-2005 Charles Yates
+ * Author: Charles Yates <charles.yates@pandora.be>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published
+ * by the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software Foundation,
+ * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ */
+
+#include <stdlib.h>
+#include "MltTokeniser.h"
+using namespace Mlt;
+
+Tokeniser::Tokeniser( char *text, char *delimiter )
+{
+       tokens = mlt_tokeniser_init( );
+       if ( text != NULL )
+               mlt_tokeniser_parse_new( tokens, text, delimiter );
+}
+
+Tokeniser::~Tokeniser( )
+{
+       mlt_tokeniser_close( tokens );
+}
+
+int Tokeniser::parse( char *text, char *delimiter )
+{
+       return mlt_tokeniser_parse_new( tokens, text, delimiter );
+}
+
+int Tokeniser::count( )
+{
+       return mlt_tokeniser_count( tokens );
+}
+
+char *Tokeniser::get( int index )
+{
+       return mlt_tokeniser_get_string( tokens, index );
+}
+
+char *Tokeniser::input( )
+{
+       return mlt_tokeniser_get_input( tokens );
+}
+
diff --git a/mlt++/src/MltTokeniser.h b/mlt++/src/MltTokeniser.h
new file mode 100644 (file)
index 0000000..f3d127e
--- /dev/null
@@ -0,0 +1,43 @@
+/**
+ * MltTokeniser.h - MLT Wrapper
+ * Copyright (C) 2004-2005 Charles Yates
+ * Author: Charles Yates <charles.yates@pandora.be>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published
+ * by the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software Foundation,
+ * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ */
+
+#ifndef _MLTPP_TOKENISER_H
+#define _MLTPP_TOKENISER_H
+
+#include <framework/mlt.h>
+
+namespace Mlt
+{
+       class Tokeniser
+       {
+               private:
+                       mlt_tokeniser tokens;
+               public:
+                       Tokeniser( char *text = NULL, char *delimiter = " " );
+                       ~Tokeniser( );
+                       int parse( char *text, char *delimiter = " " );
+                       int count( );
+                       char *get( int index );
+                       char *input( );
+       };
+}
+
+#endif
+
index b613302..21a6ce3 100644 (file)
@@ -5,6 +5,8 @@ int main( int argc, char **argv )
 {
        Miracle server( "miracle++" );
        server.start( );
+       server.execute( "uadd sdl" );
+       server.execute( "play u0" );
        server.wait_for_shutdown( );
        return 0;
 }