xref: /haiku/src/apps/cortex/addons/AudioAdapter/AudioAdapterParams.h (revision 3e216965baa8d58a67bf7372e2bfa13d999f5a9d)
1 // AudioAdapterParams.h
2 
3 #ifndef __AudioAdapterParams_H__
4 #define __AudioAdapterParams_H__
5 
6 #include <MediaDefs.h>
7 
8 #include "IParameterSet.h"
9 
10 class _AudioAdapterParams :
11 	public	IParameterSet {
12 public:
13 	enum parameter_id {
14 		// input format restrictions (0='wildcard')
15 		P_INPUT_FORMAT					=101,
16 		P_INPUT_CHANNEL_COUNT,
17 
18 		// output format restrictions (0='wildcard')
19 		P_OUTPUT_FORMAT					=201,
20 		P_OUTPUT_CHANNEL_COUNT
21 	};
22 
23 public:
24 	_AudioAdapterParams() :
25 		inputFormat(media_raw_audio_format::wildcard),
26 		outputFormat(media_raw_audio_format::wildcard) {}
27 
28 	status_t store(
29 		int32										parameterID,
30 		const void*							data,
31 		size_t									size);
32 
33 	status_t retrieve(
34 		int32										parameterID,
35 		void*										data,
36 		size_t*									ioSize);
37 
38 	void populateGroup(
39 		BParameterGroup* 				group);
40 
41 public:											// accessible parameters
42 
43 	media_multi_audio_format	inputFormat;
44 	media_multi_audio_format	outputFormat;
45 };
46 
47 #endif /*__AudioAdapterParams_H__*/
48