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