Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Registering new types dynamically (via Plugins) #89

Open
hydexon opened this issue Nov 27, 2017 · 5 comments
Open

Registering new types dynamically (via Plugins) #89

hydexon opened this issue Nov 27, 2017 · 5 comments

Comments

@hydexon
Copy link

hydexon commented Nov 27, 2017

There's an way or what to modify from Ponder able to register new types via Plugins or dynamic/static plugins? where the core application doesn't have access to the headers of the new types?

@billyquith
Copy link
Owner

able to register new types via Plugins or dynamic/static plugins? where the core application doesn't have access to the headers of the new types?

The plugins containing the metadata must have seen the headers at some point or they couldn't generate the metadata. Once the metadata is compiled into the plugin, yes, it can be loaded without needing the headers.

You can also unregister the types when the plugin is unloaded. See #21.

@hydexon
Copy link
Author

hydexon commented Dec 5, 2017

I don't understand very well, both the host application and the plugin itself links to Ponder, the plugin new types has their respective headers to generate the needed metadata required by Ponder, but the host application doesn't know the new exported types in the C++ side, but should be known by the Host's Ponder API side when i load the DLL explicitly to the memory (via dlopen or LoadLibrary APIs).

@billyquith
Copy link
Owner

Needs docs and example.

@billyquith billyquith added this to the 3.0 - Big refactor milestone Apr 29, 2018
@billyquith billyquith added this to To do in Docs V3 via automation Apr 29, 2018
@hydexon
Copy link
Author

hydexon commented May 21, 2018

Just a little remark, make your users implement their own library loading strategies instead of Ponder do it so.

Some projects have their own way to load their libraries, and maybe an already integrated plugin framework which is used for unrelated or specialized classes.

@billyquith
Copy link
Owner

Interesting idea.

@billyquith billyquith self-assigned this May 21, 2018
@billyquith billyquith added this to To do in Ponder V3 via automation May 21, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Docs V3
  
To do
Ponder V3
  
To do
Development

No branches or pull requests

2 participants