xref: /haiku/src/add-ons/media/media-add-ons/mixer/MixerAddOn.h (revision a9cf57cff5dfe040f74a96705d98d6711b6b1b50)
1 /*
2  * Copyright 2002 David Shipman,
3  * Copyright 2003-2007 Marcus Overhagen
4  * Copyright 2007 Haiku Inc. All rights reserved.
5  * Distributed under the terms of the MIT License.
6  */
7 #ifndef _AUDIOMIXER_ADDON_H
8 #define _AUDIOMIXER_ADDON_H
9 
10 
11 #include <MediaAddOn.h>
12 
13 
14 class AudioMixerAddon : public BMediaAddOn {
15 public:
16 	virtual 					~AudioMixerAddon();
17 	explicit 					AudioMixerAddon(image_id image);
18 
19 	virtual	status_t			InitCheck(const char** _failureText);
20 	virtual	int32				CountFlavors();
21 	virtual	status_t 			GetFlavorAt(int32 n,
22 									const flavor_info** _info);
23 	virtual	BMediaNode *		InstantiateNodeFor(const flavor_info* info,
24 									BMessage* config, status_t* _error);
25 	virtual	status_t			GetConfigurationFor(BMediaNode* node,
26 									BMessage* toMmessage);
27 
28 	virtual	bool				WantsAutoStart();
29 	virtual	status_t			AutoStart(int index, BMediaNode** _node,
30 									int32* _internalID, bool* _hasMore);
31 
32 private:
33 			media_format*		fFormat;
34 			flavor_info*		fInfo;
35 };
36 
37 #endif	// _AUDIOMIXER_ADDON_H
38