1/*
2* Copyright (C) 2009-2010 David McPaul
3*
4* All rights reserved. Distributed under the terms of the MIT License.
5*/
6
7#ifndef _VIDEO_MIXER_ADD_ON_H
8#define _VIDEO_MIXER_ADD_ON_H
9
10
11#include <MediaAddOn.h>
12
13
14class VideoMixerAddOn : public BMediaAddOn {
15public:
16	virtual					~VideoMixerAddOn(void);
17	explicit				VideoMixerAddOn(image_id image);
18
19	virtual	status_t		InitCheck(const char **out_failure_text);
20	virtual	int32			CountFlavors(void);
21	virtual	status_t		GetFlavorAt(int32 n,
22								const flavor_info **out_info);
23	virtual	BMediaNode*		InstantiateNodeFor(const flavor_info *info,
24								BMessage *config, status_t *out_error);
25	virtual	status_t 		GetConfigurationFor(BMediaNode *your_node,
26								BMessage *into_message);
27	virtual	bool 			WantsAutoStart(void);
28	virtual	status_t 		AutoStart(int in_count,	BMediaNode **out_node,
29								int32 *out_internal_id,
30								bool *out_has_more);
31
32private:
33	uint32					refCount;
34};
35
36extern "C" _EXPORT BMediaAddOn *make_video_mixer_add_on(image_id you);
37
38#endif /* _VIDEO_MIXER_ADD_ON_H */
39