From d0441f605434a89b53735427e4e81182c65debbd Mon Sep 17 00:00:00 2001 From: Noam Rosenthal Date: Mon, 8 Jun 2009 12:27:03 -0700 Subject: scxml for 4.6 --- examples/mediaplayer/main.cpp | 58 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100644 examples/mediaplayer/main.cpp (limited to 'examples/mediaplayer/main.cpp') diff --git a/examples/mediaplayer/main.cpp b/examples/mediaplayer/main.cpp new file mode 100644 index 0000000..1eb7b4b --- /dev/null +++ b/examples/mediaplayer/main.cpp @@ -0,0 +1,58 @@ +#include "qscriptedstatemachine.h" +#include "spview.h" +#include "spmodel.h" +#include "spengine.h" +#include "spharvester.h" +#include "math.h" +#include "time.h" +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + + +int main( int argc, char **argv) +{ + QApplication app(argc, argv); + QString dir; + bool recurse; + if (argc > 1) { + dir = QString(argv[1]); + if (argc > 2) + { + recurse = !strcmp(argv[2],"-recurse"); + } + } else { + printf("Usage: stateplayer directory [-recurse]"); + return 0; + } + + app.setApplicationName("SCXML-mediaplayer"); + + SPView* view = new SPView(NULL); + QtScriptedStateMachine *sm = QtScriptedStateMachine::load(":/mediaplayer.scxml"); + QObject::connect (sm, SIGNAL(finished()), &app, SLOT(quit())); + SPModel* model= new SPModel(NULL); + view->setModel(model); + model->setObjectName("model"); + SPEngine* engine = new SPEngine(sm); + engine->setObjectName("engine"); + SPHarvester* harvester = new SPHarvester (view); + QObject::connect (harvester, SIGNAL(foundTrack(SongData)), model, SLOT(addSong(SongData))); + harvester->harvest(dir,recurse); + view->setObjectName("view"); + sm->registerObject(model); + sm->registerObject(engine); + sm->registerObject(view,"",true); + view->show (); + sm->start (); + return app.exec (); +} -- cgit v1.2.3