diff options
author | mescalinum <mescalinum@users.sourceforge.net> | 2009-09-25 17:19:25 +0000 |
---|---|---|
committer | mescalinum <mescalinum@users.sourceforge.net> | 2009-09-25 17:19:25 +0000 |
commit | f8ac52e520aa5e20a256a3fd9a649b461f3afeef (patch) | |
tree | 25198f6081892058a8ba46b838bfa1f14076c565 /composer/Song.hpp | |
parent | 2815cb8c2ff0edd77efcc071b65fed1e60c1c6bc (diff) |
rewrite in C++
svn path=/trunk/externals/ffext/; revision=12451
Diffstat (limited to 'composer/Song.hpp')
-rw-r--r-- | composer/Song.hpp | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/composer/Song.hpp b/composer/Song.hpp new file mode 100644 index 0000000..ead7285 --- /dev/null +++ b/composer/Song.hpp @@ -0,0 +1,31 @@ +#ifndef COMPOSER_SONG_H_INCLUDED +#define COMPOSER_SONG_H_INCLUDED + +#include <map> +#include <string> + +#include <m_pd.h> + +#include "Track.hpp" + +using std::map; +using std::string; + +class Song +{ +private: + static map<string,Song *> byname; +public: + static Song *byName(string songName); +private: + string name; + map<string,Track *> tracks; +protected: + Song(string songName); +public: + void print(); + Track *getTrackByName(string trackName); + inline const string &getName() {return name;} +}; + +#endif // COMPOSER_SONG_H_INCLUDED |