]> git.saurik.com Git - wxWidgets.git/blob - utils/wxMMedia2/lib/sndesd.h
added support for several new events in wxCalendarCtrl: clicking on week
[wxWidgets.git] / utils / wxMMedia2 / lib / sndesd.h
1 // --------------------------------------------------------------------------
2 // Name: sndesd.h
3 // Purpose:
4 // Date: 08/11/1999
5 // Author: Guilhem Lavaux <lavaux@easynet.fr> (C) 1999
6 // CVSID: $Id$
7 // --------------------------------------------------------------------------
8 #ifndef _WX_SNDESD_H
9 #define _WX_SNDESD_H
10
11 #ifdef __GNUG__
12 #pragma interface "sndesd.h"
13 #endif
14
15 #include <wx/string.h>
16 #include "sndbase.h"
17 #include "sndpcm.h"
18
19 //
20 // ESD output class
21 //
22
23 class wxSoundStreamESD : public wxSoundStream {
24 public:
25 wxSoundStreamESD(const wxString& hostname = _T("localhost"));
26 ~wxSoundStreamESD();
27
28 wxSoundStream& Read(void *buffer, wxUint32 len);
29 wxSoundStream& Write(const void *buffer, wxUint32 len);
30
31 bool SetSoundFormat(const wxSoundFormatBase& format);
32
33 bool StartProduction(int evt);
34 bool StopProduction();
35
36 void SetDuplexMode(bool duplex) {}
37
38 // You should not call this.
39 void WakeUpEvt(int evt);
40
41 bool QueueFilled() const { return m_q_filled; }
42 protected:
43 int m_fd;
44 int m_tag;
45 bool m_esd_stop;
46 wxString m_hostname;
47 bool m_q_filled;
48
49 private:
50 void DetectBest(wxSoundFormatPcm *pcm);
51 };
52
53 #endif