1 /* 2 * Copyright 2012, Gerasim Troeglazov (3dEyes**), 3dEyes@gmail.com. 3 * All rights reserved. 4 * Distributed under the terms of the MIT License. 5 */ 6 7 #ifndef __VST_ADDON_H__ 8 #define __VST_ADDON_H__ 9 10 #include <MediaAddOn.h> 11 #include "VSTHost.h" 12 13 class VSTAddOn : public BMediaAddOn { 14 public: 15 virtual ~VSTAddOn(); 16 explicit VSTAddOn(image_id image); 17 virtual status_t InitCheck(const char** text); 18 virtual int32 CountFlavors(); 19 virtual status_t GetFlavorAt(int32 idx, const flavor_info** info); 20 virtual BMediaNode* InstantiateNodeFor(const flavor_info* info, BMessage* config, 21 status_t* err); 22 virtual status_t GetConfigurationFor(BMediaNode* node, BMessage* message); 23 virtual bool WantsAutoStart(); 24 virtual status_t AutoStart(int count, BMediaNode** node, int32* id, bool* more); 25 private: 26 int ScanPluginsFolders(const char* path, bool make_dir = false); 27 BList fPluginsList; 28 }; 29 30 #endif //__VST_ADDON_H__ 31