JUCE-7.0.12-0-g4f43011b96 JUCE-7.0.12-0-g4f43011b96
JUCE — C++ application framework with suport for VST, VST3, LV2 audio plug-ins

« « « Anklang Documentation
Loading...
Searching...
No Matches
Public Types | Static Public Member Functions | List of all members
juce::Process Class Reference

Represents the current executable's process. More...

#include "juce_Process.h"

Public Types

enum  ProcessPriority { LowPriority , NormalPriority , HighPriority , RealtimePriority }
 

Static Public Member Functions

static void JUCE_CALLTYPE setPriority (ProcessPriority priority)
 Changes the current process's priority.
 
static void JUCE_CALLTYPE terminate ()
 Kills the current process immediately.
 
static bool JUCE_CALLTYPE isForegroundProcess ()
 Returns true if this application process is the one that the user is currently using.
 
static void JUCE_CALLTYPE makeForegroundProcess ()
 Attempts to make the current process the active one.
 
static void JUCE_CALLTYPE hide ()
 Hides the application (on an OS that supports this, e.g.
 
static void JUCE_CALLTYPE raisePrivilege ()
 Raises the current process's privilege level.
 
static void JUCE_CALLTYPE lowerPrivilege ()
 Lowers the current process's privilege level.
 
static bool JUCE_CALLTYPE isRunningUnderDebugger () noexcept
 Returns true if this process is being hosted by a debugger.
 
static bool JUCE_CALLTYPE openDocument (const String &documentURL, const String &parameters)
 Tries to launch the OS's default reader application for a given file or URL.
 
static bool JUCE_CALLTYPE openEmailWithAttachments (const String &targetEmailAddress, const String &emailSubject, const String &bodyText, const StringArray &filesToAttach)
 Tries to launch the OS's default email application to let the user create a message.
 
static void *JUCE_CALLTYPE getCurrentModuleInstanceHandle () noexcept
 WINDOWS ONLY - This returns the HINSTANCE of the current module.
 
static void JUCE_CALLTYPE setCurrentModuleInstanceHandle (void *newHandle) noexcept
 WINDOWS ONLY - Sets a new module handle to be used by the library.
 
static void setDockIconVisible (bool isVisible)
 OSX ONLY - Shows or hides the OSX dock icon for this app.
 
static bool setMaxNumberOfFileHandles (int maxNumberOfFiles) noexcept
 UNIX ONLY - Attempts to use setrlimit to change the maximum number of file handles that the app can open.
 

Detailed Description

Represents the current executable's process.

This contains methods for controlling the current application at the process-level.

See also
Thread, JUCEApplicationBase

@tags{Core}

Definition at line 36 of file juce_Process.h.

Member Enumeration Documentation

◆ ProcessPriority

enum juce::Process::ProcessPriority

Definition at line 40 of file juce_Process.h.

Member Function Documentation

◆ getCurrentModuleInstanceHandle()

static void *JUCE_CALLTYPE juce::Process::getCurrentModuleInstanceHandle ( )
staticnoexcept

WINDOWS ONLY - This returns the HINSTANCE of the current module.

The return type is a void* to avoid being dependent on windows.h - just cast it to a HINSTANCE to use it.

In a normal JUCE application, this will be automatically set to the module handle of the executable.

If you've built a DLL and plan to use any JUCE messaging or windowing classes, you'll need to make sure you call the setCurrentModuleInstanceHandle() to provide the correct module handle in your DllMain() function, because the system relies on the correct instance handle when opening windows.

◆ hide()

JUCE_API void JUCE_CALLTYPE juce::Process::hide ( )
static

Hides the application (on an OS that supports this, e.g.

OSX, iOS, Android)

Definition at line 603 of file juce_Windowing_linux.cpp.

◆ isForegroundProcess()

JUCE_API bool JUCE_CALLTYPE juce::Process::isForegroundProcess ( )
static

Returns true if this application process is the one that the user is currently using.

Definition at line 600 of file juce_Windowing_linux.cpp.

◆ isRunningUnderDebugger()

bool JUCE_CALLTYPE juce::Process::isRunningUnderDebugger ( )
staticnoexcept

Returns true if this process is being hosted by a debugger.

Definition at line 348 of file juce_Thread.cpp.

◆ lowerPrivilege()

JUCE_API void JUCE_CALLTYPE juce::Process::lowerPrivilege ( )
static

Lowers the current process's privilege level.

Does nothing if this isn't supported by the current OS, or if process privilege level is fixed.

Definition at line 82 of file juce_Threads_linux.cpp.

◆ makeForegroundProcess()

JUCE_API void JUCE_CALLTYPE juce::Process::makeForegroundProcess ( )
static

Attempts to make the current process the active one.

(This is not possible on some platforms).

Definition at line 602 of file juce_Windowing_linux.cpp.

◆ openDocument()

bool juce::Process::openDocument ( const String documentURL,
const String parameters 
)
static

Tries to launch the OS's default reader application for a given file or URL.

Definition at line 195 of file juce_Files_linux.cpp.

◆ openEmailWithAttachments()

bool JUCE_CALLTYPE juce::Process::openEmailWithAttachments ( const String targetEmailAddress,
const String emailSubject,
const String bodyText,
const StringArray filesToAttach 
)
static

Tries to launch the OS's default email application to let the user create a message.

Definition at line 80 of file juce_Network_linux.cpp.

◆ raisePrivilege()

JUCE_API void JUCE_CALLTYPE juce::Process::raisePrivilege ( )
static

Raises the current process's privilege level.

Does nothing if this isn't supported by the current OS, or if process privilege level is fixed.

Definition at line 81 of file juce_Threads_linux.cpp.

◆ setCurrentModuleInstanceHandle()

static void JUCE_CALLTYPE juce::Process::setCurrentModuleInstanceHandle ( void newHandle)
staticnoexcept

WINDOWS ONLY - Sets a new module handle to be used by the library.

The parameter type is a void* to avoid being dependent on windows.h, but it actually expects a HINSTANCE value.

See also
getCurrentModuleInstanceHandle()

◆ setMaxNumberOfFileHandles()

static bool juce::Process::setMaxNumberOfFileHandles ( int  maxNumberOfFiles)
staticnoexcept

UNIX ONLY - Attempts to use setrlimit to change the maximum number of file handles that the app can open.

Pass 0 or less as the parameter to mean 'infinite'. Returns true if it succeeds.

◆ setPriority()

JUCE_API void JUCE_CALLTYPE juce::Process::setPriority ( ProcessPriority  priority)
static

Changes the current process's priority.

Parameters
prioritythe process priority, where 0=low, 1=normal, 2=high, 3=realtime

Definition at line 72 of file juce_Threads_linux.cpp.

◆ terminate()

void JUCE_CALLTYPE juce::Process::terminate ( )
static

Kills the current process immediately.

This is an emergency process terminator that kills the application immediately - it's intended only for use only when something goes horribly wrong.

See also
JUCEApplicationBase::quit

Definition at line 52 of file juce_SharedCode_posix.h.


The documentation for this class was generated from the following files: