aboutsummaryrefslogtreecommitdiffstats
path: root/libshiboken/bindingmanager.h
diff options
context:
space:
mode:
authorHugo Lima <hugo.lima@openbossa.org>2009-11-11 17:22:56 -0200
committerMarcelo Lira <marcelo.lira@openbossa.org>2009-11-12 09:38:36 -0300
commitb58553f67867dc3e09243a137de560f83758f4a4 (patch)
treefbd8e7b9a1dfb0af95c55ec7af8af7da3982a7c0 /libshiboken/bindingmanager.h
parent627d4cc994ba1c122995b367e2fc63a02d02d04a (diff)
Add visibility policies to libshiboken and for bindings generated by shiboken generator.
As shiboken generator needs minor changes to support inter-module dependencies, these changes about symbol visibility does not support inter-module dependencies, however support it is simple, because we just need to make some symbols visible to other DSO's. Reviewed by Marcelo Lira <marcelo.lira@openbossa.org>
Diffstat (limited to 'libshiboken/bindingmanager.h')
-rw-r--r--libshiboken/bindingmanager.h12
1 files changed, 8 insertions, 4 deletions
diff --git a/libshiboken/bindingmanager.h b/libshiboken/bindingmanager.h
index 306c17f21..3646a77a2 100644
--- a/libshiboken/bindingmanager.h
+++ b/libshiboken/bindingmanager.h
@@ -37,11 +37,12 @@
#include <Python.h>
#include <map>
+#include "shibokenmacros.h"
namespace Shiboken
{
-class BindingManager
+class LIBSHIBOKEN_API BindingManager
{
public:
static BindingManager& instance();
@@ -54,11 +55,14 @@ public:
PyObject* getOverride(const void* cptr, const char* methodName);
private:
- BindingManager() {}
+ ~BindingManager();
+ // disable copy
+ BindingManager();
BindingManager(const BindingManager&);
+ BindingManager& operator=(const BindingManager&);
- typedef std::map<const void*, PyObject*> WrapperMap;
- WrapperMap m_wrapperMapper;
+ struct BindingManagerPrivate;
+ BindingManagerPrivate* m_d;
};
} // namespace Shiboken