3 // Copyright 1999, Be Incorporated. All Rights Reserved.
4 // This file may be used under the terms of the Be Sample Code License.
6 #if !defined(_MEDIA_RECORDER_H)
7 #define _MEDIA_RECORDER_H
11 #include <MediaNode.h>
15 class BMediaRecorderNode
;
18 class BMediaRecorder
{
21 /* Should static enumerator helpers go here? */
26 virtual ~BMediaRecorder();
29 status_t
SetBufferHook(
34 const media_header
& header
),
40 virtual void BufferReceived(
43 const media_header
& header
);
46 const media_format
& format
,
49 const dormant_node_info
& info
,
50 const media_format
* format
= 0,
53 const media_node
& node
,
54 const media_output
* use_output
= 0,
55 const media_format
* format
= 0,
57 status_t
Disconnect();
65 const media_node
& Node();
66 const media_output
&Input();
67 const media_input
& Output();
68 const media_format
&Format();
75 // unimplemented constructors
77 BMediaRecorder(const BMediaRecorder
&);
78 BMediaRecorder
& operator=(const BMediaRecorder
&);
80 friend class BPrivate::BMediaRecorderNode
;
83 BPrivate::BMediaRecorderNode
*_mNode
;
88 const media_header
& header
);
89 void * _mBufferCookie
;
90 media_node _mInputNode
;
92 media_node _mOutputNode
;
96 BTimeSource
* _mTimeSource
;
98 status_t
giga_connect(
99 const media_format
* format
,
101 const dormant_node_info
* dormant
,
102 const media_node
* node
,
103 const media_output
* output
);
107 #endif // _MEDIA_RECORDER_H