xref: /haiku/src/add-ons/media/media-add-ons/video_mixer/VideoMixerAddOn.h (revision 220d04022750f40f8bac8f01fa551211e28d04f2)
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 
14 class VideoMixerAddOn : public BMediaAddOn {
15 public:
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 
32 private:
33 	uint32					refCount;
34 };
35 
36 extern "C" _EXPORT BMediaAddOn *make_video_mixer_add_on(image_id you);
37 
38 #endif /* _VIDEO_MIXER_ADD_ON_H */
39