1 /* 2 * Copyright 2003, Marcus Overhagen. All rights reserved. 3 * Distributed under the terms of the MIT license. 4 */ 5 #ifndef _MEDIA_PLUGIN_H 6 #define _MEDIA_PLUGIN_H 7 8 #include <SupportDefs.h> 9 10 namespace BPrivate { namespace media { 11 12 class MediaPlugin { 13 public: 14 MediaPlugin(); 15 virtual ~MediaPlugin(); 16 17 private: 18 // needed for plug-in reference count management 19 friend class PluginManager; 20 21 int32 fRefCount; 22 }; 23 24 class Decoder; 25 class Reader; 26 27 } } // namespace BPrivate::media 28 29 using namespace BPrivate::media; 30 31 extern "C" MediaPlugin* instantiate_plugin(); 32 33 #endif // _MEDIA_PLUGIN_H 34