30 #ifndef IMPDOMINO_CONFIG_H
31 #define IMPDOMINO_CONFIG_H
33 #include <IMP/base/base_config.h>
39 #ifdef IMPDOMINO_EXPORTS
40 #define IMPDOMINOEXPORT __declspec(dllexport)
42 #define IMPDOMINOEXPORT __declspec(dllimport)
48 #define IMPDOMINOEXPORT __attribute__ ((visibility("default")))
49 #else // GCC_VISIBILITY
50 #define IMPDOMINOEXPORT
51 #endif // GCC_VISIBILITY
54 #if defined(_MSC_VER) && !defined(SWIG)
55 #ifdef IMPDOMINO_EXPORTS
57 #define IMPDOMINO_EXPORT_TEMPLATE(name) template class __declspec(dllexport) name
61 #define IMPDOMINO_EXPORT_TEMPLATE(name) template class __declspec(dllimport) name
66 #define IMPDOMINO_EXPORT_TEMPLATE(name) IMP_REQUIRE_SEMICOLON_NAMESPACE
68 #endif // MSC and SWIG
70 #if !defined(SWIG) && !defined(IMP_DOXYGEN)
72 #define IMPDOMINO_BEGIN_NAMESPACE \
73 IMP_COMPILER_ENABLE_WARNINGS \
74 namespace IMP { namespace domino { \
76 #define IMPDOMINO_END_NAMESPACE \
78 IMP_COMPILER_DISABLE_WARNINGS
80 #define IMPDOMINO_BEGIN_INTERNAL_NAMESPACE \
81 IMPDOMINO_BEGIN_NAMESPACE namespace internal {
84 #define IMPDOMINO_END_INTERNAL_NAMESPACE \
85 } IMPDOMINO_END_NAMESPACE
88 #define IMPDOMINO_BEGIN_NAMESPACE \
89 namespace IMP { namespace domino {
91 #define IMPDOMINO_END_NAMESPACE \
94 #define IMPDOMINO_BEGIN_INTERNAL_NAMESPACE \
95 IMPDOMINO_BEGIN_NAMESPACE namespace internal {
98 #define IMPDOMINO_END_INTERNAL_NAMESPACE \
99 } IMPDOMINO_END_NAMESPACE
103 #define IMP_DOMINO_USE_IMP_ATOM
104 #define IMP_DOMINO_HAS_IMP_ATOM 1
105 #define IMP_DOMINO_USE_IMP_BASE
106 #define IMP_DOMINO_HAS_IMP_BASE 1
107 #define IMP_DOMINO_USE_IMP_CGAL
108 #define IMP_DOMINO_HAS_IMP_CGAL 1
109 #define IMP_DOMINO_USE_IMP_KERNEL
110 #define IMP_DOMINO_HAS_IMP_KERNEL 1
111 #define IMP_DOMINO_USE_IMP_RMF
112 #define IMP_DOMINO_HAS_IMP_RMF 1
113 #define IMP_DOMINO_USE_IMP_SCORE_FUNCTOR
114 #define IMP_DOMINO_HAS_IMP_SCORE_FUNCTOR 1
115 #define IMP_DOMINO_USE_BOOST_FILESYSTEM
116 #define IMP_DOMINO_HAS_BOOST_FILESYSTEM 1
117 #define IMP_DOMINO_USE_BOOST_PROGRAMOPTIONS
118 #define IMP_DOMINO_HAS_BOOST_PROGRAMOPTIONS 1
119 #define IMP_DOMINO_USE_BOOST_RANDOM
120 #define IMP_DOMINO_HAS_BOOST_RANDOM 1
121 #define IMP_DOMINO_USE_BOOST_REGEX
122 #define IMP_DOMINO_HAS_BOOST_REGEX 1
123 #define IMP_DOMINO_USE_BOOST_SYSTEM
124 #define IMP_DOMINO_HAS_BOOST_SYSTEM 1
125 #define IMP_DOMINO_USE_CGAL
126 #define IMP_DOMINO_HAS_CGAL 1
127 #define IMP_DOMINO_USE_HDF5
128 #define IMP_DOMINO_HAS_HDF5 1
129 #define IMP_DOMINO_USE_RMF
130 #define IMP_DOMINO_HAS_RMF 1
134 namespace IMP {
namespace domino {
141 IMPDOMINOEXPORT std::string get_module_version();
146 inline std::string get_module_name() {
147 return "IMP::domino";
153 #if !defined(IMP_DOXYGEN) && !defined(SWIG)
158 namespace IMP {
namespace domino {
159 using ::IMP::base::Showable;
160 using ::IMP::base::operator<<;
161 using ::IMP::base::hash_value;
163 namespace IMP {
namespace domino {
namespace internal {
164 using ::IMP::base::Showable;
165 using ::IMP::base::operator<<;
166 using ::IMP::base::hash_value;
169 #endif // !defined(SWIG) && !defined(IMP_DOXYGEN)
174 namespace IMP {
namespace domino {
187 IMPDOMINOEXPORT std::string
get_data_path(std::string file_name);