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