Tiny Plugin is a header only cross platform lightweight C++ library designed to facilitate the development of plugins for digital signal processing experiments and audio projects. This library is particularly useful for making generic plugin based software architecture.
-
Lightweight: Tiny Plugin is designed with a minimalistic approach to keep the overhead low while allowing seamless integration into existing projects.
-
Modular Architecture: The library follows a modular architecture, making it easy to add, remove, or replace plugins without disrupting the core functionality.
-
Extensibility: Developers can easily extend the library by creating custom plugins that adhere to the defined interface, enabling the integration of domain-specific functionality.
To use Tiny Plugin in your project, follow these simple steps:
-
Clone the Tiny Plugin repository:
https://github.com/siddharthdeore/tiny_plugin.git -
Build the library:
cd tiny_plugin mkdir build && cd build cmake .. make make install
Library can be imported in to cmake project using find_package CMake command as following example:
cmake_minimum_required(VERSION 3.0) project(myproject) find_package(tiny_pluin REQUIRED) add_executable(example example.cpp) target_link_libraries(example tiny_pluin::tiny_pluin)example.cpp to load shared library
#include <memory> #include <tiny_plugin/SharedLibrary.h> int main() { SharedLibrary simple("SimplePlugin"); if (simple.is_loaded()) { auto instance = simple.create_instance_sptr<void *>(); } return 0; } Siddharth Deore