The Winamp Remote Control suite
a remote control client and plugin for Winamp 2.x, 5.x
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
WinampTestServer.h
Go to the documentation of this file.
1 /*
2  * WinampTestServer.h
3  *
4  * Created on: 22 Jul 2012
5  * Author: Patrick
6  */
7 
8 #ifndef WINAMPTESTSERVER_H_
9 #define WINAMPTESTSERVER_H_
10 
11 #include "IWinamp.h"
12 
13 namespace WinampRemote
14 {
15 namespace Server
16 {
17 
22 {
23  string title;
24  string filename;
25 
31  PlaylistItem(string title_, string filename_): title(title_), filename(filename_) {};
32 };
33 
38 {
39 public:
40 
49  virtual ~WinampTestServer();
50 
55  string WinampVersion();
56 
61  void ExecuteCommand(WinampCommand MessageToExecute);
62 
68  void ExecuteStringCommand(const char * CommandString, WinampCommand Command);
69 
76  int QueryInt(WinampCommand Command, int Data);
77 
84  string QueryString(WinampCommand Command, int Data);
85 private:
87  WAPlaybackStatus m_playbackStatus;
89  vector<PlaylistItem> m_playList;
91  int m_playlistPosition;
93  int m_volume;
95  int m_songPosition;
97  bool m_repeat, m_shuffle;
99  byte m_eqdata[13];
101  int m_eqindex;
103  byte m_panning;
105  StopType m_stopType;
107  DWORD m_StartCount;
108 
109  void wrapPlaylistIndex(int increment);
110 
111  void updateStatus();
112 
113  void setPlaying();
114 
115  void setStop(StopType stop);
116 };
117 
118 } /* namespace Server */
119 } /* namespace WinampRemote */
120 #endif /* WINAMPTESTSERVER_H_ */