Optimize automation-event process splitting
[ardour.git] / gtk2_ardour / cocoacarbon.mm
index 5795cf0de919ef90558fddbdb07c35ba1b245403..f73488ea52e9fc9072aa9be515c341099e4c036f 100644 (file)
@@ -25,6 +25,9 @@
 #undef check
 #undef YES
 #undef NO
+#ifdef verify
+#undef verify
+#endif
 
 #include "ardour_ui.h"
 #include "actions.h"
 using namespace std;
 using namespace PBD;
 
-void
-ARDOUR_UI::platform_specific ()
-{
-       gtk_application_ready ();
-
-       if (!ARDOUR_COMMAND_LINE::finder_invoked_ardour) {
-               
-               /* if invoked from the command line, make sure we're visible */
-               
-               [NSApp activateIgnoringOtherApps:1];
-       } 
-}
-
-void
-ARDOUR_UI::platform_setup ()
-{
-}
-
 bool
 cocoa_open_url (const char* uri)
 {
@@ -121,3 +106,19 @@ set_language_preference ()
         setenv ("LANG", [nslocale UTF8String], 0);
        CFRelease (cflocale);
 }
+
+       /* Prevent "App Nap" */
+
+void
+no_app_nap ()
+{
+
+#ifndef NSActivityLatencyCritical
+#define NSActivityLatencyCritical 0xFF00000000ULL
+#endif
+
+       if ( [ [ NSProcessInfo processInfo ] respondsToSelector:@selector(beginActivityWithOptions:reason:) ] ) {
+               cout << "Disabling MacOS AppNap\n";
+               [ [ NSProcessInfo processInfo] beginActivityWithOptions:NSActivityLatencyCritical reason:@"realtime audio" ];
+       }
+}