diff options
Diffstat (limited to 'src/engine/machina')
-rw-r--r-- | src/engine/machina/Loader.hpp | 4 | ||||
-rw-r--r-- | src/engine/machina/Machine.hpp | 17 | ||||
-rw-r--r-- | src/engine/machina/Makefile.am | 23 |
3 files changed, 25 insertions, 19 deletions
diff --git a/src/engine/machina/Loader.hpp b/src/engine/machina/Loader.hpp index 914df24..4a3c123 100644 --- a/src/engine/machina/Loader.hpp +++ b/src/engine/machina/Loader.hpp @@ -21,9 +21,9 @@ #include <glibmm/ustring.h> #include <raul/SharedPtr.hpp> #include <raul/Path.hpp> -#include <raul/RDFWorld.hpp> +#include <redlandmm/World.hpp> -using Raul::Namespaces; +using Redland::Namespaces; namespace Machina { diff --git a/src/engine/machina/Machine.hpp b/src/engine/machina/Machine.hpp index c63537d..76ccef1 100644 --- a/src/engine/machina/Machine.hpp +++ b/src/engine/machina/Machine.hpp @@ -21,19 +21,28 @@ #include <boost/utility.hpp> #include <raul/SharedPtr.hpp> #include <raul/List.hpp> -#include <raul/RDFModel.hpp> #include <raul/TimeSlice.hpp> +#include <redlandmm/Model.hpp> #include "types.hpp" #include "LearnRequest.hpp" #include "Node.hpp" namespace Machina { +class Gene; + +/** A (Finite State) Machine. + * + * In evolutionary terms, this is the phenotype of Gene. + */ class Machine : public Raul::Stateful, public boost::noncopyable { public: Machine(); + Machine(SharedPtr<Gene> genotype); ~Machine(); + + SharedPtr<Gene> genotype(); // Main context void activate() { _is_activated = true; } @@ -74,13 +83,13 @@ private: static const size_t MAX_ACTIVE_NODES = 128; SharedPtr<Node> _active_nodes[MAX_ACTIVE_NODES]; - WeakPtr<Raul::MIDISink> _sink; bool _is_activated; bool _is_finished; Raul::BeatTime _time; - Nodes _nodes; - + SharedPtr<Gene> _genotype; SharedPtr<LearnRequest> _pending_learn; + WeakPtr<Raul::MIDISink> _sink; + Nodes _nodes; }; diff --git a/src/engine/machina/Makefile.am b/src/engine/machina/Makefile.am index 4a97f3e..e7c5a56 100644 --- a/src/engine/machina/Makefile.am +++ b/src/engine/machina/Makefile.am @@ -1,22 +1,19 @@ libmachinaincludedir = $(includedir)/machina libmachinainclude_HEADERS = \ - types.hpp \ Action.hpp \ - Node.hpp \ - Edge.hpp \ - Machine.hpp \ - Loader.hpp \ - MidiAction.hpp \ ActionFactory.hpp \ Driver.hpp \ - LearnRequest.hpp \ + Edge.hpp \ Engine.hpp \ - Recorder.hpp \ + Gene.hpp \ + JackDriver.hpp \ + LearnRequest.hpp \ + Loader.hpp \ + Machine.hpp \ MachineBuilder.hpp \ + MidiAction.hpp \ + Node.hpp \ + Recorder.hpp \ SMFDriver.hpp \ - JackDriver.hpp - -if WITH_JACK - JackDriver.hpp -endif + types.hpp |