diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/comphelper/solarmutex.hxx | 17 | ||||
-rw-r--r-- | include/tools/solarmutex.hxx | 2 |
2 files changed, 16 insertions, 3 deletions
diff --git a/include/comphelper/solarmutex.hxx b/include/comphelper/solarmutex.hxx index 3b66a005370c..c50eba29dcda 100644 --- a/include/comphelper/solarmutex.hxx +++ b/include/comphelper/solarmutex.hxx @@ -26,8 +26,15 @@ namespace comphelper { -/** SolarMutex interface, needed for Application::GetSolarMutex(). -*/ +/** + * Abstract SolarMutex interface, needed for VCL's + * Application::GetSolarMutex(). + * + * The SolarMutex is the one big recursive code lock used + * to protect the vast majority of the LibreOffice code-base, + * in particular anything that is graphical and the cores of + * the applications. + */ class COMPHELPER_DLLPUBLIC SolarMutex { public: virtual void acquire() = 0; @@ -36,6 +43,12 @@ public: virtual bool tryToAcquire() = 0; + /// Help components to get the SolarMutex easily. + static SolarMutex *get(); + + /// semi-private: allow VCL to push its one-big-lock down here. + static void setSolarMutex( SolarMutex *pMutex ); + protected: SolarMutex(); diff --git a/include/tools/solarmutex.hxx b/include/tools/solarmutex.hxx index 85e465d2ec8a..60af81c1f5a6 100644 --- a/include/tools/solarmutex.hxx +++ b/include/tools/solarmutex.hxx @@ -24,10 +24,10 @@ namespace tools { + /// Deprecated in favour of comphelper::SolarMutex class TOOLS_DLLPUBLIC SolarMutex { public: - static void SetSolarMutex( comphelper::SolarMutex* pMutex ); static bool Acquire(); static void Release(); }; |