54#define JUCE_CORE_H_INCLUDED
58 #pragma warning (push)
60 #pragma warning (disable: 4251 4786 4668 4820)
61 #ifdef __INTEL_COMPILER
62 #pragma warning (disable: 1125)
74#ifndef JUCE_FORCE_DEBUG
90#ifndef JUCE_LOG_ASSERTIONS
92 #define JUCE_LOG_ASSERTIONS 1
94 #define JUCE_LOG_ASSERTIONS 0
104#if JUCE_DEBUG && ! defined (JUCE_CHECK_MEMORY_LEAKS)
105 #define JUCE_CHECK_MEMORY_LEAKS 1
114#ifndef JUCE_DONT_AUTOLINK_TO_WIN32_LIBRARIES
115 #define JUCE_DONT_AUTOLINK_TO_WIN32_LIBRARIES 0
126#ifndef JUCE_INCLUDE_ZLIB_CODE
127 #define JUCE_INCLUDE_ZLIB_CODE 1
130#ifndef JUCE_ZLIB_INCLUDE_PATH
131 #define JUCE_ZLIB_INCLUDE_PATH <zlib.h>
141 #define JUCE_USE_CURL 1
151#ifndef JUCE_LOAD_CURL_SYMBOLS_LAZILY
152 #define JUCE_LOAD_CURL_SYMBOLS_LAZILY 0
159#ifndef JUCE_CATCH_UNHANDLED_EXCEPTIONS
160 #define JUCE_CATCH_UNHANDLED_EXCEPTIONS 0
168#ifndef JUCE_ALLOW_STATIC_NULL_VARIABLES
169 #define JUCE_ALLOW_STATIC_NULL_VARIABLES 0
177#ifndef JUCE_STRICT_REFCOUNTEDPOINTER
178 #define JUCE_STRICT_REFCOUNTEDPOINTER 0
185#ifndef JUCE_ENABLE_ALLOCATION_HOOKS
186 #define JUCE_ENABLE_ALLOCATION_HOOKS 0
189#ifndef JUCE_STRING_UTF_TYPE
190 #define JUCE_STRING_UTF_TYPE 8
196#if JUCE_CORE_INCLUDE_NATIVE_HEADERS
214 class FileInputStream;
215 class FileOutputStream;
229JUCE_BEGIN_IGNORE_WARNINGS_MSVC (4514 4996)
231#include "text/juce_CharPointer_UTF8.h"
236JUCE_END_IGNORE_WARNINGS_MSVC
359#if JUCE_CORE_INCLUDE_OBJC_HELPERS && (JUCE_MAC || JUCE_IOS)
360 #include "native/juce_CFHelpers_mac.h"
361 #include "native/juce_ObjCHelpers_mac.h"
364#if JUCE_CORE_INCLUDE_COM_SMART_PTR && JUCE_WINDOWS
365 #include "native/juce_ComSmartPtr_windows.h"
368#if JUCE_CORE_INCLUDE_JNI_HELPERS && JUCE_ANDROID
370 #include "native/juce_JNIHelpers_android.h"
374 #include "unit_tests/juce_UnitTestCategories.h"
390 { this_will_fail_to_link_if_some_of_your_compile_units_are_built_in_debug_mode()
noexcept; };
394 { this_will_fail_to_link_if_some_of_your_compile_units_are_built_in_release_mode() noexcept; };
395 static this_will_fail_to_link_if_some_of_your_compile_units_are_built_in_release_mode compileUnitMismatchSentinel;
400JUCE_END_IGNORE_WARNINGS_MSVC
403#if defined (JUCE_DLL_BUILD) || defined (JUCE_DLL)
#define JUCE_IGNORE_MSVC(warnings)
Push/pop warnings on MSVC.
bool juce_isRunningUnderDebugger() noexcept
< This macro is added to all JUCE public class declarations.
void logAssertion(const char *file, int line) noexcept
< This macro is added to all JUCE public class declarations.
Type unalignedPointerCast(void *ptr) noexcept
Casts a pointer to another type via void*, which suppresses the cast-align warning which sometimes ar...