1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
//! # FFGL plugin
//!
//! This crate provides a set of tools to create FFGL plugins in Rust.
//!
//! FFGL Plugins require a plugMain function to be defined for the host to call.
//! the [plugin_main] macro will generate this function for you.
//!
//! The quickest way to get started is to implement the [handler::simplified::SimpleFFGLInstance] trait on a struct that represents your plugin instance.
//!
//! Then, call ```plugin_main!(SimpleFFGLHandler<YourSimpleFFGLInstanceStruct>)``` to generate the plugMain function.
//!
//! If you want to control the details of plugin instantiation, see [handler].
//!
//! # Building
//!
//! You must compile your library as a cdylib to be loaded by the host.
//! You can do this in your Cargo.toml:
//! ```toml
//! [lib]
//! crate-type = ["cdylib"]
//! ```
//!
//! # Running
//!
//! To actually run your plugin, you'll need to copy it to the FFGL plugin directory.
//! On macos, you will need to additionally package it as a bundle.
//! There are helper scripts in the repository that can assist you with this (./deploy_bundle.sh)
//!
//! ## Support
//!
//! If you have any questions, feel free to send me an email at [dev@edt.nz](mailto:dev@edt.nz)
//!
//! Feel free to get involved in the repo at [github.com/edeetee/ffgl-rs](github.com/edeetee/ffgl-rs)
pub use *;
pub use tracing;