PardisoLoader.h 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. /* Copyright (C) 2008 GAMS Development and others
  2. All Rights Reserved.
  3. This code is published under the Eclipse Public License.
  4. $Id: PardisoLoader.h 2204 2013-04-13 13:49:26Z stefan $
  5. Author: Stefan Vigerske
  6. */
  7. #ifndef PARDISOLOADER_H_
  8. #define PARDISOLOADER_H_
  9. #ifdef __cplusplus
  10. extern "C" {
  11. #endif
  12. /** Tries to load a dynamically linked library with Pardiso.
  13. * Return a failure if the library cannot be loaded or not all Pardiso symbols are found.
  14. * @param libname The name under which the Pardiso lib can be found, or NULL to use a default name (libpardiso.SHAREDLIBEXT).
  15. * @param msgbuf A buffer where we can store a failure message. Assumed to be NOT NULL!
  16. * @param msglen Length of the message buffer.
  17. * @return Zero on success, nonzero on failure.
  18. */
  19. int LSL_loadPardisoLib(const char* libname, char* msgbuf, int msglen);
  20. /** Unloads a loaded Pardiso library.
  21. * @return Zero on success, nonzero on failure.
  22. */
  23. int LSL_unloadPardisoLib();
  24. /** Indicates whether a Pardiso library has been successfully loaded.
  25. * @return Zero if not loaded, nonzero if handle is loaded
  26. */
  27. int LSL_isPardisoLoaded();
  28. /** Returns name of the shared library that should contain Pardiso */
  29. char* LSL_PardisoLibraryName();
  30. #ifdef __cplusplus
  31. }
  32. #endif
  33. #endif /*PARADISOLOADER_H_*/