Loading...
Searching...
No Matches
gamslib_global.h
1
26#ifndef GAMSLIB_GLOBAL_H
27#define GAMSLIB_GLOBAL_H
28
29#include <memory>
30
31#ifdef _WIN32
32#include <string>
33#include <stdexcept>
34#endif
35
36namespace gams {
37
38typedef void* LogId;
39
40class GAMSCheckpointImpl;
41class GAMSDatabaseImpl;
42class GAMSDatabaseDomainViolationImpl;
43class GAMSDomainImpl;
44class GAMSJobImpl;
45class GAMSModelInstanceImpl;
46class GAMSModelInstanceOptImpl;
47class GAMSModifierImpl;
48class GAMSOptionsImpl;
49class GAMSSymbolImpl;
50class GAMSSymbolDomainViolationImpl;
51class GAMSSymbolRecordImpl;
52class GAMSWorkspaceImpl;
53class GAMSWorkspaceInfoImpl;
54
55}
56
57#ifdef IGNORE_EXPORT
58
59# define LIBSPEC
60# define EXPIMP_TEMPLATE
61
62#else // ! IGNORE_EXPORT
63
64#ifdef _WIN32
65
66#ifdef MAKELIB
67# define LIBSPEC __declspec(dllexport)
68#else
69# define LIBSPEC __declspec(dllimport)
70#endif
71
72#ifdef _MSC_VER
73class LIBSPEC std::runtime_error;
74template class LIBSPEC std::shared_ptr<gams::GAMSCheckpointImpl>;
75template class LIBSPEC std::shared_ptr<gams::GAMSDatabaseImpl>;
76template class LIBSPEC std::shared_ptr<gams::GAMSDatabaseDomainViolationImpl>;
77template class LIBSPEC std::shared_ptr<gams::GAMSDomainImpl>;
78template class LIBSPEC std::shared_ptr<gams::GAMSJobImpl>;
79template class LIBSPEC std::shared_ptr<gams::GAMSModelInstanceImpl>;
80template class LIBSPEC std::shared_ptr<gams::GAMSModelInstanceOptImpl>;
81template class LIBSPEC std::shared_ptr<gams::GAMSModifierImpl>;
82template class LIBSPEC std::shared_ptr<gams::GAMSOptionsImpl>;
83template class LIBSPEC std::shared_ptr<gams::GAMSSymbolImpl>;
84template class LIBSPEC std::shared_ptr<gams::GAMSSymbolDomainViolationImpl>;
85template class LIBSPEC std::shared_ptr<gams::GAMSSymbolRecordImpl>;
86template class LIBSPEC std::shared_ptr<gams::GAMSWorkspaceImpl>;
87template class LIBSPEC std::shared_ptr<gams::GAMSWorkspaceInfoImpl>;
88#endif
89
90#else // ! _WIN32
91
92#ifdef __GNUC__
93#define LIBSPEC __attribute__((__visibility__("default")))
94#else
95#define LIBSPEC
96#endif
97
98#endif // ! _WIN32
99
100#endif // ! IGNORE_EXPORT
101
102#endif // GAMSLIB_GLOBAL_H
Definition gams.h:91