00001 #ifndef musicH 00002 #define musicH 00003 00008 #include <vector> 00009 #include <map> 00010 00011 #include "global.h" 00012 #include "ascstring.h" 00013 #include "textfile_evaluation.h" 00014 #include "itemrepository.h" 00015 00016 00019 class MusicPlayList { 00020 ASCString name; 00021 typedef vector<ASCString> TrackList; 00022 00024 TrackList fileNameList; 00025 00027 TrackList fileGroups; 00028 00029 TrackList::iterator iter; 00030 public: 00031 const ASCString& getName ( ) { return name; }; 00032 00033 ASCString filename,location; 00034 00036 void runTextIO ( PropertyContainer& pc ); 00037 00039 void reset(); 00040 00042 const ASCString& getNextTrack(); 00043 00044 void read ( tnstream& stream ); 00045 void write ( tnstream& stream ) const; 00046 00047 ASCString getDiagnosticText(); 00048 }; 00049 00050 class PlayListLoader : public TextFileDataLoader { 00051 public: 00052 virtual void readTextFiles(PropertyReadingContainer& prc, const ASCString& fileName, const ASCString& location); 00053 virtual void read ( tnstream& stream ); 00054 virtual void write ( tnstream& stream ); 00055 virtual ASCString getTypeName() { return "playlist"; }; 00056 }; 00057 00059 extern void startMusic (); 00060 00061 00062 00063 00065 extern void selectPlayList( ); 00066 00067 #endif
1.4.2