e8482f24cf
Added contrib configure Made wxSocket sample compile Made OGL compile Modified main configure to pass some more parameter to children Changed the wxProcess doc according to the modification Still some win makefiles to come git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@6461 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
66 lines
1.7 KiB
C++
66 lines
1.7 KiB
C++
// --------------------------------------------------------------------------
|
|
// Name: sndwin.h
|
|
// Purpose:
|
|
// Date: 08/11/1999
|
|
// Author: Guilhem Lavaux <lavaux@easynet.fr> (C) 1999
|
|
// CVSID: $Id$
|
|
// --------------------------------------------------------------------------
|
|
#ifndef _WX_SNDWIN_H
|
|
#define _WX_SNDWIN_H
|
|
|
|
#include "wx/defs.h"
|
|
#include "wx/mmedia/sndbase.h"
|
|
|
|
typedef struct _wxSoundInternal wxSoundInternal;
|
|
typedef struct _wxSoundInfoHeader wxSoundInfoHeader;
|
|
|
|
class wxSoundInternal;
|
|
class WXDLLEXPORT wxSoundStreamWin : public wxSoundStream {
|
|
public:
|
|
wxSoundStreamWin();
|
|
~wxSoundStreamWin();
|
|
|
|
wxSoundStream& Write(const void *buffer, wxUint32 len);
|
|
wxSoundStream& Read(void *buffer, wxUint32 len);
|
|
|
|
bool SetSoundFormat(wxSoundFormatBase& base);
|
|
|
|
bool StartProduction(int evt);
|
|
bool StopProduction();
|
|
|
|
bool QueueFilled() const;
|
|
|
|
// Internal but defined as public
|
|
void NotifyDoneBuffer(wxUint32 dev_handle, int flag);
|
|
|
|
wxUint32 GetBestSize() const { return 4096; }
|
|
|
|
protected:
|
|
wxSoundInternal *m_internal;
|
|
wxUint32 m_current_frag_in, m_current_frag_out;
|
|
wxUint32 m_input_frag_in, m_output_frag_out;
|
|
wxSoundInfoHeader **m_headers_play, **m_headers_rec;
|
|
|
|
bool m_production_started, m_queue_filled, m_waiting_for;
|
|
|
|
protected:
|
|
void CreateSndWindow();
|
|
void DestroySndWindow();
|
|
bool OpenDevice(int mode);
|
|
void CloseDevice();
|
|
|
|
wxSoundInfoHeader *AllocHeader(int mode);
|
|
void FreeHeader(wxSoundInfoHeader *header, int mode);
|
|
bool AllocHeaders(int mode);
|
|
void FreeHeaders(int mode);
|
|
|
|
void WaitFor(wxSoundInfoHeader *info);
|
|
bool AddToQueue(wxSoundInfoHeader *info);
|
|
void ClearHeader(wxSoundInfoHeader *info);
|
|
|
|
wxSoundInfoHeader *NextFragmentOutput();
|
|
wxSoundInfoHeader *NextFragmentInput();
|
|
};
|
|
|
|
#endif
|