summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Ivy.cxx15
-rw-r--r--Ivycpp.h4
2 files changed, 12 insertions, 7 deletions
diff --git a/Ivy.cxx b/Ivy.cxx
index f144c38..9aa420e 100644
--- a/Ivy.cxx
+++ b/Ivy.cxx
@@ -39,16 +39,21 @@ Ivy::Ivy()
#ifndef USE_GLFW
Ivy::Ivy(const char* name, const char * ready, IvyApplicationCallback *callback,
- bool argaFrc)
+ bool argaFrc, IvyC::IvyDieCallback _dieCB)
{
- IvyC::IvyInit( name, ready, ApplicationCb, callback, DieCb, callback );
+ IvyC::IvyInit( name, ready, ApplicationCb, callback,
+ _dieCB ? _dieCB : DieCb,
+ callback);
}
#else
Ivy::Ivy(const char* name, const char * ready, IvyApplicationCallback *callback,
- bool argaFrc, GLFWmutex _ivyCbmutex)
+ bool argaFrc, GLFWmutex _ivyCbmutex, IvyC::IvyDieCallback _dieCB)
{
- IvyC::IvyInit( name, ready, ApplicationCb, callback, DieCb, callback );
- ivyCbmutex= _ivyCbmutex;
+ IvyC::IvyInit( name, ready, ApplicationCb, callback,
+ _dieCB ? _dieCB : DieCb,
+ callback);
+
+ ivyCbmutex= _ivyCbmutex;
}
#endif
/*
diff --git a/Ivycpp.h b/Ivycpp.h
index 96eb1e9..a85db3d 100644
--- a/Ivycpp.h
+++ b/Ivycpp.h
@@ -27,10 +27,10 @@ public:
Ivy();
#ifdef USE_GLFW
Ivy( const char *name, const char* ready, IvyApplicationCallback *callback,
- bool argaFrc, GLFWmutex _ivyCbmutex = NULL);
+ bool argaFrc, GLFWmutex _ivyCbmutex = NULL, IvyC::IvyDieCallback _dieCB = NULL);
#else
Ivy( const char *name, const char* ready, IvyApplicationCallback *callback,
- bool argaFrc);
+ bool argaFrc, IvyC::IvyDieCallback _dieCB = NULL);
#endif
virtual ~Ivy();