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 #include <MediaAddOn.h> 11 12 class AudioMixerAddon : public BMediaAddOn { 13 public: 14 virtual ~AudioMixerAddon(); 15 explicit AudioMixerAddon(image_id image); 16 17 virtual status_t InitCheck(const char** out_failure_text); 18 virtual int32 CountFlavors(); 19 virtual status_t GetFlavorAt(int32 n, 20 const flavor_info ** out_info); 21 virtual BMediaNode * InstantiateNodeFor( 22 const flavor_info *info, 23 BMessage *config, 24 status_t *out_error); 25 virtual status_t GetConfigurationFor( 26 BMediaNode *your_node, 27 BMessage *into_message); 28 29 virtual bool WantsAutoStart(); 30 virtual status_t AutoStart(int in_index, 31 BMediaNode **out_node, 32 int32 *out_internal_id, 33 bool *out_has_more); 34 35 private: 36 media_format *fFormat; 37 flavor_info *fInfo; 38 }; 39 #endif 40