13 #ifndef BERRYISAFERUNNABLE_H_ 14 #define BERRYISAFERUNNABLE_H_ 52 virtual void HandleException(
const ctkException& exception) = 0;
63 virtual void Run() = 0;
69 typedef void(R::*RunCallback)();
70 typedef void(R::*HandleExcCallback)(
const std::exception&);
73 m_Runnable(runnable), m_RunFunc(func), m_HandleExcFunc(handleFunc)
79 m_Runnable->*m_RunFunc();
85 m_Runnable->*m_HandleExcFunc(exception);
91 RunCallback m_RunFunc;
92 HandleExcCallback m_HandleExcFunc;
void HandleException(const ctkException &exception) override
Light weight base class for most BlueBerry classes.
#define org_blueberry_core_runtime_EXPORT
SafeRunnableDelegate(R *runnable, RunCallback func, HandleExcCallback handleFunc=0)
#define berryObjectMacro(...)
void Run(berry::IWorkbenchPartSite::Pointer workbenchPartSite, mitk::DataStorage::Pointer dataStorage)