ScoreGenerator.hpp
Go to the documentation of this file.00001
00022 #ifndef SCOREGENERATOR_H
00023 #define SCOREGENERATOR_H
00024
00025 #include "Platform.hpp"
00026 #ifdef SWIG
00027 %module scoregen
00028 %include "typemaps.i"
00029 %include "std_vector.i"
00030 %{
00031 #include <vector>
00032 #include "Score.hpp"
00033 #include "public.sdk/source/vst2.x/audioeffectx.h"
00034 %}
00035 %template(VstMidiEventVector) std::vector<VstMidiEvent>;
00036 #else
00037 #include <Python.h>
00038 #include <vector>
00039 #include "Score.hpp"
00040 #include "public.sdk/source/vst2.x/audioeffectx.h"
00041 #endif
00042
00043 class ScoreGeneratorVst;
00044
00049 class SILENCE_PUBLIC ScoreGenerator : public std::vector<VstMidiEvent>
00050 {
00051 protected:
00052 ScoreGeneratorVst *scoreGeneratorVst;
00053 public:
00054 ScoreGenerator();
00055 virtual ~ScoreGenerator();
00056 virtual void setScoreGeneratorVst(PyObject *scoreGeneratorVst);
00057 virtual PyObject *getScoreGeneratorVst();
00058 virtual size_t event(double time, double duration, double status, double channel, double key, double velocity);
00059 virtual void score(csound::Score *score);
00060 virtual void write(char *message);
00061 };
00062
00063 #endif