source: trunk/contrib/cppunit-1.12.2/include/cppunit/plugin/DynamicLibraryManagerException.h @ 876

Last change on this file since 876 was 876, checked in by sam, 9 years ago

contrib: add a precompiled Win32 version of CppUnit and update build system
accordingly.

File size: 1.1 KB
Line 
1#ifndef CPPUNIT_PLUGIN_DYNAMICLIBRARYMANAGEREXCEPTION_H
2#define CPPUNIT_PLUGIN_DYNAMICLIBRARYMANAGEREXCEPTION_H
3
4#include <cppunit/Portability.h>
5
6#if !defined(CPPUNIT_NO_TESTPLUGIN)
7#include <stdexcept>
8#include <string>
9
10
11CPPUNIT_NS_BEGIN
12
13
14/*! \brief Exception thrown by DynamicLibraryManager when a failure occurs.
15 *
16 * Use getCause() to know what function caused the failure.
17 *
18 */
19class DynamicLibraryManagerException : public std::runtime_error
20{
21public:
22  enum Cause
23  {
24    /// Failed to load the dynamic library
25    loadingFailed =0,
26    /// Symbol not found in the dynamic library
27    symbolNotFound
28  };
29
30  /// Failed to load the dynamic library or Symbol not found in the dynamic library.
31  DynamicLibraryManagerException( const std::string &libraryName,
32                                  const std::string &errorDetail,
33                                  Cause cause );
34
35  ~DynamicLibraryManagerException() throw()
36  {
37  }
38
39  Cause getCause() const;
40
41  const char *what() const throw();
42
43private:
44  std::string m_message;
45  Cause m_cause;
46};
47
48
49CPPUNIT_NS_END
50
51#endif // !defined(CPPUNIT_NO_TESTPLUGIN)
52
53#endif  // CPPUNIT_PLUGIN_DYNAMICLIBRARYMANAGEREXCEPTION_H
Note: See TracBrowser for help on using the repository browser.