Canorus  0.7
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
/home/iurt/rpm/BUILD/canorus-0.7.R1002/src/scripting/swigruby.h
Go to the documentation of this file.
00001 
00008 #ifdef USE_RUBY
00009 #ifndef SWIGRUBY_H_
00010 #define SWIGRUBY_H_
00011 
00012 #include <ruby.h>
00013 
00014 #include <QString>
00015 #include <QList>
00016 
00017 class CASwigRuby {
00018         public:
00019                 enum CAClassType {
00020                         // Qt objects
00021                         String,
00022 
00023                         // Canorus objects
00024                         Document,
00025                         Sheet,
00026                         Context,
00027                         Staff,
00028                         Voice,
00029                         FunctionMarkContext,
00030                         MusElement,
00031                         Playable,
00032                         Note,
00033                         Rest,
00034                         KeySignature,
00035                         TimeSignature,
00036                         Clef,
00037                         Barline,
00038                         FunctionMark,
00039                         LyricsContext,
00040                         Syllable,
00041                         Mark,
00042                         Slur,
00043                         Tuplet,
00044 
00045                         // Console
00046                         PyConsoleInterface
00047                 };
00048 
00049                 static void init();     
00050 
00059                 static VALUE callFunction(QString fileName, QString function, QList<VALUE> args);
00060 
00069                 static VALUE toRubyObject(void *object, CAClassType type);      //defined in scripting/canorusruby.i file
00070 };
00071 
00072 #endif /*SWIGRUBY_H_*/
00073 #endif