Define basic functionality for loading shared libraries on-demand.
- Author
- Matt Bisson
- Date
- 19 November, 2015
- Since
- PSystem 2.0
- Version
- PSystem 2.0
- Copyright
- This file is distributed under the University of Illinois Open Source License. See LICENSE.TXT for details.
- Todo:
- Create ImgHelp and DbgHelp subclasses for psystem::shared_library.
- Todo:
- Create an init_psystem function to explicitly load the libraries, and check their required versions.
- Todo:
- Statically declare the imagehelp and dbghelp instances so they are unloaded regardless of whether they are loaded.
- Todo:
- Do we MutEx around load and unload to protect clearing out of m_functions?
- Todo:
- Do we load DLLs lazily instead of explicitly? This would require checking the shared_handle every time a function is called. Similarly, do we load functions lazily? Do determine laziness via preproc flag or something?