Skip to content
Snippets Groups Projects
LibraryWrapper.cpp 1.23 KiB
Newer Older
#include "MantidKernel/DllOpen.h"
#include "MantidKernel/LibraryWrapper.h"

namespace Mantid
{
namespace Kernel
{

/// Constructor
LibraryWrapper::LibraryWrapper() :
{}

/// Destructor
LibraryWrapper::~LibraryWrapper()
{
  //Close lib
  if (module)
  {
    DllOpen::CloseDll(module);
    module = 0;
  }
 *  @param libName :: The name of the file to open (not including the lib/so/dll).
 *  @return True if DLL is opened or already open.
 */
bool LibraryWrapper::OpenLibrary(const std::string& libName)
{
  if (!module)
  {
    //Load dynamically loaded library
    module = DllOpen::OpenDll(libName);
    
    if (!module)
    {
      return false;
    }
  }
 *  @param libName :: The name of the file to open (not including the lib/so/dll).
 *  @param filePath :: The filepath to the directory where the library is.
 *  @return True if DLL is opened or already open
 */
bool LibraryWrapper::OpenLibrary(const std::string& libName,
  if (!module)
  {
    //Load dynamically loaded library
    module = DllOpen::OpenDll(libName, filePath);
    if (!module)
    {
      return false;
    }
  }
} // namespace Kernel
} // namespace Mantid