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
Namespaces | Macros | Functions
juce_core.h File Reference
#include "system/juce_TargetPlatform.h"
#include "system/juce_StandardHeader.h"
#include "misc/juce_EnumHelpers.h"
#include "memory/juce_Memory.h"
#include "maths/juce_MathsFunctions.h"
#include "memory/juce_ByteOrder.h"
#include "memory/juce_Atomic.h"
#include "text/juce_CharacterFunctions.h"
#include "text/juce_CharPointer_UTF8.h"
#include "text/juce_CharPointer_UTF16.h"
#include "text/juce_CharPointer_UTF32.h"
#include "text/juce_CharPointer_ASCII.h"
#include "text/juce_String.h"
#include "text/juce_StringRef.h"
#include "logging/juce_Logger.h"
#include "memory/juce_LeakedObjectDetector.h"
#include "memory/juce_ContainerDeletePolicy.h"
#include "memory/juce_HeapBlock.h"
#include "memory/juce_MemoryBlock.h"
#include "memory/juce_ReferenceCountedObject.h"
#include "memory/juce_ScopedPointer.h"
#include "memory/juce_OptionalScopedPointer.h"
#include "containers/juce_Optional.h"
#include "containers/juce_Enumerate.h"
#include "containers/juce_ScopedValueSetter.h"
#include "memory/juce_Singleton.h"
#include "memory/juce_WeakReference.h"
#include "threads/juce_ScopedLock.h"
#include "threads/juce_CriticalSection.h"
#include "maths/juce_Range.h"
#include "maths/juce_NormalisableRange.h"
#include "maths/juce_StatisticsAccumulator.h"
#include "containers/juce_ElementComparator.h"
#include "containers/juce_ArrayAllocationBase.h"
#include "containers/juce_ArrayBase.h"
#include "containers/juce_Array.h"
#include "containers/juce_LinkedListPointer.h"
#include "misc/juce_ScopeGuard.h"
#include "containers/juce_ListenerList.h"
#include "containers/juce_OwnedArray.h"
#include "containers/juce_ReferenceCountedArray.h"
#include "containers/juce_SortedSet.h"
#include "containers/juce_SparseSet.h"
#include "containers/juce_AbstractFifo.h"
#include "containers/juce_SingleThreadedAbstractFifo.h"
#include "text/juce_NewLine.h"
#include "text/juce_StringPool.h"
#include "text/juce_Identifier.h"
#include "text/juce_StringArray.h"
#include "system/juce_SystemStats.h"
#include "memory/juce_HeavyweightLeakedObjectDetector.h"
#include "text/juce_StringPairArray.h"
#include "text/juce_TextDiff.h"
#include "text/juce_LocalisedStrings.h"
#include "text/juce_Base64.h"
#include "misc/juce_Functional.h"
#include "containers/juce_Span.h"
#include "misc/juce_Result.h"
#include "misc/juce_Uuid.h"
#include "misc/juce_ConsoleApplication.h"
#include "containers/juce_Variant.h"
#include "containers/juce_NamedValueSet.h"
#include "javascript/juce_JSON.h"
#include "containers/juce_DynamicObject.h"
#include "containers/juce_HashMap.h"
#include "containers/juce_FixedSizeFunction.h"
#include "time/juce_RelativeTime.h"
#include "time/juce_Time.h"
#include "streams/juce_InputStream.h"
#include "streams/juce_OutputStream.h"
#include "streams/juce_BufferedInputStream.h"
#include "streams/juce_MemoryInputStream.h"
#include "streams/juce_MemoryOutputStream.h"
#include "streams/juce_SubregionStream.h"
#include "streams/juce_InputSource.h"
#include "files/juce_File.h"
#include "files/juce_DirectoryIterator.h"
#include "files/juce_RangedDirectoryIterator.h"
#include "files/juce_FileInputStream.h"
#include "files/juce_FileOutputStream.h"
#include "files/juce_FileSearchPath.h"
#include "files/juce_MemoryMappedFile.h"
#include "files/juce_TemporaryFile.h"
#include "files/juce_FileFilter.h"
#include "files/juce_WildcardFileFilter.h"
#include "streams/juce_FileInputSource.h"
#include "logging/juce_FileLogger.h"
#include "javascript/juce_JSONUtils.h"
#include "serialisation/juce_Serialisation.h"
#include "javascript/juce_JSONSerialisation.h"
#include "javascript/juce_Javascript.h"
#include "maths/juce_BigInteger.h"
#include "maths/juce_Expression.h"
#include "maths/juce_Random.h"
#include "misc/juce_RuntimePermissions.h"
#include "misc/juce_WindowsRegistry.h"
#include "threads/juce_ChildProcess.h"
#include "threads/juce_DynamicLibrary.h"
#include "threads/juce_InterProcessLock.h"
#include "threads/juce_Process.h"
#include "threads/juce_SpinLock.h"
#include "threads/juce_WaitableEvent.h"
#include "threads/juce_Thread.h"
#include "threads/juce_HighResolutionTimer.h"
#include "threads/juce_ThreadLocalValue.h"
#include "threads/juce_ThreadPool.h"
#include "threads/juce_TimeSliceThread.h"
#include "threads/juce_ReadWriteLock.h"
#include "threads/juce_ScopedReadLock.h"
#include "threads/juce_ScopedWriteLock.h"
#include "network/juce_IPAddress.h"
#include "network/juce_MACAddress.h"
#include "network/juce_NamedPipe.h"
#include "network/juce_Socket.h"
#include "network/juce_URL.h"
#include "network/juce_WebInputStream.h"
#include "streams/juce_URLInputSource.h"
#include "time/juce_PerformanceCounter.h"
#include "unit_tests/juce_UnitTest.h"
#include "xml/juce_XmlDocument.h"
#include "xml/juce_XmlElement.h"
#include "zip/juce_GZIPCompressorOutputStream.h"
#include "zip/juce_GZIPDecompressorInputStream.h"
#include "zip/juce_ZipFile.h"
#include "containers/juce_PropertySet.h"
#include "memory/juce_SharedResourcePointer.h"
#include "memory/juce_AllocationHooks.h"
#include "memory/juce_Reservoir.h"
#include "files/juce_AndroidDocument.h"
#include "streams/juce_AndroidDocumentInputSource.h"
#include "detail/juce_CallbackListenerList.h"

Go to the source code of this file.

Namespaces

namespace  juce
 JUCE Namespace.
 

Macros

#define JUCE_CORE_H_INCLUDED
 
#define JUCE_LOG_ASSERTIONS
 Config: JUCE_FORCE_DEBUG.
 
#define JUCE_DONT_AUTOLINK_TO_WIN32_LIBRARIES
 Config: JUCE_CHECK_MEMORY_LEAKS.
 
#define JUCE_INCLUDE_ZLIB_CODE
 Config: JUCE_INCLUDE_ZLIB_CODE This can be used to disable Juce's embedded 3rd-party zlib code.
 
#define JUCE_ZLIB_INCLUDE_PATH
 
#define JUCE_USE_CURL
 Config: JUCE_USE_CURL Enables http/https support via libcurl (Linux only).
 
#define JUCE_LOAD_CURL_SYMBOLS_LAZILY
 Config: JUCE_LOAD_CURL_SYMBOLS_LAZILY If enabled, JUCE will load libcurl lazily when required (for example, when WebInputStream is used).
 
#define JUCE_CATCH_UNHANDLED_EXCEPTIONS
 Config: JUCE_CATCH_UNHANDLED_EXCEPTIONS If enabled, this will add some exception-catching code to forward unhandled exceptions to your JUCEApplicationBase::unhandledException() callback.
 
#define JUCE_ALLOW_STATIC_NULL_VARIABLES
 Config: JUCE_ALLOW_STATIC_NULL_VARIABLES If disabled, this will turn off dangerous static globals like String::empty, var::null, etc which can cause nasty order-of-initialisation problems if they are referenced during static constructor code.
 
#define JUCE_STRICT_REFCOUNTEDPOINTER
 Config: JUCE_STRICT_REFCOUNTEDPOINTER If enabled, this will make the ReferenceCountedObjectPtr class stricter about allowing itself to be cast directly to a raw pointer.
 
#define JUCE_ENABLE_ALLOCATION_HOOKS
 Config: JUCE_ENABLE_ALLOCATION_HOOKS If enabled, this will add global allocation functions with built-in assertions, which may help when debugging allocations in unit tests.
 
#define JUCE_STRING_UTF_TYPE
 

Functions

bool juce::juce_isRunningUnderDebugger () noexcept
 < This macro is added to all JUCE public class declarations.
 
void juce::logAssertion (const char *file, int line) noexcept
 < This macro is added to all JUCE public class declarations.
 

Macro Definition Documentation

◆ JUCE_ALLOW_STATIC_NULL_VARIABLES

#define JUCE_ALLOW_STATIC_NULL_VARIABLES

Config: JUCE_ALLOW_STATIC_NULL_VARIABLES If disabled, this will turn off dangerous static globals like String::empty, var::null, etc which can cause nasty order-of-initialisation problems if they are referenced during static constructor code.

Definition at line 169 of file juce_core.h.

◆ JUCE_CATCH_UNHANDLED_EXCEPTIONS

#define JUCE_CATCH_UNHANDLED_EXCEPTIONS

Config: JUCE_CATCH_UNHANDLED_EXCEPTIONS If enabled, this will add some exception-catching code to forward unhandled exceptions to your JUCEApplicationBase::unhandledException() callback.

Definition at line 160 of file juce_core.h.

◆ JUCE_CORE_H_INCLUDED

#define JUCE_CORE_H_INCLUDED

Definition at line 54 of file juce_core.h.

◆ JUCE_DONT_AUTOLINK_TO_WIN32_LIBRARIES

#define JUCE_DONT_AUTOLINK_TO_WIN32_LIBRARIES

Config: JUCE_CHECK_MEMORY_LEAKS.

Enables a memory-leak check for certain objects when the app terminates. See the LeakedObjectDetector class and the JUCE_LEAK_DETECTOR macro for more details about enabling leak checking for specific classes. Config: JUCE_DONT_AUTOLINK_TO_WIN32_LIBRARIES

In a Windows build, this can be used to stop the required system libs being automatically added to the link stage.

Definition at line 115 of file juce_core.h.

◆ JUCE_ENABLE_ALLOCATION_HOOKS

#define JUCE_ENABLE_ALLOCATION_HOOKS

Config: JUCE_ENABLE_ALLOCATION_HOOKS If enabled, this will add global allocation functions with built-in assertions, which may help when debugging allocations in unit tests.

Definition at line 186 of file juce_core.h.

◆ JUCE_INCLUDE_ZLIB_CODE

#define JUCE_INCLUDE_ZLIB_CODE

Config: JUCE_INCLUDE_ZLIB_CODE This can be used to disable Juce's embedded 3rd-party zlib code.

You might need to tweak this if you're linking to an external zlib library in your app, but for normal apps, this option should be left alone.

If you disable this, you might also want to set a value for JUCE_ZLIB_INCLUDE_PATH, to specify the path where your zlib headers live.

Definition at line 127 of file juce_core.h.

◆ JUCE_LOAD_CURL_SYMBOLS_LAZILY

#define JUCE_LOAD_CURL_SYMBOLS_LAZILY

Config: JUCE_LOAD_CURL_SYMBOLS_LAZILY If enabled, JUCE will load libcurl lazily when required (for example, when WebInputStream is used).

Enabling this flag may also help with library dependency errors as linking libcurl at compile-time may instruct the linker to hard depend on a specific version of libcurl. It's also useful if you want to limit the amount of JUCE dependencies and you are not using WebInputStream or the URL classes.

Definition at line 152 of file juce_core.h.

◆ JUCE_LOG_ASSERTIONS

#define JUCE_LOG_ASSERTIONS

Config: JUCE_FORCE_DEBUG.

Normally, JUCE_DEBUG is set to 1 or 0 based on compiler and project settings, but if you define this value, you can override this to force it to be true or false. Config: JUCE_LOG_ASSERTIONS

If this flag is enabled, the jassert and jassertfalse macros will always use Logger::writeToLog() to write a message when an assertion happens.

Enabling it will also leave this turned on in release builds. When it's disabled, however, the jassert and jassertfalse macros will not be compiled in a release build.

See also
jassert, jassertfalse, Logger

Definition at line 94 of file juce_core.h.

◆ JUCE_STRICT_REFCOUNTEDPOINTER

#define JUCE_STRICT_REFCOUNTEDPOINTER

Config: JUCE_STRICT_REFCOUNTEDPOINTER If enabled, this will make the ReferenceCountedObjectPtr class stricter about allowing itself to be cast directly to a raw pointer.

By default this is disabled, for compatibility with old code, but if possible, you should always enable it to improve code safety!

Definition at line 178 of file juce_core.h.

◆ JUCE_STRING_UTF_TYPE

#define JUCE_STRING_UTF_TYPE

Definition at line 190 of file juce_core.h.

◆ JUCE_USE_CURL

#define JUCE_USE_CURL

Config: JUCE_USE_CURL Enables http/https support via libcurl (Linux only).

Enabling this will add an additional run-time dynamic dependency to libcurl.

If you disable this then https/ssl support will not be available on Linux.

Definition at line 141 of file juce_core.h.

◆ JUCE_ZLIB_INCLUDE_PATH

#define JUCE_ZLIB_INCLUDE_PATH

Definition at line 131 of file juce_core.h.