]> git.saurik.com Git - wxWidgets.git/blob - utils/wxMMedia2/lib/sndesd.h
Fixed thread sample SEGV on wxGTK
[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, size_t len);
29 wxSoundStream& Write(const void *buffer, size_t 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 protected:
41 int m_fd;
42 int m_tag;
43 bool m_esd_stop;
44 wxString m_hostname;
45
46 private:
47 void DetectBest(wxSoundFormatPcm *pcm);
48 };
49
50 #endif