JUCE
Macros
juce_PlatformDefs.h File Reference

Macros

#define JUCE_CALLTYPE
 This macro defines the C calling convention used as the standard for JUCE calls. More...
 
#define JUCE_CDECL
 
#define JUCE_LOG_CURRENT_ASSERTION
 
#define JUCE_BREAK_IN_DEBUGGER   { ::kill (0, SIGTRAP); }
 This will try to break into the debugger if the app is currently being debugged. More...
 
#define JUCE_ANALYZER_NORETURN
 
#define JUCE_FALLTHROUGH
 Used to silence Wimplicit-fallthrough on Clang and GCC where available as there are a few places in the codebase where we need to do this deliberately and want to ignore the warning. More...
 
#define JUCE_BLOCK_WITH_FORCED_SEMICOLON(x)   do { x } while (false)
 This is the good old C++ trick for creating a macro that forces the user to put a semicolon after it when they use it. More...
 
#define DBG(textToWrite)   JUCE_BLOCK_WITH_FORCED_SEMICOLON (juce::String tempDbgBuf; tempDbgBuf << textToWrite; juce::Logger::outputDebugString (tempDbgBuf);)
 Writes a string to the standard error stream. More...
 
#define jassertfalse   JUCE_BLOCK_WITH_FORCED_SEMICOLON (JUCE_LOG_CURRENT_ASSERTION; if (juce::juce_isRunningUnderDebugger()) JUCE_BREAK_IN_DEBUGGER; JUCE_ANALYZER_NORETURN)
 This will always cause an assertion failure. More...
 
#define jassert(expression)   JUCE_BLOCK_WITH_FORCED_SEMICOLON (if (! (expression)) jassertfalse;)
 Platform-independent assertion macro. More...
 
#define JUCE_JOIN_MACRO(item1, item2)   JUCE_JOIN_MACRO_HELPER (item1, item2)
 A good old-fashioned C macro concatenation helper. More...
 
#define JUCE_STRINGIFY(item)   JUCE_STRINGIFY_MACRO_HELPER (item)
 A handy C macro for stringifying any symbol, rather than just a macro parameter. More...
 
#define JUCE_DECLARE_NON_COPYABLE(className)
 This is a shorthand macro for declaring stubs for a class's copy constructor and operator=. More...
 
#define JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR(className)
 This is a shorthand way of writing both a JUCE_DECLARE_NON_COPYABLE and JUCE_LEAK_DETECTOR macro for a class. More...
 
#define JUCE_PREVENT_HEAP_ALLOCATION
 This macro can be added to class definitions to disable the use of new/delete to allocate the object on the heap, forcing it to only be used as a stack or member variable. More...
 
#define JUCE_COMPILER_WARNING(message)   _Pragma(JUCE_STRINGIFY (JUCE_WARNING_HELPER (message)))
 This macro allows you to emit a custom compiler warning message. More...
 
#define forcedinline   inline
 A platform-independent way of forcing an inline function. More...
 
#define JUCE_ALIGN(bytes)   __declspec (align (bytes))
 This can be placed before a stack or member variable declaration to tell the compiler to align it to the specified number of bytes. More...
 
#define JUCE_DEPRECATED(functionDef)
 This macro can be used to wrap a function which has been deprecated. More...
 
#define JUCE_DEPRECATED_WITH_BODY(functionDef, body)
 
#define JUCE_DEPRECATED_STATIC(valueDef)
 
#define JUCE_DECLARE_DEPRECATED_STATIC(valueDef)
 
#define JUCE_NO_ASSOCIATIVE_MATH_OPTIMISATIONS   __attribute__((__optimize__("no-associative-math")))
 This can be appended to a function declaration to tell gcc to disable associative math optimisations which break some floating point algorithms. More...