]>
git.saurik.com Git - wxWidgets.git/blob - utils/wxMMedia/mmfile.h
1 // /////////////////////////////////////////////////////////////////////////////
4 // Author: Guilhem Lavaux
7 // Copyright: (C) 1997, 1998, Guilhem Lavaux
8 // License: wxWindows license
9 // /////////////////////////////////////////////////////////////////////////////
10 #ifndef __MMD_file_H__
11 #define __MMD_file_H__
22 #include "wx/string.h"
23 #include "wx/stream.h"
36 wxUint8 minutes
, seconds
;
39 /// Common base class for multimedia file.
44 wxMMediaFile(wxInputStream
& is
, bool preload
, bool seekable
);
46 wxMMediaFile(wxOutputStream
& is
, bool seekable
);
48 wxMMediaFile(const wxString
& fname
);
50 virtual ~wxMMediaFile();
53 wxInputStream
*GetIRawData();
54 wxOutputStream
*GetORawData();
56 wxString
GetCurrentFile();
59 virtual void SetFile(wxInputStream
& is
,
60 bool preload
= FALSE
, bool seekable
= FALSE
);
62 virtual void SetFile(wxOutputStream
& is
, bool seekable
= FALSE
);
64 void SetFile(const wxString
& fname
);
67 wxMMFileError
GetFileError() const { return m_mmerror
; }
69 virtual wxMMtime
GetLength();
71 virtual wxMMtime
GetPosition();
73 virtual bool StartPlay() = 0;
75 virtual void StopPlay() = 0;
78 wxMMFileError m_mmerror
;
80 wxInputStream
*m_istream
, *m_i_temp
;
82 wxOutputStream
*m_ostream
, *m_o_temp
;
84 wxString m_tmpfname
, m_mfname
;
91 void CleanUpPrevious();