1 // --------------------------------------------------------------------------
5 // Author: Guilhem Lavaux <lavaux@easynet.fr> (C) 1999
7 // License: wxWindows license
8 // --------------------------------------------------------------------------
13 #include "wx/string.h"
14 #include "wx/mmedia/defs.h"
15 #include "wx/mmedia/sndbase.h"
16 #include "wx/mmedia/sndpcm.h"
22 class WXDLLIMPEXP_MMEDIA wxSoundStreamESD
: public wxSoundStream
{
24 wxSoundStreamESD(const wxString
& hostname
= wxT("localhost"));
27 wxSoundStream
& Read(void *buffer
, wxUint32 len
);
28 wxSoundStream
& Write(const void *buffer
, wxUint32 len
);
30 bool SetSoundFormat(const wxSoundFormatBase
& format
);
32 bool StartProduction(int evt
);
33 bool StopProduction();
35 // You should not call this.
36 void WakeUpEvt(int evt
);
38 bool QueueFilled() const { return m_q_filled
; }
40 int m_fd_input
, m_fd_output
; // ESD fds
41 int m_tag_input
, m_tag_output
; // GLIB tags
42 bool m_esd_stop
; // Stream started ?
43 bool m_esd_ok
; // ESD detected
44 wxString m_hostname
; // ESD host
45 bool m_q_filled
; // queue filled
48 void DetectBest(wxSoundFormatPcm
*pcm
);