2#ifndef CYCLUS_SRC_WINDOWS_HELPER_FUNCTIONS_H_
3#define CYCLUS_SRC_WINDOWS_HELPER_FUNCTIONS_H_
13void DynamicModule::OpenLibrary() {
14 module_library_ = LoadLibrary(path_.c_str());
16 if (!module_library_) {
17 std::string err_msg =
"Unable to load agent shared object file: ";
18 err_msg +=
". Error code is: ";
19 err_msg += GetLastError();
20 throw IOError(err_msg);
25void DynamicModule::SetConstructor() {
26 ctor_ = (
AgentCtor*)GetProcAddress(module_library_, ctor_name_.c_str());
30 std::string agent = ctor_name_;
32 ss <<
"Could not find agent " << agent <<
" in module library "
33 << path_.c_str() <<
" (" << GetLastError() <<
").";
34 throw IOError(ss.str());
39void DynamicModule::CloseLibrary() {
40 if (module_library_) {
41 FreeLibrary(module_library_);
taken directly from OsiSolverInterface.cpp on 2/17/14 from https://projects.coin-or....
Agent * AgentCtor(Context *)