JUCE  v6.1.6 (6.0.8-1114)
JUCE API
Looking for a senior C++ dev?
I'm looking for work. Hire me!
juce Namespace Reference

Namespaces

 AccessibilityTextHelpers
 
 AndroidHighPerformanceAudioHelpers
 Some shared helpers methods for using the high-performance audio paths on Android devices (OpenSL and Oboe).
 
 AnimatedPositionBehaviours
 Contains classes for different types of physics behaviours - these classes are used as template parameters for the AnimatedPosition class.
 
 anonymous_namespace{juce_android_JNIHelpers.h}
 
 anonymous_namespace{juce_mac_CoreGraphicsHelpers.h}
 
 anonymous_namespace{juce_posix_IPAddress.h}
 
 anonymous_namespace{juce_posix_SharedCode.h}
 
 Colours
 Contains a set of predefined named colours (mostly standard HTML colours)
 
 ComTypes
 
 detail
 
 dsp
 
 gl
 
 LinuxEventLoop
 
 RenderingHelpers
 
 ReturnHelpers
 
 StandardApplicationCommandIDs
 A set of general-purpose application command IDs.
 
 SystemStatsHelpers
 
 TypeHelpers
 This namespace contains a few template classes for helping work out class type variations.
 
 UnitTestCategories
 
 ValueSmoothingTypes
 A namespace containing a set of types used for specifying the smoothing behaviour of the SmoothedValue class.
 
 VariantHelpers
 
 XWindowSystemUtilities
 

Classes

class  AbstractFifo
 Encapsulates the logic required to implement a lock-free FIFO. More...
 
class  AccessibilityActions
 A simple wrapper for building a collection of supported accessibility actions and corresponding callbacks for a UI element. More...
 
class  AccessibilityCellInterface
 An abstract interface which represents a UI element that supports a cell interface. More...
 
class  AccessibilityHandler
 Base class for accessible Components. More...
 
class  AccessibilityNativeHandle
 
class  AccessibilityNumericValueInterface
 A value interface that represents a non-ranged numeric value. More...
 
class  AccessibilityRangedNumericValueInterface
 A value interface that represents a ranged numeric value. More...
 
class  AccessibilityTableInterface
 An abstract interface which represents a UI element that supports a table interface. More...
 
class  AccessibilityTextInterface
 An abstract interface which represents a UI element that supports a text interface. More...
 
class  AccessibilityTextValueInterface
 A value interface that represents a text value. More...
 
class  AccessibilityValueInterface
 An abstract interface representing the value of an accessibility element. More...
 
class  AccessibleState
 Represents the state of an accessible UI element. More...
 
class  ActionBroadcaster
 Manages a list of ActionListeners, and can send them messages. More...
 
class  ActionListener
 Interface class for delivery of events that are sent by an ActionBroadcaster. More...
 
class  ActiveXControlComponent
 A Windows-specific class that can create and embed an ActiveX control inside itself. More...
 
class  ActivityLifecycleCallbacks
 
class  ADSR
 A very simple ADSR envelope class. More...
 
class  AffineTransform
 Represents a 2D affine-transformation matrix. More...
 
class  AiffAudioFormat
 Reads and Writes AIFF format audio files. More...
 
class  AlertWindow
 A window that displays a message and has buttons for the user to react to it. More...
 
class  Analytics
 A singleton class to manage analytics data. More...
 
struct  AnalyticsDestination
 An interface for handling analytics events collected by an Analytics object. More...
 
struct  AndroidGLCallbacks
 
class  AndroidInterfaceImplementer
 
class  AndroidViewComponent
 An Android-specific class that can create and embed a View inside itself. More...
 
class  AnimatedAppComponent
 A base class for writing simple one-page graphical apps. More...
 
class  AnimatedPosition
 Models a 1-dimensional position that can be dragged around by the user, and which will then continue moving with a customisable physics behaviour when released. More...
 
class  AppleRemoteDevice
 Receives events from an Apple IR remote control device (Only available in OSX!). More...
 
struct  ApplicationCommandInfo
 Holds information describing an application command. More...
 
class  ApplicationCommandManager
 One of these objects holds a list of all the commands your app can perform, and despatches these commands when needed. More...
 
class  ApplicationCommandManagerListener
 A listener that receives callbacks from an ApplicationCommandManager when commands are invoked or the command list is changed. More...
 
class  ApplicationCommandTarget
 A command target publishes a list of command IDs that it can perform. More...
 
class  ApplicationProperties
 Manages a collection of properties. More...
 
struct  ArgumentList
 Holds a list of command-line arguments, and provides useful methods for searching and operating on them. More...
 
class  Array
 Holds a resizable array of primitive or copy-by-value objects. More...
 
class  ArrayAllocationBase
 Implements some basic array storage allocation functions. More...
 
class  ArrayBase
 A basic object container. More...
 
class  ArrowButton
 A button with an arrow in it. More...
 
class  AsyncUpdater
 Has a callback method that is triggered asynchronously. More...
 
struct  Atomic
 A simple wrapper around std::atomic. More...
 
class  AttributedString
 A text string with a set of colour/font settings that are associated with sub-ranges of the text. More...
 
class  AudioAppComponent
 A base class for writing audio apps that stream from the audio i/o devices. More...
 
class  AudioBuffer
 A multi-channel buffer containing floating point audio samples. More...
 
class  AudioCDBurner
 @tags{Audio} More...
 
class  AudioCDReader
 A type of AudioFormatReader that reads from an audio CD. More...
 
class  AudioChannelSet
 Represents a set of audio channel types. More...
 
class  AudioData
 This class a container which holds all the classes pertaining to the AudioData::Pointer audio sample format class. More...
 
class  AudioDeviceManager
 Manages the state of some audio and midi i/o devices. More...
 
class  AudioDeviceSelectorComponent
 A component containing controls to let the user change the audio settings of an AudioDeviceManager object. More...
 
class  AudioFormat
 Subclasses of AudioFormat are used to read and write different audio file formats. More...
 
class  AudioFormatManager
 A class for keeping a list of available audio formats, and for deciding which one to use to open a given file. More...
 
class  AudioFormatReader
 Reads samples from an audio file stream. More...
 
class  AudioFormatReaderSource
 A type of AudioSource that will read from an AudioFormatReader. More...
 
class  AudioFormatWriter
 Writes samples to an audio file stream. More...
 
class  AudioIODevice
 Base class for an audio device with synchronised input and output channels. More...
 
class  AudioIODeviceCallback
 One of these is passed to an AudioIODevice object to stream the audio data in and out. More...
 
class  AudioIODeviceType
 Represents a type of audio driver, such as DirectSound, ASIO, CoreAudio, etc. More...
 
class  AudioParameterBool
 Provides a class of AudioProcessorParameter that can be used as a boolean value. More...
 
class  AudioParameterBoolAttributes
 Properties of an AudioParameterBool. More...
 
class  AudioParameterChoice
 Provides a class of AudioProcessorParameter that can be used to select an indexed, named choice from a list. More...
 
class  AudioParameterChoiceAttributes
 Properties of an AudioParameterChoice. More...
 
class  AudioParameterFloat
 A subclass of AudioProcessorParameter that provides an easy way to create a parameter which maps onto a given NormalisableRange. More...
 
class  AudioParameterFloatAttributes
 Properties of an AudioParameterFloat. More...
 
class  AudioParameterInt
 Provides a class of AudioProcessorParameter that can be used as an integer value with a given range. More...
 
class  AudioParameterIntAttributes
 Properties of an AudioParameterInt. More...
 
class  AudioPlayHead
 A subclass of AudioPlayHead can supply information about the position and status of a moving play head during audio playback. More...
 
class  AudioPluginFormat
 The base class for a type of plugin format, such as VST, AudioUnit, LADSPA, etc. More...
 
class  AudioPluginFormatManager
 This maintains a list of known AudioPluginFormats. More...
 
class  AudioPluginInstance
 Base class for an active instance of a plugin. More...
 
class  AudioProcessLoadMeasurer
 Maintains an ongoing measurement of the proportion of time which is being spent inside an audio callback. More...
 
class  AudioProcessor
 Base class for audio processing classes or plugins. More...
 
class  AudioProcessorEditor
 Base class for the component that acts as the GUI for an AudioProcessor. More...
 
struct  AudioProcessorEditorHostContext
 Calling AudioProcessorEditor::getHostContext() may return a pointer to an instance of this class. More...
 
class  AudioProcessorGraph
 A type of AudioProcessor which plays back a graph of other AudioProcessors. More...
 
class  AudioProcessorListener
 Base class for listeners that want to know about changes to an AudioProcessor. More...
 
class  AudioProcessorParameter
 An abstract base class for parameter objects that can be added to an AudioProcessor. More...
 
class  AudioProcessorParameterGroup
 A class encapsulating a group of AudioProcessorParameters and nested AudioProcessorParameterGroups. More...
 
class  AudioProcessorParameterWithID
 This abstract base class is used by some AudioProcessorParameter helper classes. More...
 
class  AudioProcessorParameterWithIDAttributes
 An instance of this class may be passed to the constructor of an AudioProcessorParameterWithID to set optional characteristics of that parameter. More...
 
class  AudioProcessorPlayer
 An AudioIODeviceCallback object which streams audio through an AudioProcessor. More...
 
class  AudioProcessorValueTreeState
 This class contains a ValueTree that is used to manage an AudioProcessor's entire state. More...
 
class  AudioProcessorValueTreeStateParameterAttributes
 Advanced properties of an AudioProcessorValueTreeState::Parameter. More...
 
class  AudioSource
 Base class for objects that can produce a continuous stream of audio. More...
 
struct  AudioSourceChannelInfo
 Used by AudioSource::getNextAudioBlock(). More...
 
class  AudioSourcePlayer
 Wrapper class to continuously stream audio from an audio source to an AudioIODevice. More...
 
class  AudioSubsectionReader
 This class is used to wrap an AudioFormatReader and only read from a subsection of the file. More...
 
class  AudioThumbnail
 Makes it easy to quickly draw scaled views of the waveform shape of an audio file. More...
 
class  AudioThumbnailBase
 Provides a base for classes that can store and draw scaled views of an audio waveform. More...
 
class  AudioThumbnailCache
 An instance of this class is used to manage multiple AudioThumbnail objects. More...
 
class  AudioTransportSource
 An AudioSource that takes a PositionableAudioSource and allows it to be played, stopped, started, etc. More...
 
class  AudioVisualiserComponent
 A simple component that can be used to show a scrolling waveform of audio data. More...
 
struct  Base64
 Contains some static methods for converting between binary and the standard base-64 encoding format. More...
 
class  BigInteger
 An arbitrarily large integer class. More...
 
class  BlowFish
 BlowFish encryption class. More...
 
class  BluetoothMidiDevicePairingDialogue
 Opens a Bluetooth MIDI pairing dialogue that allows the user to view and connect to Bluetooth MIDI devices that are currently found nearby. More...
 
class  BooleanPropertyComponent
 A PropertyComponent that contains an on/off toggle button. More...
 
class  BorderSize
 Specifies a set of gaps to be left around the sides of a rectangle. More...
 
class  Box2DRenderer
 A simple implementation of the b2Draw class, used to draw a Box2D world. More...
 
class  BubbleComponent
 A component for showing a message or other graphics inside a speech-bubble-shaped outline, pointing at a location on the screen. More...
 
class  BubbleMessageComponent
 A speech-bubble component that displays a short message. More...
 
class  BufferedInputStream
 Wraps another input stream, and reads from it using an intermediate buffer. More...
 
class  BufferingAudioReader
 An AudioFormatReader that uses a background thread to pre-read data from another reader. More...
 
class  BufferingAudioSource
 An AudioSource which takes another source as input, and buffers it using a thread. More...
 
class  BurgerMenuComponent
 A component which lists all menu items and groups them into categories by their respective parent menus. More...
 
class  Button
 A base class for buttons. More...
 
class  ButtonParameterAttachment
 An object of this class maintains a connection between a Button and a plug-in parameter. More...
 
class  ButtonPropertyComponent
 A PropertyComponent that contains a button. More...
 
class  ButtonTracker
 A class that automatically sends analytics events to the Analytics singleton when a button is clicked. More...
 
class  ByteOrder
 Contains static methods for converting the byte order between different endiannesses. More...
 
class  CachedComponentImage
 Base class used internally for structures that can store cached images of component state. More...
 
class  CachedValue
 This class acts as a typed wrapper around a property inside a ValueTree. More...
 
class  CallbackMessage
 A message that invokes a callback method when it gets delivered. More...
 
class  CallOutBox
 A box with a small arrow that can be used as a temporary pop-up window to show extra controls when a button or other component is clicked. More...
 
class  CameraDevice
 Controls any video capture devices that might be available. More...
 
class  CarbonViewWrapperComponent
 Creates a floating carbon window that can be used to hold a carbon UI. More...
 
class  CaretComponent
 @tags{GUI} More...
 
struct  CFObjectDeleter
 
struct  CFObjectHolder
 
class  ChangeBroadcaster
 Holds a list of ChangeListeners, and sends messages to them when instructed. More...
 
class  ChangeListener
 Receives change event callbacks that are sent out by a ChangeBroadcaster. More...
 
class  ChannelRemappingAudioSource
 An AudioSource that takes the audio from another source, and re-maps its input and output channels to a different arrangement. More...
 
class  CharacterFunctions
 A collection of functions for manipulating characters and character strings. More...
 
class  CharPointer_ASCII
 Wraps a pointer to a null-terminated ASCII character string, and provides various methods to operate on the data. More...
 
class  CharPointer_UTF16
 Wraps a pointer to a null-terminated UTF-16 character string, and provides various methods to operate on the data. More...
 
class  CharPointer_UTF32
 Wraps a pointer to a null-terminated UTF-32 character string, and provides various methods to operate on the data. More...
 
class  CharPointer_UTF8
 Wraps a pointer to a null-terminated UTF-8 character string, and provides various methods to operate on the data. More...
 
class  ChildProcess
 Launches and monitors a child process. More...
 
class  ChildProcessCoordinator
 Acts as the coordinator in a coordinator/worker pair of connected processes. More...
 
class  ChildProcessWorker
 Acts as the worker end of a coordinator/worker pair of connected processes. More...
 
class  ChoicePropertyComponent
 A PropertyComponent that shows its value as a combo box. More...
 
class  CodeDocument
 A class for storing and manipulating a source code file. More...
 
class  CodeEditorComponent
 A text editor component designed specifically for source code. More...
 
class  CodeTokeniser
 A base class for tokenising code so that the syntax can be displayed in a code editor. More...
 
class  Colour
 Represents a colour, also including a transparency value. More...
 
class  ColourGradient
 Describes the layout and colours that should be used to paint a colour gradient. More...
 
class  ColourSelector
 A component that lets the user choose a colour. More...
 
class  ComBaseClassHelper
 Handy base class for writing COM objects, providing ref-counting and a basic QueryInterface method. More...
 
class  ComBaseClassHelperBase
 
class  ComboBox
 A component that lets the user choose from a drop-down list of choices. More...
 
class  ComboBoxParameterAttachment
 An object of this class maintains a connection between a ComboBox and a plug-in parameter. More...
 
class  Component
 The base class for all JUCE user-interface objects. More...
 
class  ComponentAnimator
 Animates a set of components, moving them to a new position and/or fading their alpha levels. More...
 
class  ComponentBoundsConstrainer
 A class that imposes restrictions on a Component's size or position. More...
 
class  ComponentBuilder
 Loads and maintains a tree of Components from a ValueTree that represents them. More...
 
class  ComponentDragger
 An object to take care of the logic for dragging components around with the mouse. More...
 
class  ComponentListener
 Gets informed about changes to a component's hierarchy or position. More...
 
class  ComponentMovementWatcher
 An object that watches for any movement of a component or any of its parent components. More...
 
class  ComponentPeer
 The Component class uses a ComponentPeer internally to create and manage a real operating-system window. More...
 
class  ComponentTraverser
 Base class for traversing components. More...
 
class  ComSmartPtr
 A simple COM smart pointer. More...
 
class  ConcertinaPanel
 A panel which holds a vertical stack of components which can be expanded and contracted. More...
 
struct  ConsoleApplication
 Represents a the set of commands that a console app can perform, and provides helper functions for performing them. More...
 
struct  ContainerDeletePolicy
 Used by container classes as an indirect way to delete an object of a particular type. More...
 
class  ContentSharer
 A singleton class responsible for sharing content between apps and devices. More...
 
class  CoreAudioFormat
 OSX and iOS only - This uses the AudioToolbox framework to read any audio format that the system has a codec for. More...
 
class  CoreGraphicsContext
 
class  CPlusPlusCodeTokeniser
 A simple lexical analyser for syntax colouring of C++ code. More...
 
struct  CppTokeniserFunctions
 Class containing some basic functions for simple tokenising of C++ code. More...
 
class  CriticalSection
 A re-entrant mutex. More...
 
class  CustomTypeface
 A typeface that can be populated with custom glyphs. More...
 
class  DarkModeSettingListener
 Classes can implement this interface and register themselves with the Desktop class to receive callbacks when the operating system dark mode setting changes. More...
 
class  DatagramSocket
 A wrapper for a datagram (UDP) socket. More...
 
class  Decibels
 This class contains some helpful static methods for dealing with decibel values. More...
 
class  DefaultElementComparator
 A simple ElementComparator class that can be used to sort an array of objects that support the '<' operator. More...
 
struct  DefaultHashFunctions
 A simple class to generate hash functions for some primitive types, intended for use with the HashMap class. More...
 
class  DeletedAtShutdown
 Classes derived from this will be automatically deleted when the application exits. More...
 
class  Desktop
 Describes and controls aspects of the computer's desktop. More...
 
class  DeviceChangeDetector
 
class  DialogWindow
 A dialog-box style window. More...
 
class  Direct2DLowLevelGraphicsContext
 
class  DirectoryContentsDisplayComponent
 A base class for components that display a list of the files in a directory. More...
 
class  DirectoryContentsList
 A class to asynchronously scan for details about the files in a directory. More...
 
class  DirectoryEntry
 Describes the attributes of a file or folder. More...
 
class  Displays
 Manages details about connected display devices. More...
 
class  DocumentWindow
 A resizable window with a title bar and maximise, minimise and close buttons. More...
 
class  DragAndDropContainer
 Enables drag-and-drop behaviour for a component and all its sub-components. More...
 
class  DragAndDropTarget
 Components derived from this class can have things dropped onto them by a DragAndDropContainer. More...
 
class  Draggable3DOrientation
 Stores a 3D orientation, which can be rotated by dragging with the mouse. More...
 
class  Drawable
 The base class for objects which can draw themselves, e.g. More...
 
class  DrawableButton
 A button that displays a Drawable. More...
 
class  DrawableComposite
 A drawable object which acts as a container for a set of other Drawables. More...
 
class  DrawableImage
 A drawable object which is a bitmap image. More...
 
class  DrawablePath
 A drawable object which renders a filled or outlined shape. More...
 
class  DrawableRectangle
 A Drawable object which draws a rectangle. More...
 
class  DrawableShape
 A base class implementing common functionality for Drawable classes which consist of some kind of filled and stroked outline. More...
 
class  DrawableText
 A drawable object which renders a line of text. More...
 
struct  DropShadow
 Defines a drop-shadow effect. More...
 
class  DropShadowEffect
 An effect filter that adds a drop-shadow behind the image's content. More...
 
class  DropShadower
 Adds a drop-shadow to a component. More...
 
class  DummyCriticalSection
 A class that can be used in place of a real CriticalSection object, but which doesn't perform any locking. More...
 
class  DynamicLibrary
 Handles the opening and closing of DLLs. More...
 
class  DynamicObject
 Represents a dynamically implemented object. More...
 
class  EdgeTable
 A table of horizontal scan-line segments - used for rasterising Paths. More...
 
class  Expression
 A class for dynamically evaluating simple numeric expressions. More...
 
struct  ExtensionsVisitor
 Create a derived implementation of this class and pass it to AudioPluginInstance::getExtensions() to retrieve format-specific information about a plugin instance. More...
 
struct  ExtraLookAndFeelBaseClasses
 This class is used to hold a few look and feel base classes which are associated with classes that may not be present because they're from modules other than juce_gui_basics. More...
 
class  File
 Represents a local file or directory. More...
 
class  FileBasedDocument
 A class to take care of the logic involved with the loading/saving of some kind of document. More...
 
class  FileBrowserComponent
 A component for browsing and selecting a file or directory to open or save. More...
 
class  FileBrowserListener
 A listener for user selection events in a file browser. More...
 
class  FileChooser
 Creates a dialog box to choose a file or directory to load or save. More...
 
class  FileChooserDialogBox
 A file open/save dialog box. More...
 
class  FileDragAndDropTarget
 Components derived from this class can have files dropped onto them by an external application. More...
 
class  FileFilter
 Interface for deciding which files are suitable for something. More...
 
class  FileInputSource
 A type of InputSource that represents a normal file. More...
 
class  FileInputStream
 An input stream that reads from a local file. More...
 
class  FileListComponent
 A component that displays the files in a directory as a listbox. More...
 
class  FileLogger
 A simple implementation of a Logger that writes to a file. More...
 
class  FilenameComponent
 Shows a filename as an editable text box, with a 'browse' button and a drop-down list for recently selected files. More...
 
class  FilenameComponentListener
 Listens for events happening to a FilenameComponent. More...
 
class  FileOutputStream
 An output stream that writes into a local file. More...
 
class  FilePreviewComponent
 Base class for components that live inside a file chooser dialog box and show previews of the files that get selected. More...
 
class  FileSearchPath
 Represents a set of folders that make up a search path. More...
 
class  FileSearchPathListComponent
 Shows a set of file paths in a list, allowing them to be added, removed or re-ordered. More...
 
class  FileTreeComponent
 A component that displays the files in a directory as a treeview. More...
 
class  FillType
 Represents a colour or fill pattern to use for rendering paths. More...
 
class  FlacAudioFormat
 Reads and writes the lossless-compression FLAC audio format. More...
 
class  FlexBox
 Represents a FlexBox container, which contains and manages the layout of a set of FlexItem objects. More...
 
class  FlexItem
 Describes the properties of an item inside a FlexBox container. More...
 
class  FloatVectorOperations
 A collection of simple vector operations on arrays of floats, accelerated with SIMD instructions where possible. More...
 
class  FocusChangeListener
 Classes can implement this interface and register themselves with the Desktop class to receive callbacks when the currently focused component changes. More...
 
class  FocusOutline
 Adds a focus outline to a component. More...
 
class  FocusTraverser
 Controls the order in which focus moves between components. More...
 
class  Font
 Represents a particular font, including its size, style, etc. More...
 
class  FragmentOverlay
 
class  GenericAudioProcessorEditor
 A type of UI component that displays the parameters of an AudioProcessor as a simple list of sliders, combo boxes and switches. More...
 
class  GenericInterpolator
 An interpolator base class for resampling streams of floats. More...
 
class  GenericScopedLock
 Automatically locks and unlocks a mutex object. More...
 
class  GenericScopedTryLock
 Automatically locks and unlocks a mutex object. More...
 
class  GenericScopedUnlock
 Automatically unlocks and re-locks a mutex object. More...
 
class  GIFImageFormat
 A subclass of ImageFileFormat for reading GIF files. More...
 
class  GlobalRef
 
class  GlowEffect
 A component effect that adds a coloured blur around the component's contents. More...
 
class  GlyphArrangement
 A set of glyphs, each with a position. More...
 
class  Graphics
 A graphics context, used for drawing a component or image. More...
 
class  Grid
 Container that handles geometry for grid layouts (fixed columns and rows) using a set of declarative rules. More...
 
class  GridItem
 Defines an item in a Grid. More...
 
class  GroupComponent
 A component that draws an outline around itself and has an optional title at the top, for drawing an outline around a group of controls. More...
 
class  GZIPCompressorOutputStream
 A stream which uses zlib to compress the data written into it. More...
 
class  GZIPDecompressorInputStream
 This stream will decompress a source-stream using zlib. More...
 
class  HashMap
 Holds a set of mappings between some key/value pairs. More...
 
class  HeapBlock
 Very simple container class to hold a pointer to some data on the heap. More...
 
class  HeavyweightLeakedObjectDetector
 This class is a useful way of tracking down hard to find memory leaks when the regular LeakedObjectDetector isn't enough. More...
 
class  HiddenMessageWindow
 
class  HighResolutionTimer
 A high-resolution periodic timer. More...
 
struct  HostedAudioProcessorParameter
 A parameter with functions that are useful for plugin hosts. More...
 
struct  HostProvidedContextMenu
 This wraps a context menu for a specific parameter, as provided by the host. More...
 
class  HWNDComponent
 A Windows-specific class that can create and embed a HWND inside itself. More...
 
class  HyperlinkButton
 A button showing an underlined weblink, that will launch the link when it's clicked. More...
 
class  Identifier
 Represents a string identifier, designed for accessing properties by name. More...
 
class  IIRCoefficients
 A set of coefficients for use in an IIRFilter object. More...
 
class  IIRFilter
 An IIR filter that can perform low, high, or band-pass filtering on an audio signal, and which attempts to implement basic thread-safety. More...
 
class  IIRFilterAudioSource
 An AudioSource that performs an IIR filter on another source. More...
 
class  IIRFilterBase
 An IIR filter that can perform low, high, or band-pass filtering on an audio signal. More...
 
class  Image
 Holds a fixed-size bitmap. More...
 
class  ImageButton
 As the title suggests, this is a button containing an image. More...
 
class  ImageCache
 A global cache of images that have been loaded from files or memory. More...
 
class  ImageComponent
 A component that simply displays an image. More...
 
class  ImageConvolutionKernel
 Represents a filter kernel to use in convoluting an image. More...
 
class  ImageEffectFilter
 A graphical effect filter that can be applied to components. More...
 
class  ImageFileFormat
 Base-class for codecs that can read and write image file formats such as PNG, JPEG, etc. More...
 
class  ImagePixelData
 This is a base class for holding image data in implementation-specific ways. More...
 
class  ImagePreviewComponent
 A simple preview component that shows thumbnails of image files. More...
 
class  ImageType
 This base class is for handlers that control a type of image manipulation format, e.g. More...
 
class  InAppPurchases
 Provides in-app purchase functionality. More...
 
class  InputSource
 A lightweight object that can create a stream to read some kind of resource. More...
 
class  InputStream
 The base class for streams that read data. More...
 
class  Interpolators
 A collection of different interpolators for resampling streams of floats. More...
 
class  InterprocessConnection
 Manages a simple two-way messaging connection to another process, using either a socket or a named pipe as the transport medium. More...
 
class  InterprocessConnectionServer
 An object that waits for client sockets to connect to a port on this host, and creates InterprocessConnection objects for each one. More...
 
class  InterProcessLock
 Acts as a critical section which processes can use to block each other. More...
 
class  iOSAudioIODevice
 
class  IPAddress
 Represents an IP address. More...
 
class  JavascriptEngine
 A simple javascript interpreter! More...
 
class  JNIClassBase
 
class  JPEGImageFormat
 A subclass of ImageFileFormat for reading and writing JPEG files. More...
 
class  JSON
 Contains static methods for converting JSON-formatted text to and from var objects. More...
 
class  JUCEApplication
 An instance of this class is used to specify initialisation and shutdown code for the application. More...
 
class  JUCEApplicationBase
 Abstract base class for application classes. More...
 
class  JUCESplashScreen
 The standard JUCE splash screen component. More...
 
class  JuceWindowIdentifier
 
class  Justification
 Represents a type of justification to be used when positioning graphical items. More...
 
class  KeyboardComponentBase
 A base class for drawing a custom MIDI keyboard component. More...
 
class  KeyboardFocusTraverser
 Controls the order in which keyboard focus moves between components. More...
 
class  KeyGeneration
 Contains static utilities for generating key-files that can be unlocked by the OnlineUnlockStatus class. More...
 
class  KeyListener
 Receives callbacks when keys are pressed. More...
 
class  KeyMappingEditorComponent
 A component to allow editing of the keymaps stored by a KeyPressMappingSet object. More...
 
class  KeyPress
 Represents a key press, including any modifier keys that are needed. More...
 
class  KeyPressMappingSet
 Manages and edits a list of keypresses, which it uses to invoke the appropriate command in an ApplicationCommandManager. More...
 
class  KnownPluginList
 Manages a list of plugin types. More...
 
class  Label
 A component that displays a text string, and can optionally become a text editor when clicked. More...
 
class  LAMEEncoderAudioFormat
 An AudioFormat class which can use an installed version of the LAME mp3 encoder to encode a file. More...
 
class  LassoComponent
 A component that acts as a rectangular selection region, which you drag with the mouse to select groups of objects (in conjunction with a SelectedItemSet). More...
 
class  LassoSource
 A class used by the LassoComponent to manage the things that it selects. More...
 
class  LeakedObjectDetector
 Embedding an instance of this class inside another class can be used as a low-overhead way of detecting leaked instances. More...
 
class  Line
 Represents a line. More...
 
class  LinkedListPointer
 Helps to manipulate singly-linked lists of objects. More...
 
class  ListBox
 A list of items that can be scrolled vertically. More...
 
class  ListBoxModel
 A subclass of this is used to drive a ListBox. More...
 
class  ListenerList
 Holds a set of objects and can invoke a member function callback on each object in the set with a single call. More...
 
class  LocalisedStrings
 Used to convert strings to localised foreign-language versions. More...
 
class  LocalRef
 
class  Logger
 Acts as an application-wide logging class. More...
 
class  LookAndFeel
 LookAndFeel objects define the appearance of all the JUCE widgets, and subclasses can be used to apply different 'skins' to the application. More...
 
class  LookAndFeel_V1
 The original JUCE look-and-feel, as used back from 2002 to about 2007ish. More...
 
class  LookAndFeel_V2
 This LookAndFeel subclass implements the juce style from around 2008-12. More...
 
class  LookAndFeel_V3
 The latest JUCE look-and-feel style, as introduced in 2013. More...
 
class  LookAndFeel_V4
 The latest JUCE look-and-feel style, as introduced in 2017. More...
 
class  LowLevelGraphicsContext
 Interface class for graphics context objects, used internally by the Graphics class. More...
 
class  LowLevelGraphicsPostScriptRenderer
 An implementation of LowLevelGraphicsContext that turns the drawing operations into a PostScript document. More...
 
class  LowLevelGraphicsSoftwareRenderer
 A lowest-common-denominator implementation of LowLevelGraphicsContext that does all its rendering in memory. More...
 
class  LuaTokeniser
 @tags{GUI} More...
 
class  MACAddress
 Represents a MAC network card adapter address ID. More...
 
class  MarkerList
 Holds a set of named marker points along a one-dimensional axis. More...
 
struct  MathConstants
 Commonly used mathematical constants. More...
 
class  Matrix3D
 A 4x4 3D transformation matrix. More...
 
struct  MaxNumFileHandlesInitialiser
 
class  MD5
 MD5 checksum class. More...
 
class  MemoryAudioSource
 An AudioSource which takes some float audio data as an input. More...
 
class  MemoryBlock
 A class to hold a resizable block of raw data. More...
 
class  MemoryInputStream
 Allows a block of data to be accessed as a stream. More...
 
class  MemoryMappedAudioFormatReader
 A specialised type of AudioFormatReader that uses a MemoryMappedFile to read directly from an audio file. More...
 
class  MemoryMappedFile
 Maps a file into virtual memory for easy reading and/or writing. More...
 
class  MemoryOutputStream
 Writes data to an internal memory buffer, which grows as required. More...
 
class  MenuBarComponent
 A menu bar component. More...
 
class  MenuBarModel
 A class for controlling MenuBar components. More...
 
class  Message
 The base class for objects that can be sent to a MessageListener. More...
 
class  MessageBoxOptions
 Class used to create a set of options to pass to the AlertWindow and NativeMessageBox methods for showing dialog boxes. More...
 
class  MessageListener
 MessageListener subclasses can post and receive Message objects. More...
 
class  MessageManager
 This class is in charge of the application's event-dispatch loop. More...
 
class  MessageManagerLock
 Used to make sure that the calling thread has exclusive access to the message loop. More...
 
class  MessageQueue
 
class  MessageThread
 
struct  MetaSuperFn
 
struct  MetaSuperFn< T, false >
 
class  MidiBuffer
 Holds a sequence of time-stamped midi events. More...
 
class  MidiBufferIterator
 An iterator to move over contiguous raw MIDI data, which Allows iterating over a MidiBuffer using C++11 range-for syntax. More...
 
class  MidiDataConcatenator
 Helper class that takes chunks of incoming midi bytes, packages them into messages, and dispatches them to a midi callback. More...
 
struct  MidiDeviceInfo
 This struct contains information about a MIDI input or output device. More...
 
class  MidiFile
 Reads/writes standard midi format files. More...
 
class  MidiInput
 Represents a midi input device. More...
 
class  MidiInputCallback
 Receives incoming messages from a physical MIDI input device. More...
 
class  MidiKeyboardComponent
 A component that displays a piano keyboard, whose notes can be clicked on. More...
 
class  MidiKeyboardState
 Represents a piano keyboard, keeping track of which keys are currently pressed. More...
 
class  MidiMessage
 Encapsulates a MIDI message. More...
 
class  MidiMessageCollector
 Collects incoming realtime MIDI messages and turns them into blocks suitable for processing by a block-based audio callback. More...
 
struct  MidiMessageMetadata
 A view of MIDI message data stored in a contiguous buffer. More...
 
class  MidiMessageSequence
 A sequence of timestamped midi messages. More...
 
class  MidiOutput
 Represents a midi output device. More...
 
class  MidiRPNDetector
 Parses a stream of MIDI data to assemble RPN and NRPN messages from their constituent MIDI CC messages. More...
 
class  MidiRPNGenerator
 Generates an appropriate sequence of MIDI CC messages to represent an RPN or NRPN message. More...
 
struct  MidiRPNMessage
 Represents a MIDI RPN (registered parameter number) or NRPN (non-registered parameter number) message. More...
 
class  MixerAudioSource
 An AudioSource that mixes together the output of a set of other AudioSources. More...
 
class  ModalCallbackFunction
 This class provides some handy utility methods for creating ModalComponentManager::Callback objects that will invoke a static function with some parameters when a modal component is dismissed. More...
 
class  ModalComponentManager
 Manages the system's stack of modal components. More...
 
class  ModifierKeys
 Represents the state of the mouse buttons and modifier keys. More...
 
class  MountedVolumeListChangeDetector
 An instance of this class will provide callbacks when drives are mounted or unmounted on the system. More...
 
class  MouseCursor
 Represents a mouse cursor image. More...
 
class  MouseEvent
 Contains position and status information about a mouse event. More...
 
class  MouseInactivityDetector
 This object watches for mouse-events happening within a component, and if the mouse remains still for long enough, triggers an event to indicate that it has become inactive. More...
 
class  MouseInputSource
 Represents a linear source of mouse events from a mouse device or individual finger in a multi-touch environment. More...
 
class  MouseListener
 A MouseListener can be registered with a component to receive callbacks about mouse events that happen to that component. More...
 
struct  MouseWheelDetails
 Contains status information about a mouse wheel event. More...
 
class  MP3AudioFormat
 Software-based MP3 decoding format (doesn't currently provide an encoder). More...
 
class  MPEChannelAssigner
 This class handles the assignment of new MIDI notes to member channels of an active MPE zone. More...
 
class  MPEChannelRemapper
 This class handles the logic for remapping MIDI note messages from multiple MPE sources onto a specified MPE zone. More...
 
class  MPEInstrument
 This class represents an instrument handling MPE. More...
 
class  MPEKeyboardComponent
 A component that displays an MPE-compatible keyboard, whose notes can be clicked on. More...
 
class  MPEMessages
 This helper class contains the necessary helper functions to generate MIDI messages that are exclusive to MPE, such as defining the upper and lower MPE zones and setting per-note and master pitchbend ranges. More...
 
struct  MPENote
 This struct represents a playing MPE note. More...
 
class  MPESynthesiser
 Base class for an MPE-compatible musical device that can play sounds. More...
 
struct  MPESynthesiserBase
 Derive from this class to create a basic audio generator capable of MPE. More...
 
class  MPESynthesiserVoice
 Represents an MPE voice that an MPESynthesiser can use to play a sound. More...
 
class  MPEValue
 This class represents a single value for any of the MPE dimensions of control. More...
 
struct  MPEZone
 This struct represents an MPE zone. More...
 
class  MPEZoneLayout
 This class represents the current MPE zone layout of a device capable of handling MPE. More...
 
class  MultiChoicePropertyComponent
 A PropertyComponent that shows its value as an expandable list of ToggleButtons. More...
 
class  MultiDocumentPanel
 A component that contains a set of other components either in floating windows or tabs. More...
 
class  MultiDocumentPanelWindow
 This is a derivative of DocumentWindow that is used inside a MultiDocumentPanel component. More...
 
class  MultiTimer
 A type of timer class that can run multiple timers with different frequencies, all of which share a single callback. More...
 
class  MultiTouchMapper
 
class  NamedPipe
 A cross-process pipe that can have data written to and read from it. More...
 
class  NamedValueSet
 Holds a set of named var objects. More...
 
class  NativeImageType
 An image storage type which holds the pixels using whatever is the default storage format on the current platform. More...
 
class  NativeMessageBox
 This class contains some static methods for showing native alert windows. More...
 
struct  NeedsStret
 
struct  NeedsStret< void >
 
struct  NetworkServiceDiscovery
 Contains classes that implement a simple protocol for broadcasting the availability and location of a discoverable service on the local network, and for maintaining a list of known services. More...
 
class  NewLine
 This class is used for represent a new-line character sequence. More...
 
class  NormalisableRange
 Represents a mapping between an arbitrary range of values and a normalised 0->1 range. More...
 
struct  NSObjectDeleter
 
struct  NSViewCallbackInterface
 
class  NSViewComponent
 A Mac-specific class that can create and embed an NSView inside itself. More...
 
struct  NSViewFrameChangeCallbackClass
 
class  NSViewFrameWatcher
 
struct  NullCheckedInvocation
 Some helper methods for checking a callable object before invoking with the specified arguments. More...
 
class  ObjCBlock
 
struct  ObjCClass
 
class  ObjCObjectHandle
 
class  OggVorbisAudioFormat
 Reads and writes the Ogg-Vorbis audio format. More...
 
class  OnlineUnlockForm
 Acts as a GUI which asks the user for their details, and calls the appropriate methods on your OnlineUnlockStatus object to attempt to register the app. More...
 
class  OnlineUnlockStatus
 A base class for online unlocking systems. More...
 
class  OpenGLAppComponent
 A base class for writing simple one-page graphical apps. More...
 
class  OpenGLContext
 Creates an OpenGL context, which can be attached to a component. More...
 
struct  OpenGLExtensionFunctions
 This class contains a generated list of OpenGL extension functions, which are either dynamically loaded for a specific GL context, or simply call-through to the appropriate OS function where available. More...
 
class  OpenGLFrameBuffer
 Creates an openGL frame buffer. More...
 
struct  OpenGLGraphicsContextCustomShader
 Used to create custom shaders for use with an openGL 2D rendering context. More...
 
class  OpenGLHelpers
 A set of miscellaneous openGL helper functions. More...
 
class  OpenGLImageType
 A type of ImagePixelData that stores its image data in an OpenGL framebuffer, allowing a JUCE Image object to wrap a framebuffer. More...
 
class  OpenGLPixelFormat
 Represents the various properties of an OpenGL pixel format. More...
 
class  OpenGLRenderer
 A base class that should be implemented by classes which want to render openGL on a background thread. More...
 
class  OpenGLShaderProgram
 Manages an OpenGL shader program. More...
 
class  OpenGLTexture
 Creates an openGL texture from an Image. More...
 
class  OptionalScopedPointer
 Holds a pointer to an object which can optionally be deleted when this pointer goes out of scope. More...
 
class  OSCAddress
 An OSC address. More...
 
class  OSCAddressPattern
 An OSC address pattern. More...
 
class  OSCArgument
 An OSC argument. More...
 
class  OSCBundle
 An OSC bundle. More...
 
struct  OSCColour
 Holds a 32-bit RGBA colour for passing to and from an OSCArgument. More...
 
struct  OSCException
 Base class for exceptions that can be thrown by methods in the OSC module. More...
 
struct  OSCFormatError
 Exception type thrown when the OSC module fails to parse something because of a data format not compatible with the OpenSoundControl 1.0 specification. More...
 
struct  OSCInternalError
 Exception type thrown in cases of unexpected errors in the OSC module. More...
 
class  OSCMessage
 An OSC Message. More...
 
class  OSCReceiver
 A class for receiving OSC data. More...
 
class  OSCSender
 An OSC message sender. More...
 
class  OSCTimeTag
 An OSC time tag. More...
 
class  OSCTypes
 The definitions of supported OSC types and their associated OSC type tags, as defined in the OpenSoundControl 1.0 specification. More...
 
class  OutputStream
 The base class for streams that write data to some kind of destination. More...
 
class  OwnedArray
 An array designed for holding objects. More...
 
class  Parallelogram
 Represents a parallelogram that is defined by 3 points. More...
 
class  ParameterAttachment
 Used to implement 'attachments' or 'controllers' that link a plug-in parameter to a UI element. More...
 
class  ParameterID
 Combines a parameter ID and a version hint. More...
 
class  Path
 A path is a sequence of lines and curves that may either form a closed shape or be open-ended. More...
 
class  PathFlatteningIterator
 Flattens a Path object into a series of straight-line sections. More...
 
class  PathStrokeType
 Describes a type of stroke used to render a solid outline along a path. More...
 
struct  PenDetails
 Contains status information about a pen event. More...
 
class  PerformanceCounter
 A timer for measuring performance of code and dumping the results to a file. More...
 
class  PixelAlpha
 Represents an 8-bit single-channel pixel, and can perform compositing operations on it. More...
 
class  PixelARGB
 Represents a 32-bit INTERNAL pixel with premultiplied alpha, and can perform compositing operations with it. More...
 
class  PixelRGB
 Represents a 24-bit RGB pixel, and can perform compositing operations on it. More...
 
class  PluginDescription
 A small class to represent some facts about a particular type of plug-in. More...
 
class  PluginDirectoryScanner
 Scans a directory for plugins, and adds them to a KnownPluginList. More...
 
class  PluginHostType
 A useful utility class to determine the host or DAW in which your plugin is loaded. More...
 
class  PluginListComponent
 A component displaying a list of plugins, with options to scan for them, add, remove and sort them. More...
 
class  PNGImageFormat
 A subclass of ImageFileFormat for reading and writing PNG files. More...
 
class  Point
 A pair of (x, y) coordinates. More...
 
class  PopupMenu
 Creates and displays a popup-menu. More...
 
class  PositionableAudioSource
 A type of AudioSource which can be repositioned. More...
 
class  PositionedGlyph
 A glyph from a particular font, with a particular size, style, typeface and position. More...
 
class  PreferencesPanel
 A component with a set of buttons at the top for changing between pages of preferences. More...
 
class  Primes
 Prime number creation class. More...
 
class  Process
 Represents the current executable's process. More...
 
class  ProgressBar
 A progress bar component. More...
 
class  PropertiesFile
 Wrapper on a file that stores a list of key/value data pairs. More...
 
class  PropertyComponent
 A base class for a component that goes in a PropertyPanel and displays one of an item's properties. More...
 
class  PropertyPanel
 A panel that holds a list of PropertyComponent objects. More...
 
class  PropertySet
 A set of named property values, which can be strings, integers, floating point, etc. More...
 
class  PushNotifications
 Singleton class responsible for push notifications functionality. More...
 
class  Quaternion
 Holds a quaternion (a 3D vector and a scalar value). More...
 
class  Random
 A random number generator. More...
 
class  Range
 A general-purpose range object, that simply represents any linear range with a start and end point. More...
 
class  RangedAudioParameter
 This abstract base class is used by some AudioProcessorParameter helper classes. More...
 
class  RangedAudioParameterAttributes
 
class  RangedDirectoryIterator
 Allows iterating over files and folders using C++11 range-for syntax. More...
 
class  ReadWriteLock
 A critical section that allows multiple simultaneous readers. More...
 
class  RecentlyOpenedFilesList
 Manages a set of files for use as a list of recently-opened documents. More...
 
class  Rectangle
 Manages a rectangle and allows geometric operations to be performed on it. More...
 
class  RectangleList
 Maintains a set of rectangles as a complex region. More...
 
class  RectanglePlacement
 Defines the method used to position some kind of rectangular object within a rectangular viewport. More...
 
class  ReferenceCountedArray
 Holds a list of objects derived from ReferenceCountedObject, or which implement basic reference-count handling methods. More...
 
class  ReferenceCountedObject
 A base class which provides methods for reference-counting. More...
 
class  ReferenceCountedObjectPtr
 A smart-pointer class which points to a reference-counted object. More...
 
class  RelativeCoordinate
 Expresses a coordinate as a dynamically evaluated expression. More...
 
class  RelativeCoordinatePositionerBase
 Base class for Component::Positioners that are based upon relative coordinates. More...
 
class  RelativeParallelogram
 A parallelogram defined by three RelativePoint positions. More...
 
class  RelativePoint
 An X-Y position stored as a pair of RelativeCoordinate values. More...
 
class  RelativePointPath
 A path object that consists of RelativePoint coordinates rather than the normal fixed ones. More...
 
class  RelativeRectangle
 A rectangle stored as a set of RelativeCoordinate values. More...
 
class  RelativeTime
 A relative measure of time. More...
 
class  ResamplingAudioSource
 A type of AudioSource that takes an input source and changes its sample rate. More...
 
struct  Reservoir
 Helper functions for managing buffered readers. More...
 
class  ResizableBorderComponent
 A component that resizes its parent component when dragged. More...
 
class  ResizableCornerComponent
 A component that resizes a parent component when dragged. More...
 
class  ResizableEdgeComponent
 A component that resizes its parent component when dragged. More...
 
class  ResizableWindow
 A base class for top-level windows that can be dragged around and resized. More...
 
class  Result
 Represents the 'success' or 'failure' of an operation, and holds an associated error message to describe the error when there's a failure. More...
 
class  Reverb
 Performs a simple reverb effect on a stream of audio data. More...
 
class  ReverbAudioSource
 An AudioSource that uses the Reverb class to apply a reverb to another AudioSource. More...
 
class  RSAKey
 RSA public/private key-pair encryption class. More...
 
class  RuntimePermissions
 
class  SamplerSound
 A subclass of SynthesiserSound that represents a sampled audio clip. More...
 
class  SamplerVoice
 A subclass of SynthesiserVoice that can play a SamplerSound. More...
 
class  ScaledImage
 An image that will be resampled before it is drawn. More...
 
class  ScopedAutoReleasePool
 A handy C++ wrapper that creates and deletes an NSAutoreleasePool object using RAII. More...
 
class  ScopedDPIAwarenessDisabler
 A Windows-specific class that temporarily sets the DPI awareness context of the current thread to be DPI unaware and resets it to the previous context when it goes out of scope. More...
 
class  ScopedJuceInitialiser_GUI
 A utility object that helps you initialise and shutdown JUCE correctly using an RAII pattern. More...
 
class  ScopedLowPowerModeDisabler
 Disables low-power-mode for the duration of an instance's lifetime. More...
 
class  ScopedNoDenormals
 Helper class providing an RAII-based mechanism for temporarily disabling denormals on your CPU. More...
 
class  ScopedReadLock
 Automatically locks and unlocks a ReadWriteLock object. More...
 
class  ScopedThreadDPIAwarenessSetter
 
class  ScopedTimeMeasurement
 Simple RAII class for measuring the time spent in a scope. More...
 
class  ScopedValueSetter
 Helper class providing an RAII-based mechanism for temporarily setting and then re-setting a value. More...
 
class  ScopedWriteLock
 Automatically locks and unlocks a ReadWriteLock object. More...
 
class  ScrollBar
 A scrollbar component. More...
 
class  SelectedItemSet
 Manages a list of selectable items. More...
 
class  SettableTooltipClient
 An implementation of TooltipClient that stores the tooltip string and a method for changing it. More...
 
class  SHA256
 SHA-256 secure hash generator. More...
 
class  ShapeButton
 A button that contains a filled shape. More...
 
class  SharedResourcePointer
 A smart-pointer that automatically creates and manages the lifetime of a shared static instance of a class. More...
 
class  SidePanel
 A component that is positioned on either the left- or right-hand side of its parent, containing a header and some content. More...
 
class  SingleThreadedAbstractFifo
 Encapsulates the logic for a single-threaded FIFO. More...
 
class  SingleThreadedIIRFilter
 An IIR filter that can perform low, high, or band-pass filtering on an audio signal, with no thread-safety guarantees. More...
 
class  SingleThreadedReferenceCountedObject
 Adds reference-counting to an object. More...
 
struct  SingletonHolder
 Used by the JUCE_DECLARE_SINGLETON macros to manage a static pointer to a singleton instance. More...
 
class  Slider
 A slider control for changing a value. More...
 
class  SliderParameterAttachment
 An object of this class maintains a connection between a Slider and a plug-in parameter. More...
 
class  SliderPropertyComponent
 A PropertyComponent that shows its value as a slider. More...
 
class  SmoothedValue
 A utility class for values that need smoothing to avoid audio glitches. More...
 
class  SmoothedValueBase
 A base class for the smoothed value classes. More...
 
class  SoftwareImageType
 An image storage type which holds the pixels in-memory as a simple block of values. More...
 
class  SortedSet
 Holds a set of unique primitive objects, such as ints or doubles. More...
 
class  SoundPlayer
 A simple sound player that you can add to the AudioDeviceManager to play simple sounds. More...
 
class  SparseSet
 Holds a set of primitive values, storing them as a set of ranges. More...
 
struct  SpeakerMappings
 Structure for VST speaker mappings. More...
 
class  SpinLock
 A simple spin-lock class that can be used as a simple, low-overhead mutex for uncontended situations. More...
 
class  SplashScreen
 A component for showing a splash screen while your app starts up. More...
 
class  StandaloneFilterWindow
 A class that can be used to run a simple standalone application containing your filter. More...
 
class  StandalonePluginHolder
 An object that creates and plays a standalone instance of an AudioProcessor. More...
 
class  StatisticsAccumulator
 A class that measures various statistics about a series of floating point values that it is given. More...
 
class  StreamingSocket
 A wrapper for a streaming (TCP) socket. More...
 
class  StretchableLayoutManager
 For laying out a set of components, where the components have preferred sizes and size limits, but where they are allowed to stretch to fill the available space. More...
 
class  StretchableLayoutResizerBar
 A component that acts as one of the vertical or horizontal bars you see being used to resize panels in a window. More...
 
class  StretchableObjectResizer
 A utility class for fitting a set of objects whose sizes can vary between a minimum and maximum size, into a space. More...
 
class  String
 The JUCE String class! More...
 
class  StringArray
 A special array for holding a list of strings. More...
 
class  StringPairArray
 A container for holding a set of strings which are keyed by another string. More...
 
class  StringPool
 A StringPool holds a set of shared strings, which reduces storage overheads and improves comparison speed when dealing with many duplicate strings. More...
 
class  StringRef
 A simple class for holding temporary references to a string literal or String. More...
 
class  SubregionStream
 Wraps another input stream, and reads from a specific part of it. More...
 
struct  SurfaceHolderCallback
 
class  Synthesiser
 Base class for a musical device that can play sounds. More...
 
class  SynthesiserSound
 Describes one of the sounds that a Synthesiser can play. More...
 
class  SynthesiserVoice
 Represents a voice that a Synthesiser can use to play a SynthesiserSound. More...
 
class  SystemAudioVolume
 Contains functions to control the system's master volume. More...
 
class  SystemClipboard
 Handles reading/writing to the system's clipboard. More...
 
class  SystemStats
 Contains methods for finding out about the current hardware and OS configuration. More...
 
class  SystemTrayIconComponent
 This component sits in the taskbar tray as a small icon. More...
 
class  TabBarButton
 In a TabbedButtonBar, this component is used for each of the buttons. More...
 
class  TabbedButtonBar
 A vertical or horizontal bar containing tabs that you can select. More...
 
class  TabbedComponent
 A component with a TabbedButtonBar along one of its sides. More...
 
class  TableHeaderComponent
 A component that displays a strip of column headings for a table, and allows these to be resized, dragged around, etc. More...
 
class  TableListBox
 A table of cells, using a TableHeaderComponent as its header. More...
 
class  TableListBoxModel
 One of these is used by a TableListBox as the data model for the table's contents. More...
 
class  TemporaryFile
 Manages a temporary file, which will be deleted when this object is deleted. More...
 
class  TextButton
 A button that uses the standard lozenge-shaped background with a line of text on it. More...
 
class  TextDiff
 Calculates and applies a sequence of changes to convert one text string into another. More...
 
class  TextDragAndDropTarget
 Components derived from this class can have text dropped onto them by an external application. More...
 
class  TextEditor
 An editable text box. More...
 
struct  TextEditorKeyMapper
 This class is used to invoke a range of text-editor navigation methods on an object, based upon a keypress event. More...
 
class  TextInputTarget
 An abstract base class which can be implemented by components that function as text editors. More...
 
class  TextLayout
 A Pre-formatted piece of text, which may contain multiple fonts and colours. More...
 
class  TextPropertyComponent
 A PropertyComponent that shows its value as editable text. More...
 
class  Thread
 Encapsulates a thread. More...
 
class  ThreadedAnalyticsDestination
 A base class for dispatching analytics events on a dedicated thread. More...
 
class  ThreadLocalValue
 Provides cross-platform support for thread-local objects. More...
 
class  ThreadPool
 A set of threads that will run a list of jobs. More...
 
class  ThreadPoolJob
 A task that is executed by a ThreadPool object. More...
 
class  ThreadWithProgressWindow
 A thread that automatically pops up a modal dialog box with a progress bar and cancel button while it's busy running. More...
 
class  Time
 Holds an absolute date and time. More...
 
class  Timer
 Makes repeated callbacks to a virtual method at a specified time interval. More...
 
class  TimeSliceClient
 Used by the TimeSliceThread class. More...
 
class  TimeSliceThread
 A thread that keeps a list of clients, and calls each one in turn, giving them all a chance to run some sort of short task. More...
 
class  ToggleButton
 A button that can be toggled on/off. More...
 
class  ToneGeneratorAudioSource
 A simple AudioSource that generates a sine wave. More...
 
class  Toolbar
 A toolbar component. More...
 
class  ToolbarButton
 A type of button designed to go on a toolbar. More...
 
class  ToolbarItemComponent
 A component that can be used as one of the items in a Toolbar. More...
 
class  ToolbarItemFactory
 A factory object which can create ToolbarItemComponent objects. More...
 
class  ToolbarItemPalette
 A component containing a list of toolbar items, which the user can drag onto a toolbar to add them. More...
 
class  TooltipClient
 Components that want to use pop-up tooltips should implement this interface. More...
 
class  TooltipWindow
 A window that displays a pop-up tooltip when the mouse hovers over another component. More...
 
class  TopLevelWindow
 A base class for top-level windows. More...
 
class  TracktionMarketplaceStatus
 An implementation of the OnlineUnlockStatus class which talks to the Tracktion Marketplace server. More...
 
class  TreeView
 A tree-view component. More...
 
class  TreeViewItem
 An item in a TreeView. More...
 
class  Typeface
 A typeface represents a size-independent font. More...
 
class  UIAExpandCollapseProvider
 
class  UIAGridItemProvider
 
class  UIAGridProvider
 
class  UIAInvokeProvider
 
class  UIAProviderBase
 
class  UIARangeValueProvider
 
class  UIASelectionItemProvider
 
class  UIASelectionProvider
 
class  UIATextProvider
 
class  UIAToggleProvider
 
class  UIATransformProvider
 
class  UIAValueProvider
 
class  UIAWindowProvider
 
class  UIViewComponent
 An iOS-specific class that can create and embed an UIView inside itself. More...
 
class  UndoableAction
 Used by the UndoManager class to store an action which can be done and undone. More...
 
class  UndoManager
 Manages a list of undo/redo commands. More...
 
class  UnitTest
 This is a base class for classes that perform a unit test. More...
 
class  UnitTestRunner
 Runs a set of unit tests. More...
 
class  URL
 Represents a URL and has a bunch of useful functions to manipulate it. More...
 
class  URLInputSource
 A type of InputSource that represents a URL. More...
 
class  Uuid
 A universally unique 128-bit identifier. More...
 
struct  UUIDGetter
 
struct  UUIDGetter<::IUnknown >
 
class  Value
 Represents a shared variant value. More...
 
class  ValueTree
 A powerful tree structure that can be used to hold free-form data, and which can handle its own undo and redo behaviour. More...
 
class  ValueTreePropertyWithDefault
 This class acts as a wrapper around a property inside a ValueTree. More...
 
class  ValueTreeSynchroniser
 This class can be used to watch for all changes to the state of a ValueTree, and to convert them to a transmittable binary encoding. More...
 
class  var
 A variant class, that can be used to hold a range of primitive values. More...
 
struct  VariantConverter
 This template-overloaded class can be used to convert between var and custom types. More...
 
class  Vector3D
 A three-coordinate vector. More...
 
class  VideoComponent
 A component that can play a movie. More...
 
class  Viewport
 A Viewport is used to contain a larger child component, and allows the child to be automatically scrolled around. More...
 
struct  VST3ClientExtensions
 An interface to allow an AudioProcessor to implement extended VST3-specific functionality. More...
 
struct  VSTCallbackHandler
 An interface to allow an AudioProcessor to send and receive VST specific calls from the host. More...
 
class  VSTPluginFormat
 Implements a plugin format manager for VSTs. More...
 
class  WaitableEvent
 Allows threads to wait for events triggered by other threads. More...
 
class  WavAudioFormat
 Reads and Writes WAV format audio files. More...
 
class  WeakReference
 This class acts as a pointer which will automatically become null if the object to which it points is deleted. More...
 
class  WebBrowserComponent
 A component that displays an embedded web browser. More...
 
class  WebInputStream
 An InputStream which can be used to read from a given URL. More...
 
class  WebView2Preferences
 Class used to create a set of preferences to pass to the WindowsWebView2WebBrowserComponent wrapper constructor to modify aspects of its behaviour and settings. More...
 
class  Whirlpool
 Whirlpool hash class. More...
 
class  WildcardFileFilter
 A type of FileFilter that works by wildcard pattern matching. More...
 
struct  WindowsHooks
 
class  WindowsMediaAudioFormat
 Audio format which uses the Windows Media codecs (Windows only). More...
 
class  WindowsRegistry
 Contains some static helper functions for manipulating the MS Windows registry (Only available on Windows, of course!) More...
 
class  WindowsUIAWrapper
 
class  WindowsWebView2WebBrowserComponent
 If you have enabled the JUCE_USE_WIN_WEBVIEW2 flag then this wrapper will attempt to use the Microsoft Edge (Chromium) WebView2 control instead of IE on Windows. More...
 
class  WinRTWrapper
 
class  X11Symbols
 
class  XEmbedComponent
 A Linux-specific class that can embed a foreign X11 widget. More...
 
class  XmlDocument
 Parses a text-based XML document and creates an XmlElement object from it. More...
 
class  XmlElement
 Used to build a tree of elements representing an XML document. More...
 
class  XmlTokeniser
 @tags{GUI} More...
 
class  XWindowSystem
 
class  ZipFile
 Decodes a ZIP file from a stream. More...
 

Typedefs

using AudioSampleBuffer = AudioBuffer< float >
 A multi-channel buffer of 32-bit floating point audio samples. More...
 
using CatmullRomInterpolator = Interpolators::CatmullRom
 An interpolator for resampling a stream of floats using Catmull-Rom interpolation. More...
 
template<typename CFType >
using CFUniquePtr = std::unique_ptr< typename std::remove_pointer< CFType >::type, CFObjectDeleter< CFType > >
 
using ChildProcessMaster = ChildProcessCoordinator
 
using ChildProcessSlave = ChildProcessWorker
 
using CommandID = int
 A type used to hold the unique ID for an application command. More...
 
template<typename A , typename B >
using DisableIfSameOrDerived = typename std::enable_if_t<! std::is_base_of< A, std::remove_reference_t< B > >::value >
 Can be used to disable template constructors that would otherwise cause ambiguity with compiler-generated copy and move constructors. More...
 
typedef HWND__ * HWND
 
using int16 = signed short
 A platform-independent 16-bit signed integer type. More...
 
using int32 = signed int
 A platform-independent 32-bit signed integer type. More...
 
using int64 = long long
 A platform-independent 64-bit integer type. More...
 
using int8 = signed char
 A platform-independent 8-bit signed integer type. More...
 
using juce_wchar = wchar_t
 A platform-independent 32-bit unicode character type. More...
 
using LagrangeInterpolator = Interpolators::Lagrange
 An interpolator for resampling a stream of floats using 4-point lagrange interpolation. More...
 
using LinearInterpolator = Interpolators::Linear
 An interpolator for resampling a stream of floats using linear interpolation. More...
 
template<typename FloatType >
using LinearSmoothedValue = SmoothedValue< FloatType, ValueSmoothingTypes::Linear >
 
using MessageCallbackFunction = void *(void *userData)
 See MessageManager::callFunctionOnMessageThread() for use of this function type. More...
 
using MidiKeyboardStateListener = MidiKeyboardState::Listener
 
template<typename NSType >
using NSUniquePtr = std::unique_ptr< NSType, NSObjectDeleter >
 
using OSCType = char
 The type used for OSC type tags. More...
 
using OSCTypeList = Array< OSCType >
 The type used for OSC type tag strings. More...
 
using pointer_sized_int = int64
 A signed integer type that's guaranteed to be large enough to hold a pointer without truncating it. More...
 
using pointer_sized_uint = uint64
 An unsigned integer type that's guaranteed to be large enough to hold a pointer without truncating it. More...
 
using ScopedLock = CriticalSection::ScopedLockType
 Automatically locks and unlocks a CriticalSection object. More...
 
using ScopedTryLock = CriticalSection::ScopedTryLockType
 Automatically tries to lock and unlock a CriticalSection object. More...
 
using ScopedUnlock = CriticalSection::ScopedUnlockType
 Automatically unlocks and re-locks a CriticalSection object. More...
 
using ssize_t = pointer_sized_int
 
using uint16 = unsigned short
 A platform-independent 16-bit unsigned integer type. More...
 
using uint32 = unsigned int
 A platform-independent 32-bit unsigned integer type. More...
 
using uint64 = unsigned long long
 A platform-independent 64-bit unsigned integer type. More...
 
using uint8 = unsigned char
 A platform-independent 8-bit unsigned integer type. More...
 
using WindowedSincInterpolator = Interpolators::WindowedSinc
 An interpolator for resampling a stream of floats using high order windowed (hann) sinc interpolation, recommended for high quality resampling. More...
 
using ZeroOrderHoldInterpolator = Interpolators::ZeroOrderHold
 An interpolator for resampling a stream of floats using zero order hold interpolation. More...
 

Enumerations

enum  { kAudioUnitProperty_SupportsMPE = 58 }
 
enum  AccessibilityActionType {
  AccessibilityActionType::press,
  AccessibilityActionType::toggle,
  AccessibilityActionType::focus,
  AccessibilityActionType::showMenu
}
 An action that can be performed by an accessible UI element. More...
 
enum  AccessibilityEvent {
  AccessibilityEvent::valueChanged,
  AccessibilityEvent::titleChanged,
  AccessibilityEvent::structureChanged,
  AccessibilityEvent::textSelectionChanged,
  AccessibilityEvent::textChanged,
  AccessibilityEvent::rowSelectionChanged
}
 A list of events that can be notified to any subscribed accessibility clients. More...
 
enum  AccessibilityRole {
  AccessibilityRole::button,
  AccessibilityRole::toggleButton,
  AccessibilityRole::radioButton,
  AccessibilityRole::comboBox,
  AccessibilityRole::image,
  AccessibilityRole::slider,
  AccessibilityRole::label,
  AccessibilityRole::staticText,
  AccessibilityRole::editableText,
  AccessibilityRole::menuItem,
  AccessibilityRole::menuBar,
  AccessibilityRole::popupMenu,
  AccessibilityRole::table,
  AccessibilityRole::tableHeader,
  AccessibilityRole::column,
  AccessibilityRole::row,
  AccessibilityRole::cell,
  AccessibilityRole::hyperlink,
  AccessibilityRole::list,
  AccessibilityRole::listItem,
  AccessibilityRole::tree,
  AccessibilityRole::treeItem,
  AccessibilityRole::progressBar,
  AccessibilityRole::group,
  AccessibilityRole::dialogWindow,
  AccessibilityRole::window,
  AccessibilityRole::scrollBar,
  AccessibilityRole::tooltip,
  AccessibilityRole::splashScreen,
  AccessibilityRole::ignored,
  AccessibilityRole::unspecified
}
 The list of available roles for an AccessibilityHandler object. More...
 
enum  MessageBoxIconType {
  MessageBoxIconType::NoIcon,
  MessageBoxIconType::QuestionIcon,
  MessageBoxIconType::WarningIcon,
  MessageBoxIconType::InfoIcon
}
 The type of icon to show in the dialog box. More...
 
enum  MissingOpenGLDefinitions { JUCE_RGBA_FORMAT = ::juce::gl::GL_RGBA }
 
enum  NotificationType {
  dontSendNotification = 0,
  sendNotification = 1,
  sendNotificationSync,
  sendNotificationAsync
}
 These enums are used in various classes to indicate whether a notification event should be sent out. More...
 
enum  WASAPIDeviceMode {
  WASAPIDeviceMode::shared,
  WASAPIDeviceMode::exclusive,
  WASAPIDeviceMode::sharedLowLatency
}
 Available modes for the WASAPI audio device. More...
 

Functions

template<typename Type , typename IntegerType >
const Type * addBytesToPointer (const Type *basePointer, IntegerType bytes) noexcept
 A handy function which adds a number of bytes to any type of pointer and returns the result. More...
 
template<typename Type , typename IntegerType >
Type * addBytesToPointer (Type *basePointer, IntegerType bytes) noexcept
 A handy function which adds a number of bytes to any type of pointer and returns the result. More...
 
JUCE_COMRESULT addHandlersToArray (const std::vector< const AccessibilityHandler * > &handlers, SAFEARRAY **pRetVal)
 
bool androidHasSystemFeature (const String &property)
 
template<typename Type >
bool approximatelyEqual (Type a, Type b) noexcept
 Returns true if the two numbers are approximately equal. More...
 
void attachWindowHidingHooks (void *, void *, void *)
 
String audioManagerGetProperty (const String &property)
 
RangedDirectoryIterator begin (const RangedDirectoryIterator &it)
 Returns the iterator that was passed in. More...
 
uint32 clampPixelComponents (uint32 x) noexcept
 
int countNumberOfBits (uint32 n) noexcept
 Returns the number of bits in a 32-bit integer. More...
 
int countNumberOfBits (uint64 n) noexcept
 Returns the number of bits in a 64-bit integer. More...
 
template<class Type >
Type * createCopyIfNotNull (const Type *objectToCopy)
 If a pointer is non-null, this returns a new copy of the object that it points to, or safely returns nullptr if the pointer is null. More...
 
LocalRef< jobject > CreateJavaInterface (AndroidInterfaceImplementer *implementer, const String &interfaceName)
 
LocalRef< jobject > CreateJavaInterface (AndroidInterfaceImplementer *implementer, const StringArray &interfaceNames)
 
LocalRef< jobject > CreateJavaInterface (AndroidInterfaceImplementer *implementer, const StringArray &interfaceNames, LocalRef< jobject > subclass)
 
ComponentPeercreateNonRepaintingEmbeddedWindowsPeer (Component &, void *parent)
 
NSArray * createNSArrayFromStringArray (const StringArray &strings)
 
template<typename Class >
NSObjectcreateNSObjectFromJuceClass (Class *obj)
 
NSURL * createNSURLFromFile (const File &f)
 
NSURL * createNSURLFromFile (const String &f)
 
template<typename ReturnT , class Class , typename... Params>
ReturnT(^)(Params...) CreateObjCBlock (Class *object, ReturnT(Class::*fn)(Params...))
 
std::unique_ptr< LowLevelGraphicsContextcreateOpenGLGraphicsContext (OpenGLContext &, int width, int height)
 Creates a graphics context object that will render into the given OpenGL target. More...
 
std::unique_ptr< LowLevelGraphicsContextcreateOpenGLGraphicsContext (OpenGLContext &, OpenGLFrameBuffer &)
 Creates a graphics context object that will render into the given OpenGL framebuffer. More...
 
std::unique_ptr< LowLevelGraphicsContextcreateOpenGLGraphicsContext (OpenGLContext &, unsigned int frameBufferID, int width, int height)
 Creates a graphics context object that will render into the given OpenGL framebuffer, with the given size. More...
 
AudioProcessorcreatePluginFilterOfType (AudioProcessor::WrapperType type)
 
Image createSnapshotOfNativeWindow (void *nativeWindowHandle)
 
template<typename FloatType >
constexpr FloatType degreesToRadians (FloatType degrees) noexcept
 Converts an angle in degrees to radians. More...
 
template<typename Type >
void deleteAndZero (Type &pointer)
 Delete an object pointer, and sets the pointer to null. More...
 
bool dispatchNextMessageOnSystemQueue (bool returnIfNoPendingMessages)
 
RangedDirectoryIterator end (const RangedDirectoryIterator &)
 Returns a default-constructed sentinel value. More...
 
int findHighestSetBit (uint32 n) noexcept
 Returns the index of the highest set bit in a (non-zero) number. More...
 
template<class ElementType , class ElementComparator >
static int findInsertIndexInSortedArray (ElementComparator &comparator, ElementType *const array, const ElementType newElement, int firstElement, int lastElement)
 Searches a sorted array of elements, looking for the index at which a specified value should be inserted for it to be in the correct order. More...
 
template<typename Type , typename Size >
Type findMaximum (const Type *values, Size numValues)
 Scans an array of values, returning the maximum value that it contains. More...
 
template<typename Type >
void findMinAndMax (const Type *values, int numValues, Type &lowest, Type &highest)
 Scans an array of values, returning the minimum and maximum values that it contains. More...
 
template<typename Type , typename Size >
Type findMinimum (const Type *data, Size numValues)
 Scans an array of values, returning the minimum value that it contains. More...
 
template<typename Type1 , typename Type2 >
int getAddressDifference (Type1 *pointer1, Type2 *pointer2) noexcept
 A handy function which returns the difference between any two pointers, in bytes. More...
 
int getAndroidSDKVersion ()
 
LocalRef< jobject > getAppContext () noexcept
 
void * getCarbonWindow (Component *possibleCarbonComponent)
 
LocalRef< jobject > getCurrentActivity () noexcept
 
JNIEnv * getEnv () noexcept
 
const PluginHostTypegetHostType ()
 
template<typename Type >
Type getIvar (id self, const char *name)
 
template<typename Class >
ClassgetJuceClassFromNSObject (NSObject *obj)
 
LocalRef< jobject > getMainActivity () noexcept
 
static bool hasEffectiveRootFilePermissions ()
 
template<typename... Types>
void ignoreUnused (Types &&...) noexcept
 Handy function for avoiding unused variables warning. More...
 
NSImage * imageToNSImage (const ScaledImage &image)
 
void initialiseJuce_GUI ()
 Initialises JUCE's GUI classes. More...
 
bool isPermissionDeclaredInManifest (const String &requestedPermission)
 
template<typename Type >
bool isPositiveAndBelow (int valueToTest, Type upperLimit) noexcept
 
template<typename Type1 , typename Type2 >
bool isPositiveAndBelow (Type1 valueToTest, Type2 upperLimit) noexcept
 Returns true if a value is at least zero, and also below a specified upper limit. More...
 
template<typename Type >
bool isPositiveAndNotGreaterThan (int valueToTest, Type upperLimit) noexcept
 
template<typename Type1 , typename Type2 >
bool isPositiveAndNotGreaterThan (Type1 valueToTest, Type2 upperLimit) noexcept
 Returns true if a value is at least zero, and also less than or equal to a specified upper limit. More...
 
template<typename IntegerType >
constexpr bool isPowerOfTwo (IntegerType value)
 Returns true if the specified integer is a power-of-two. More...
 
template<typename Type >
bool isWithin (Type a, Type b, Type tolerance) noexcept
 Computes the absolute difference between two values and returns true if it is less than or equal to a given tolerance, otherwise it returns false. More...
 
template<typename Type >
Type jlimit (Type lowerLimit, Type upperLimit, Type valueToConstrain) noexcept
 Constrains a value to keep it within a given range. More...
 
template<typename Type >
Type jmap (Type sourceValue, Type sourceRangeMin, Type sourceRangeMax, Type targetRangeMin, Type targetRangeMax)
 Remaps a value from a source range to a target range. More...
 
template<typename Type >
constexpr Type jmap (Type value0To1, Type targetRangeMin, Type targetRangeMax)
 Remaps a normalised value (between 0 and 1) to a target range. More...
 
template<typename Type >
dsp::SIMDRegister< Type > JUCE_VECTOR_CALLTYPE jmax (dsp::SIMDRegister< Type > a, dsp::SIMDRegister< Type > b)
 
template<typename Type >
constexpr Type jmax (Type a, Type b)
 Returns the larger of two values. More...
 
template<typename Type >
constexpr Type jmax (Type a, Type b, Type c)
 Returns the larger of three values. More...
 
template<typename Type >
constexpr Type jmax (Type a, Type b, Type c, Type d)
 Returns the larger of four values. More...
 
template<typename Type >
dsp::SIMDRegister< Type > JUCE_VECTOR_CALLTYPE jmin (dsp::SIMDRegister< Type > a, dsp::SIMDRegister< Type > b)
 
template<typename Type >
constexpr Type jmin (Type a, Type b)
 Returns the smaller of two values. More...
 
template<typename Type >
constexpr Type jmin (Type a, Type b, Type c)
 Returns the smaller of three values. More...
 
template<typename Type >
constexpr Type jmin (Type a, Type b, Type c, Type d)
 Returns the smaller of four values. More...
 
CGImageRef juce_createCoreGraphicsImage (const Image &, CGColorSpaceRef)
 
Image juce_createImageFromUIImage (UIImage *)
 
void juce_dispatchDelete (JNIEnv *, jobject, jlong)
 
int64 juce_fileSetPosition (void *handle, int64 pos)
 
unsigned long juce_getCurrentFocusWindow (ComponentPeer *)
 
File juce_getExecutableFile ()
 
CGContextRef juce_getImageContext (const Image &)
 
bool juce_handleXEmbedEvent (ComponentPeer *, void *)
 
template<typename Type >
Type juce_hypot (Type a, Type b) noexcept
 Using juce_hypot is easier than dealing with the different types of hypot function that are provided by the various platforms and compilers. More...
 
jobject juce_invokeImplementer (JNIEnv *, jobject, jlong, jobject, jobject, jobjectArray)
 
template<>
bool juce_isfinite (double value) noexcept
 
template<>
bool juce_isfinite (float value) noexcept
 
template<typename NumericType >
bool juce_isfinite (NumericType) noexcept
 The isfinite() method seems to vary between platforms, so this is a platform-independent function for it. More...
 
bool juce_isRunningUnderDebugger () noexcept
 
void juce_LinuxAddRepaintListener (ComponentPeer *, Component *dummy)
 
void juce_LinuxRemoveRepaintListener (ComponentPeer *, Component *dummy)
 
int juce_siginterrupt (int sig, int flag)
 
NSRange juceRangeToNS (Range< int > range)
 
NSString * juceStringToNS (const String &s)
 
void logAssertion (const char *file, int line) noexcept
 
template<typename RectangleType >
NSRect makeNSRect (const RectangleType &r) noexcept
 
template<typename Type >
Type mapFromLog10 (Type valueInLogRange, Type logRangeMin, Type logRangeMax)
 Remaps a logarithmic value in a target range to a normalised value (between 0 and 1). More...
 
template<typename Type >
Type mapToLog10 (Type value0To1, Type logRangeMin, Type logRangeMax)
 Remaps a normalised value (between 0 and 1) to a logarithmic target range. More...
 
uint32 maskPixelComponents (uint32 x) noexcept
 
template<typename IntegerType >
IntegerType negativeAwareModulo (IntegerType dividend, const IntegerType divisor) noexcept
 Performs a modulo operation, but can cope with the dividend being negative. More...
 
int nextPowerOfTwo (int n) noexcept
 Returns the smallest power-of-two which is equal to or greater than the given integer. More...
 
var nsArrayToVar (NSArray *array)
 
var nsDictionaryToVar (NSDictionary *dictionary)
 
NSString * nsEmptyString () noexcept
 
var nsObjectToVar (NSObject *array)
 
Range< intnsRangeToJuce (NSRange range)
 
NSString * nsStringLiteral (const char *const s) noexcept
 
String nsStringToJuce (NSString *s)
 
template<typename Type , size_t N>
constexpr int numElementsInArray (Type(&)[N]) noexcept
 Handy function for getting the number of elements in a simple const C array. More...
 
template<typename SuperType , typename ReturnType , typename... Params>
ReturnType ObjCMsgSendSuper (id self, SEL sel, Params... params)
 
bool offerKeyMessageToJUCEWindow (MSG &)
 
bool operator!= (const String &string1, CharPointer_UTF16 string2) noexcept
 Case-sensitive comparison of two strings. More...
 
bool operator!= (const String &string1, CharPointer_UTF32 string2) noexcept
 Case-sensitive comparison of two strings. More...
 
bool operator!= (const String &string1, CharPointer_UTF8 string2) noexcept
 Case-sensitive comparison of two strings. More...
 
bool operator!= (const String &string1, const char *string2) noexcept
 Case-sensitive comparison of two strings. More...
 
bool operator!= (const String &string1, const String &string2) noexcept
 Case-sensitive comparison of two strings. More...
 
bool operator!= (const String &string1, const wchar_t *string2) noexcept
 Case-sensitive comparison of two strings. More...
 
bool operator!= (const String &string1, StringRef string2) noexcept
 Case-sensitive comparison of two strings. More...
 
template<typename Type >
bool operator!= (const Type *object1, const ReferenceCountedObjectPtr< Type > &object2) noexcept
 Compares two ReferenceCountedObjectPtrs. More...
 
bool operator!= (const var &, const char *)
 
bool operator!= (const var &, const String &)
 
bool operator!= (const var &, const var &)
 Compares the values of two var objects, using the var::equals() comparison. More...
 
bool operator!= (RelativeTime t1, RelativeTime t2) noexcept
 Compares two RelativeTimes. More...
 
bool operator!= (Time time1, Time time2) noexcept
 Compares two Time objects. More...
 
constexpr Grid::Fr operator""_fr (unsigned long long fr)
 
constexpr Grid::Px operator""_px (long double px)
 
constexpr Grid::Px operator""_px (unsigned long long px)
 
const DirectoryEntryoperator* (const DirectoryEntry &e) noexcept
 A convenience operator so that the expression *it++ works correctly when it is an instance of RangedDirectoryIterator. More...
 
template<typename ValueType >
Point< ValueType > operator* (ValueType value, Point< ValueType > p) noexcept
 Multiplies the point's coordinates by a scalar value. More...
 
String operator+ (char string1, const String &string2)
 Concatenates two strings. More...
 
String operator+ (const char *s1, StringRef s2)
 
String operator+ (const char *string1, const String &string2)
 Concatenates two strings. More...
 
String operator+ (const NewLine &, const char *s2)
 
String operator+ (const NewLine &, const NewLine &)
 
String operator+ (const wchar_t *string1, const String &string2)
 Concatenates two strings. More...
 
Time operator+ (RelativeTime delta, Time time) noexcept
 Adds a RelativeTime to a Time. More...
 
RelativeTime operator+ (RelativeTime t1, RelativeTime t2) noexcept
 Adds two RelativeTimes together. More...
 
String operator+ (String s1, const NewLine &)
 
String operator+ (String s1, StringRef s2)
 
String operator+ (String string1, char characterToAppend)
 Concatenates two strings. More...
 
String operator+ (String string1, const char *string2)
 Concatenates two strings. More...
 
String operator+ (String string1, const std::string &string2)
 Concatenates two strings. More...
 
String operator+ (String string1, const String &string2)
 Concatenates two strings. More...
 
String operator+ (String string1, const wchar_t *string2)
 Concatenates two strings. More...
 
String operator+ (String string1, wchar_t characterToAppend)
 Concatenates two strings. More...
 
String operator+ (StringRef s1, const char *s2)
 
String operator+ (StringRef s1, const String &s2)
 
Time operator+ (Time time, RelativeTime delta) noexcept
 Adds a RelativeTime to a Time. More...
 
String operator+ (wchar_t string1, const String &string2)
 Concatenates two strings. More...
 
Stringoperator+= (String &s1, const NewLine &)
 
RelativeTime operator- (RelativeTime t1, RelativeTime t2) noexcept
 Subtracts two RelativeTimes. More...
 
Time operator- (Time time, RelativeTime delta) noexcept
 Subtracts a RelativeTime from a Time. More...
 
const RelativeTime operator- (Time time1, Time time2) noexcept
 Returns the relative time difference between two times. More...
 
bool operator< (const String &string1, StringRef string2) noexcept
 Case-sensitive comparison of two strings. More...
 
bool operator< (const var &, const var &)
 Compares the values of two var objects, using the var::equals() comparison. More...
 
bool operator< (RelativeTime t1, RelativeTime t2) noexcept
 Compares two RelativeTimes. More...
 
bool operator< (Time time1, Time time2) noexcept
 Compares two Time objects. More...
 
OutputStreamoperator<< (OutputStream &, const Value &)
 Writes a Value to an OutputStream as a UTF8 string. More...
 
OutputStreamoperator<< (OutputStream &stream, char character)
 Writes a character to a stream. More...
 
OutputStreamoperator<< (OutputStream &stream, const BigInteger &value)
 Writes a BigInteger to an OutputStream as a UTF8 decimal string. More...
 
OutputStreamoperator<< (OutputStream &stream, const char *text)
 Writes a null-terminated text string to a stream. More...
 
OutputStreamoperator<< (OutputStream &stream, const File &fileToRead)
 Writes the contents of a file to a stream. More...
 
OutputStreamoperator<< (OutputStream &stream, const MemoryBlock &data)
 Writes a block of data from a MemoryBlock to a stream. More...
 
OutputStreamoperator<< (OutputStream &stream, const MemoryOutputStream &streamToRead)
 Copies all the data that has been written to a MemoryOutputStream into another stream. More...
 
OutputStreamoperator<< (OutputStream &stream, const NewLine &)
 Writes a new-line to a stream. More...
 
OutputStreamoperator<< (OutputStream &stream, const String &stringToWrite)
 Writes a string to an OutputStream as UTF8. More...
 
OutputStreamoperator<< (OutputStream &stream, double number)
 Writes a number to a stream as 8-bit characters in the default system encoding. More...
 
OutputStreamoperator<< (OutputStream &stream, InputStream &streamToRead)
 Writes the complete contents of an input stream to an output stream. More...
 
OutputStreamoperator<< (OutputStream &stream, int number)
 Writes a number to a stream as 8-bit characters in the default system encoding. More...
 
OutputStreamoperator<< (OutputStream &stream, int64 number)
 Writes a number to a stream as 8-bit characters in the default system encoding. More...
 
OutputStreamoperator<< (OutputStream &stream, StringRef stringToWrite)
 Writes a string to an OutputStream as UTF8. More...
 
template<class traits >
std::basic_ostream< char, traits > & operator<< (std::basic_ostream< char, traits > &stream, const String &stringToWrite)
 This operator allows you to write a juce String directly to std output streams. More...
 
template<class traits >
std::basic_ostream< wchar_t, traits > & operator<< (std::basic_ostream< wchar_t, traits > &stream, const String &stringToWrite)
 This operator allows you to write a juce String directly to std output streams. More...
 
Stringoperator<< (String &string1, char characterToAppend)
 Appends a character at the end of a string. More...
 
Stringoperator<< (String &string1, const char *string2)
 Appends a string to the end of the first one. More...
 
Stringoperator<< (String &string1, const NewLine &)
 Writes a new-line sequence to a string. More...
 
Stringoperator<< (String &string1, const std::string &string2)
 Appends a string to the end of the first one. More...
 
Stringoperator<< (String &string1, const String &string2)
 Appends a string to the end of the first one. More...
 
Stringoperator<< (String &string1, const wchar_t *string2)
 Appends a string to the end of the first one. More...
 
Stringoperator<< (String &string1, double number)
 Appends a decimal number to the end of a string. More...
 
Stringoperator<< (String &string1, float number)
 Appends a decimal number to the end of a string. More...
 
Stringoperator<< (String &string1, int number)
 Appends a decimal number to the end of a string. More...
 
Stringoperator<< (String &string1, int64 number)
 Appends a decimal number to the end of a string. More...
 
Stringoperator<< (String &string1, long number)
 Appends a decimal number to the end of a string. More...
 
Stringoperator<< (String &string1, short number)
 Appends a decimal number to the end of a string. More...
 
Stringoperator<< (String &string1, StringRef string2)
 Appends a string to the end of the first one. More...
 
Stringoperator<< (String &string1, uint64 number)
 Appends a decimal number to the end of a string. More...
 
Stringoperator<< (String &string1, uint8 number)
 Appends a decimal number to the end of a string. More...
 
Stringoperator<< (String &string1, unsigned long number)
 Appends a decimal number to the end of a string. More...
 
Stringoperator<< (String &string1, wchar_t characterToAppend)
 Appends a character at the end of a string. More...
 
bool operator<= (const String &string1, StringRef string2) noexcept
 Case-sensitive comparison of two strings. More...
 
bool operator<= (const var &, const var &)
 Compares the values of two var objects, using the var::equals() comparison. More...
 
bool operator<= (RelativeTime t1, RelativeTime t2) noexcept
 Compares two RelativeTimes. More...
 
bool operator<= (Time time1, Time time2) noexcept
 Compares two Time objects. More...
 
bool operator== (const String &string1, CharPointer_UTF16 string2) noexcept
 Case-sensitive comparison of two strings. More...
 
bool operator== (const String &string1, CharPointer_UTF32 string2) noexcept
 Case-sensitive comparison of two strings. More...
 
bool operator== (const String &string1, CharPointer_UTF8 string2) noexcept
 Case-sensitive comparison of two strings. More...
 
bool operator== (const String &string1, const char *string2) noexcept
 Case-sensitive comparison of two strings. More...
 
bool operator== (const String &string1, const String &string2) noexcept
 Case-sensitive comparison of two strings. More...
 
bool operator== (const String &string1, const wchar_t *string2) noexcept
 Case-sensitive comparison of two strings. More...
 
bool operator== (const String &string1, StringRef string2) noexcept
 Case-sensitive comparison of two strings. More...
 
template<typename Type >
bool operator== (const Type *object1, const ReferenceCountedObjectPtr< Type > &object2) noexcept
 Compares two ReferenceCountedObjectPtrs. More...
 
bool operator== (const var &, const char *)
 
bool operator== (const var &, const String &)
 
bool operator== (const var &, const var &)
 Compares the values of two var objects, using the var::equals() comparison. More...
 
bool operator== (RelativeTime t1, RelativeTime t2) noexcept
 Compares two RelativeTimes. More...
 
bool operator== (Time time1, Time time2) noexcept
 Compares two Time objects. More...
 
bool operator> (const String &string1, StringRef string2) noexcept
 Case-sensitive comparison of two strings. More...
 
bool operator> (const var &, const var &)
 Compares the values of two var objects, using the var::equals() comparison. More...
 
bool operator> (RelativeTime t1, RelativeTime t2) noexcept
 Compares two RelativeTimes. More...
 
bool operator> (Time time1, Time time2) noexcept
 Compares two Time objects. More...
 
bool operator>= (const String &string1, StringRef string2) noexcept
 Case-sensitive comparison of two strings. More...
 
bool operator>= (const var &, const var &)
 Compares the values of two var objects, using the var::equals() comparison. More...
 
bool operator>= (RelativeTime t1, RelativeTime t2) noexcept
 Compares two RelativeTimes. More...
 
bool operator>= (Time time1, Time time2) noexcept
 Compares two Time objects. More...
 
std::unique_ptr< XmlElementparseXML (const File &fileToParse)
 Attempts to parse some XML text, returning a new XmlElement if it was valid. More...
 
std::unique_ptr< XmlElementparseXML (const String &textToParse)
 Attempts to parse some XML text, returning a new XmlElement if it was valid. More...
 
std::unique_ptr< XmlElementparseXMLIfTagMatches (const File &fileToParse, StringRef requiredTag)
 Does an inexpensive check to see whether the top-level element has the given tag name, and if that's true, does a full parse and returns the result. More...
 
std::unique_ptr< XmlElementparseXMLIfTagMatches (const String &textToParse, StringRef requiredTag)
 Does an inexpensive check to see whether the top-level element has the given tag name, and if that's true, does a full parse and returns the result. More...
 
template<typename FloatType >
constexpr FloatType radiansToDegrees (FloatType radians) noexcept
 Converts an angle in radians to degrees. More...
 
template<typename T >
std::unique_ptr< T > rawToUniquePtr (T *ptr)
 Converts an owning raw pointer into a unique_ptr, deriving the type of the unique_ptr automatically. More...
 
uint32 readLittleEndianBitsInBuffer (const void *sourceBuffer, uint32 startBit, uint32 numBits) noexcept
 Reads a number of bits from a buffer at a given bit index. More...
 
static String readPosixConfigFileValue (const char *file, const char *key)
 
template<typename Type >
Type readUnaligned (const void *srcPtr) noexcept
 A handy function to read un-aligned memory without a performance penalty or bus-error. More...
 
void removeWindowHidingHooks (void *)
 
void repostCurrentNSEvent ()
 
template<typename FloatType >
int roundToInt (const FloatType value) noexcept
 Fast floating-point-to-integer conversion. More...
 
int roundToInt (int value) noexcept
 
int roundToIntAccurate (double value) noexcept
 Fast floating-point-to-integer conversion. More...
 
void sendAccessibilityAutomationEvent (const AccessibilityHandler &, EVENTID)
 
void sendAccessibilityPropertyChangedEvent (const AccessibilityHandler &, PROPERTYID, VARIANT)
 
static bool setFileModeFlags (const String &fullPath, mode_t flags, bool shouldSet) noexcept
 
void shutdownJuce_GUI ()
 Clears up any static data being used by JUCE's GUI classes. More...
 
template<typename Type , typename IntegerType >
Type * snapPointerToAlignment (Type *basePointer, IntegerType alignmentBytes) noexcept
 A handy function to round up a pointer to the nearest multiple of a given number of bytes. More...
 
template<class ElementType , class ElementComparator >
static void sortArray (ElementComparator &comparator, ElementType *const array, int firstElement, int lastElement, const bool retainOrderOfEquivalentItems)
 Sorts a range of elements in an array. More...
 
template<typename NumericType >
constexpr NumericType square (NumericType n) noexcept
 Returns the square of its argument. More...
 
void startAndroidActivityForResult (const LocalRef< jobject > &intent, int requestCode, std::function< void(int, int, LocalRef< jobject >)> &&callback)
 
static void * threadEntryProc (void *userData)
 
String translate (CharPointer_UTF8 stringLiteral)
 Uses the LocalisedStrings class to translate the given string literal. More...
 
String translate (const char *stringLiteral)
 Uses the LocalisedStrings class to translate the given string literal. More...
 
String translate (const String &stringLiteral)
 Uses the LocalisedStrings class to translate the given string literal. More...
 
String translate (const String &stringLiteral, const String &resultIfNotFound)
 Uses the LocalisedStrings class to translate the given string literal. More...
 
template<typename FloatType >
unsigned int truncatePositiveToUnsignedInt (FloatType value) noexcept
 Truncates a positive floating-point number to an unsigned int. More...
 
template<typename Type , typename std::enable_if< std::is_pointer< Type >::value, int >::type = 0>
Type unalignedPointerCast (const void *ptr) noexcept
 Casts a pointer to another type via void*, which suppresses the cast-align warning which sometimes arises when casting pointers to types with different alignment. More...
 
template<typename Type , typename std::enable_if< std::is_pointer< Type >::value, int >::type = 0>
Type unalignedPointerCast (void *ptr) noexcept
 Casts a pointer to another type via void*, which suppresses the cast-align warning which sometimes arises when casting pointers to types with different alignment. More...
 
GUID uuidFromString (const char *s) noexcept
 
NSArray * varArrayToNSArray (const var &varToParse)
 
NSDictionary * varObjectToNSDictionary (const var &varToParse)
 
template<typename Value , typename Object , typename Callback >
JUCE_COMRESULT withCheckedComArgs (Value *pRetVal, Object &handle, Callback &&callback)
 
template<typename Object , typename OtherObject , typename Member >
Object withMember (Object copy, Member OtherObject::*member, Member &&value)
 Copies an object, sets one of the copy's members to the specified value, and then returns the copy. More...
 
void writeLittleEndianBitsInBuffer (void *targetBuffer, uint32 startBit, uint32 numBits, uint32 value) noexcept
 Writes a number of bits into a memory buffer at a given bit index. More...
 
template<typename Type >
void writeUnaligned (void *dstPtr, Type value) noexcept
 A handy function to write un-aligned memory without a performance penalty or bus-error. More...
 
void zeromem (void *memory, size_t numBytes) noexcept
 Fills a block of memory with zeros. More...
 
template<typename Type >
void zerostruct (Type &structure) noexcept
 Overwrites a structure or object with zeros. More...
 

Variables

JavaVM * androidJNIJavaVM
 
static const uint8 javaJuceOpenGLView []
 
static HHOOK keyboardHook = nullptr
 
static MaxNumFileHandlesInitialiser maxNumFileHandlesInitialiser
 
static HHOOK mouseWheelHook = nullptr
 
NewLine newLine
 A predefined object representing a new-line, which can be written to a string or stream. More...
 
const auto nsViewFrameChangedSelector = @selector (frameChanged:)
 
static int numHookUsers = 0
 
XContext windowHandleXContext
 

Typedef Documentation

◆ AudioSampleBuffer

A multi-channel buffer of 32-bit floating point audio samples.

This type is here for backwards compatibility with the older AudioSampleBuffer class, which was fixed for 32-bit data, but is otherwise the same as the new templated AudioBuffer class.

See also
AudioBuffer

◆ CatmullRomInterpolator

An interpolator for resampling a stream of floats using Catmull-Rom interpolation.

Note that the resampler is stateful, so when there's a break in the continuity of the input stream you're feeding it, you should call reset() before feeding it any new data. And like with any other stateful filter, if you're resampling multiple channels, make sure each one uses its own CatmullRomInterpolator object.

See also
GenericInterpolator
LagrangeInterpolator, WindowedSincInterpolator, LinearInterpolator, ZeroOrderHoldInterpolator

@tags{Audio}

◆ CFUniquePtr

template<typename CFType >
using juce::CFUniquePtr = typedef std::unique_ptr<typename std::remove_pointer<CFType>::type, CFObjectDeleter<CFType> >

◆ ChildProcessMaster

◆ ChildProcessSlave

◆ CommandID

using juce::CommandID = typedef int

A type used to hold the unique ID for an application command.

This is a numeric type, so it can be stored as an integer.

See also
ApplicationCommandInfo, ApplicationCommandManager, ApplicationCommandTarget, KeyPressMappingSet

◆ DisableIfSameOrDerived

template<typename A , typename B >
using juce::DisableIfSameOrDerived = typedef typename std::enable_if_t<! std::is_base_of<A, std::remove_reference_t<B> >::value>

Can be used to disable template constructors that would otherwise cause ambiguity with compiler-generated copy and move constructors.

Adapted from https://ericniebler.com/2013/08/07/universal-references-and-the-copy-constructo/

◆ HWND

typedef HWND__* juce::HWND

◆ int16

using juce::int16 = typedef signed short

A platform-independent 16-bit signed integer type.

◆ int32

using juce::int32 = typedef signed int

A platform-independent 32-bit signed integer type.

◆ int64

using juce::int64 = typedef long long

A platform-independent 64-bit integer type.

◆ int8

using juce::int8 = typedef signed char

A platform-independent 8-bit signed integer type.

◆ juce_wchar

using juce::juce_wchar = typedef wchar_t

A platform-independent 32-bit unicode character type.

◆ LagrangeInterpolator

An interpolator for resampling a stream of floats using 4-point lagrange interpolation.

Note that the resampler is stateful, so when there's a break in the continuity of the input stream you're feeding it, you should call reset() before feeding it any new data. And like with any other stateful filter, if you're resampling multiple channels, make sure each one uses its own LagrangeInterpolator object.

See also
GenericInterpolator
CatmullRomInterpolator, WindowedSincInterpolator, LinearInterpolator, ZeroOrderHoldInterpolator

@tags{Audio}

◆ LinearInterpolator

An interpolator for resampling a stream of floats using linear interpolation.

Note that the resampler is stateful, so when there's a break in the continuity of the input stream you're feeding it, you should call reset() before feeding it any new data. And like with any other stateful filter, if you're resampling multiple channels, make sure each one uses its own LinearInterpolator object.

See also
GenericInterpolator
LagrangeInterpolator, CatmullRomInterpolator, WindowedSincInterpolator, ZeroOrderHoldInterpolator

@tags{Audio}

◆ LinearSmoothedValue

template<typename FloatType >
using juce::LinearSmoothedValue = typedef SmoothedValue <FloatType, ValueSmoothingTypes::Linear>

◆ MessageCallbackFunction

using juce::MessageCallbackFunction = typedef void* (void* userData)

See MessageManager::callFunctionOnMessageThread() for use of this function type.

◆ MidiKeyboardStateListener

◆ NSUniquePtr

template<typename NSType >
using juce::NSUniquePtr = typedef std::unique_ptr<NSType, NSObjectDeleter>

◆ OSCType

using juce::OSCType = typedef char

The type used for OSC type tags.

◆ OSCTypeList

using juce::OSCTypeList = typedef Array<OSCType>

The type used for OSC type tag strings.

◆ pointer_sized_int

using juce::pointer_sized_int = typedef int64

A signed integer type that's guaranteed to be large enough to hold a pointer without truncating it.

◆ pointer_sized_uint

An unsigned integer type that's guaranteed to be large enough to hold a pointer without truncating it.

◆ ScopedLock

Automatically locks and unlocks a CriticalSection object.

You can use a ScopedLock as a local variable to provide RAII-based locking of a CriticalSection.

e.g.

struct MyObject
{
CriticalSection objectLock;
// assuming that this example function will be called by multiple threads
void foo()
{
const ScopedLock myScopedLock (objectLock);
// objectLock is now locked..
...do some thread-safe work here...
// ..and objectLock gets unlocked here, as myScopedLock goes out of
// scope at the end of the block
}
};
See also
CriticalSection, ScopedUnlock

◆ ScopedTryLock

Automatically tries to lock and unlock a CriticalSection object.

Use one of these as a local variable to control access to a CriticalSection.

e.g.

struct MyObject
{
CriticalSection objectLock;
void foo()
{
const ScopedTryLock myScopedTryLock (objectLock);
// Unlike using a ScopedLock, this may fail to actually get the lock, so you
// must call the isLocked() method before making any assumptions..
if (myScopedTryLock.isLocked())
{
...safely do some work...
}
else
{
// If we get here, then our attempt at locking failed because another thread had already locked it..
}
}
};
See also
CriticalSection::tryEnter, ScopedLock, ScopedUnlock, ScopedReadLock

◆ ScopedUnlock

Automatically unlocks and re-locks a CriticalSection object.

This is the reverse of a ScopedLock object - instead of locking the critical section for the lifetime of this object, it unlocks it.

Make sure you don't try to unlock critical sections that aren't actually locked!

e.g.

struct MyObject
{
CriticalSection objectLock;
void foo()
{
{
const ScopedLock myScopedLock (objectLock);
// objectLock is now locked..
{
ScopedUnlock myUnlocker (objectLock);
// ..and now unlocked..
}
// ..and now locked again..
}
// ..and finally unlocked.
}
};
See also
CriticalSection, ScopedLock

◆ ssize_t

◆ uint16

using juce::uint16 = typedef unsigned short

A platform-independent 16-bit unsigned integer type.

◆ uint32

using juce::uint32 = typedef unsigned int

A platform-independent 32-bit unsigned integer type.

◆ uint64

using juce::uint64 = typedef unsigned long long

A platform-independent 64-bit unsigned integer type.

◆ uint8

using juce::uint8 = typedef unsigned char

A platform-independent 8-bit unsigned integer type.

◆ WindowedSincInterpolator

An interpolator for resampling a stream of floats using high order windowed (hann) sinc interpolation, recommended for high quality resampling.

Note that the resampler is stateful, so when there's a break in the continuity of the input stream you're feeding it, you should call reset() before feeding it any new data. And like with any other stateful filter, if you're resampling multiple channels, make sure each one uses its own LinearInterpolator object.

See also
GenericInterpolator
LagrangeInterpolator, CatmullRomInterpolator, LinearInterpolator, ZeroOrderHoldInterpolator

@tags{Audio}

◆ ZeroOrderHoldInterpolator

An interpolator for resampling a stream of floats using zero order hold interpolation.

Note that the resampler is stateful, so when there's a break in the continuity of the input stream you're feeding it, you should call reset() before feeding it any new data. And like with any other stateful filter, if you're resampling multiple channels, make sure each one uses its own ZeroOrderHoldInterpolator object.

See also
GenericInterpolator
LagrangeInterpolator, CatmullRomInterpolator, WindowedSincInterpolator, LinearInterpolator

@tags{Audio}

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
Enumerator
kAudioUnitProperty_SupportsMPE 

Custom AudioUnit property used to indicate MPE support.

◆ AccessibilityActionType

An action that can be performed by an accessible UI element.

@tags{Accessibility}

Enumerator
press 

Represents a "press" action.

This will be called when the user "clicks" the UI element using an
accessibility client.
toggle 

Represents a "toggle" action.

This will be called when the user toggles the state of a UI element,
for example a toggle button or the selection of a list item.
focus 

Indicates that the UI element has received focus.

This will be called when a UI element receives focus from an accessibility
client, or keyboard focus from the application.
showMenu 

Represents the user showing a contextual menu for a UI element.

This will be called for UI elements which expand and collapse to
show contextual information or menus, or show a popup.

◆ AccessibilityEvent

A list of events that can be notified to any subscribed accessibility clients.

To post a notification, call AccessibilityHandler::notifyAccessibilityEvent on the associated handler with the appropriate AccessibilityEvent type and listening clients will be notified.

@tags{Accessibility}

Enumerator
valueChanged 

Indicates that the UI element's value has changed.

This should be called on the handler that implements `AccessibilityValueInterface`
for the UI element that has changed.
titleChanged 

Indicates that the title of the UI element has changed.

This should be called on the handler whose title has changed.
structureChanged 

Indicates that the structure of the UI elements has changed in a significant way.

This should be called on the top-level handler whose structure has changed.

textSelectionChanged 

Indicates that the selection of a text element has changed.

This should be called on the handler that implements `AccessibilityTextInterface`
for the text element that has changed.
textChanged 

Indicates that the visible text of a text element has changed.

This should be called on the handler that implements `AccessibilityTextInterface`
for the text element that has changed.
rowSelectionChanged 

Indicates that the selection of rows in a list or table has changed.

This should be called on the handler that implements `AccessibilityTableInterface`
for the UI element that has changed.

◆ AccessibilityRole

The list of available roles for an AccessibilityHandler object.

When creating a custom AccessibilityHandler you should select the role that best describes the UI element being represented.

@tags{Accessibility}

Enumerator
button 
toggleButton 
radioButton 
comboBox 
image 
slider 
label 
staticText 
editableText 
menuItem 
menuBar 
popupMenu 
table 
tableHeader 
column 
row 
cell 
hyperlink 
list 
listItem 
tree 
treeItem 
progressBar 
group 
dialogWindow 
window 
scrollBar 
tooltip 
splashScreen 
ignored 
unspecified 

◆ MessageBoxIconType

The type of icon to show in the dialog box.

Enumerator
NoIcon 

No icon will be shown on the dialog box.

QuestionIcon 

A question-mark icon, for dialog boxes that need the user to answer a question.

WarningIcon 

An exclamation mark to indicate that the dialog is a warning about something and shouldn't be ignored.

InfoIcon 

An icon that indicates that the dialog box is just giving the user some information, which doesn't require a response from them.

◆ MissingOpenGLDefinitions

Enumerator
JUCE_RGBA_FORMAT 

◆ NotificationType

These enums are used in various classes to indicate whether a notification event should be sent out.

Enumerator
dontSendNotification 

No notification message should be sent.

sendNotification 

Requests a notification message, either synchronous or not.

sendNotificationSync 

Requests a synchronous notification.

sendNotificationAsync 

Requests an asynchronous notification.

◆ WASAPIDeviceMode

Available modes for the WASAPI audio device.

Pass one of these to the AudioIODeviceType::createAudioIODeviceType_WASAPI() method to create a WASAPI AudioIODeviceType object in this mode.

Enumerator
shared 
exclusive 
sharedLowLatency 

Function Documentation

◆ addBytesToPointer() [1/2]

template<typename Type , typename IntegerType >
const Type* juce::addBytesToPointer ( const Type *  basePointer,
IntegerType  bytes 
)
inlinenoexcept

A handy function which adds a number of bytes to any type of pointer and returns the result.

This can be useful to avoid casting pointers to a char* and back when you want to move them by a specific number of bytes,

◆ addBytesToPointer() [2/2]

template<typename Type , typename IntegerType >
Type* juce::addBytesToPointer ( Type *  basePointer,
IntegerType  bytes 
)
inlinenoexcept

A handy function which adds a number of bytes to any type of pointer and returns the result.

This can be useful to avoid casting pointers to a char* and back when you want to move them by a specific number of bytes,

Referenced by juce::String::appendCharPointer(), juce::dsp::AudioBlock< const SampleType >::AudioBlock(), juce::AudioData::ConverterInstance< SourceSampleType, DestSampleType >::convertSamples(), juce::RenderingHelpers::EdgeTableFillers::ImageFill< DestPixelType, SrcPixelType, repeatPattern >::copyRow(), juce::AudioData::deinterleaveSamples(), juce::RenderingHelpers::EdgeTableFillers::ImageFill< DestPixelType, SrcPixelType, repeatPattern >::getDestPixel(), juce::RenderingHelpers::EdgeTableFillers::TransformedImageFill< DestPixelType, SrcPixelType, repeatPattern >::getDestPixel(), juce::RenderingHelpers::EdgeTableFillers::SolidColour< PixelType, replaceExisting >::getPixel(), juce::RenderingHelpers::EdgeTableFillers::Gradient< PixelType, GradientType >::getPixel(), juce::RenderingHelpers::EdgeTableFillers::ImageFill< DestPixelType, SrcPixelType, repeatPattern >::getSrcPixel(), juce::RenderingHelpers::EdgeTableFillers::SolidColour< PixelType, replaceExisting >::handleEdgeTableRectangle(), juce::AudioData::interleaveSamples(), juce::AudioFormatReader::ReadHelper< DestSampleType, SourceSampleType, SourceEndianness >::read(), juce::MemoryMappedAudioFormatReader::sampleToPointer(), juce::MemoryMappedAudioFormatReader::scanMinAndMaxInterleaved(), and juce::AudioFormatWriter::WriteHelper< DestSampleType, SourceSampleType, DestEndianness >::write().

◆ addHandlersToArray()

JUCE_COMRESULT juce::addHandlersToArray ( const std::vector< const AccessibilityHandler * > &  handlers,
SAFEARRAY **  pRetVal 
)
inline

◆ androidHasSystemFeature()

◆ approximatelyEqual()

template<typename Type >
bool juce::approximatelyEqual ( Type  a,
Type  b 
)
noexcept

Returns true if the two numbers are approximately equal.

This is useful for floating-point and double comparisons.

References juce::gl::a, and juce::gl::b.

Referenced by juce::OpenGLContext::NativeContext::nativeScaleFactorChanged(), and juce::OpenGLContext::NativeContext::updateWindowPosition().

◆ attachWindowHidingHooks()

void juce::attachWindowHidingHooks ( void *  ,
void *  ,
void *   
)
inline

◆ audioManagerGetProperty()

◆ begin()

◆ clampPixelComponents()

uint32 juce::clampPixelComponents ( uint32  x)
inlinenoexcept

◆ countNumberOfBits() [1/2]

int juce::countNumberOfBits ( uint32  n)
inlinenoexcept

Returns the number of bits in a 32-bit integer.

References juce::gl::n.

Referenced by countNumberOfBits().

◆ countNumberOfBits() [2/2]

int juce::countNumberOfBits ( uint64  n)
inlinenoexcept

Returns the number of bits in a 64-bit integer.

References countNumberOfBits(), and juce::gl::n.

◆ createCopyIfNotNull()

template<class Type >
Type* juce::createCopyIfNotNull ( const Type *  objectToCopy)
inline

If a pointer is non-null, this returns a new copy of the object that it points to, or safely returns nullptr if the pointer is null.

Referenced by juce::OwnedArray< SwatchComponent >::addCopiesOf().

◆ CreateJavaInterface() [1/3]

LocalRef<jobject> juce::CreateJavaInterface ( AndroidInterfaceImplementer implementer,
const String interfaceName 
)

◆ CreateJavaInterface() [2/3]

LocalRef<jobject> juce::CreateJavaInterface ( AndroidInterfaceImplementer implementer,
const StringArray interfaceNames 
)

◆ CreateJavaInterface() [3/3]

◆ createNonRepaintingEmbeddedWindowsPeer()

ComponentPeer* juce::createNonRepaintingEmbeddedWindowsPeer ( Component ,
void *  parent 
)

◆ createNSArrayFromStringArray()

NSArray* juce::createNSArrayFromStringArray ( const StringArray strings)
inline

◆ createNSObjectFromJuceClass()

template<typename Class >
NSObject* juce::createNSObjectFromJuceClass ( Class obj)

◆ createNSURLFromFile() [1/2]

NSURL* juce::createNSURLFromFile ( const File f)
inline

◆ createNSURLFromFile() [2/2]

NSURL* juce::createNSURLFromFile ( const String f)
inline

◆ CreateObjCBlock()

template<typename ReturnT , class Class , typename... Params>
ReturnT(^)(Params...) juce::CreateObjCBlock ( Class object,
ReturnT(Class::*)(Params...)  fn 
)

◆ createOpenGLGraphicsContext() [1/3]

std::unique_ptr<LowLevelGraphicsContext> juce::createOpenGLGraphicsContext ( OpenGLContext ,
int  width,
int  height 
)

Creates a graphics context object that will render into the given OpenGL target.

◆ createOpenGLGraphicsContext() [2/3]

std::unique_ptr<LowLevelGraphicsContext> juce::createOpenGLGraphicsContext ( OpenGLContext ,
OpenGLFrameBuffer  
)

Creates a graphics context object that will render into the given OpenGL framebuffer.

◆ createOpenGLGraphicsContext() [3/3]

std::unique_ptr<LowLevelGraphicsContext> juce::createOpenGLGraphicsContext ( OpenGLContext ,
unsigned int  frameBufferID,
int  width,
int  height 
)

Creates a graphics context object that will render into the given OpenGL framebuffer, with the given size.

◆ createPluginFilterOfType()

◆ createSnapshotOfNativeWindow()

Image juce::createSnapshotOfNativeWindow ( void *  nativeWindowHandle)

◆ degreesToRadians()

template<typename FloatType >
constexpr FloatType juce::degreesToRadians ( FloatType  degrees)
constexprnoexcept

Converts an angle in degrees to radians.

◆ deleteAndZero()

template<typename Type >
void juce::deleteAndZero ( Type &  pointer)
inline

Delete an object pointer, and sets the pointer to null.

Remember that it's not good c++ practice to use delete directly - always try to use a std::unique_ptr or other automatic lifetime-management system rather than resorting to deleting raw pointers!

References juce::gl::pointer.

◆ dispatchNextMessageOnSystemQueue()

bool juce::dispatchNextMessageOnSystemQueue ( bool  returnIfNoPendingMessages)

◆ end()

◆ findHighestSetBit()

int juce::findHighestSetBit ( uint32  n)
noexcept

Returns the index of the highest set bit in a (non-zero) number.

So for n=3 this would return 1, for n=7 it returns 2, etc. An input value of 0 is illegal!

◆ findInsertIndexInSortedArray()

template<class ElementType , class ElementComparator >
static int juce::findInsertIndexInSortedArray ( ElementComparator &  comparator,
ElementType *const  array,
const ElementType  newElement,
int  firstElement,
int  lastElement 
)
static

Searches a sorted array of elements, looking for the index at which a specified value should be inserted for it to be in the correct order.

The comparator object that is passed-in must define a public method with the following signature:

int compareElements (ElementType first, ElementType second);

..and this method must return:

  • a value of < 0 if the first comes before the second
  • a value of 0 if the two objects are equivalent
  • a value of > 0 if the second comes before the first

To improve performance, the compareElements() method can be declared as static or const.

Parameters
comparatoran object which defines a compareElements() method
arraythe array to search
newElementthe value that is going to be inserted
firstElementthe index of the first element to search
lastElementthe index of the last element in the range (this is non-inclusive)

References juce::gl::array, ignoreUnused(), and jassert.

Referenced by juce::ReferenceCountedArray< juce::AudioProcessorGraph::Node >::addOrReplaceSorted(), juce::ReferenceCountedArray< juce::AudioProcessorGraph::Node >::addSorted(), juce::OwnedArray< SwatchComponent >::addSorted(), juce::Array< juce::MPEInstrument::Listener * >::addSorted(), and juce::TreeViewItem::addSubItemSorted().

◆ findMaximum()

template<typename Type , typename Size >
Type juce::findMaximum ( const Type *  values,
Size  numValues 
)

Scans an array of values, returning the maximum value that it contains.

References juce::gl::result, juce::gl::v, and juce::UnitTestCategories::values.

Referenced by juce::AndroidHighPerformanceAudioHelpers::getAvailableBufferSizes().

◆ findMinAndMax()

template<typename Type >
void juce::findMinAndMax ( const Type *  values,
int  numValues,
Type &  lowest,
Type &  highest 
)

◆ findMinimum()

template<typename Type , typename Size >
Type juce::findMinimum ( const Type *  data,
Size  numValues 
)

Scans an array of values, returning the minimum value that it contains.

References juce::gl::data, juce::gl::result, and juce::gl::v.

◆ getAddressDifference()

template<typename Type1 , typename Type2 >
int juce::getAddressDifference ( Type1 *  pointer1,
Type2 *  pointer2 
)
inlinenoexcept

A handy function which returns the difference between any two pointers, in bytes.

The address of the second pointer is subtracted from the first, and the difference in bytes is returned.

Referenced by juce::CharacterFunctions::copyWithDestByteLimit(), and juce::AccessibilityTextHelpers::findTextBoundary().

◆ getAndroidSDKVersion()

◆ getAppContext()

◆ getCarbonWindow()

void* juce::getCarbonWindow ( Component possibleCarbonComponent)

◆ getCurrentActivity()

LocalRef<jobject> juce::getCurrentActivity ( )
noexcept

◆ getEnv()

JNIEnv* juce::getEnv ( )
noexcept

Referenced by VideoComponent::Pimpl::MediaSession::abandonAudioFocus(), CameraDevice::Pimpl::ImageReader::androidImageToJuceWithFixedOrientation(), juce::OpenGLContext::NativeContext::attachedToWindow(), CameraDevice::Pimpl::ScopedCameraDevice::CaptureSession::StillPictureTaker::autoFocusHasFinished(), juce::GlobalRef::callVoidMethod(), CameraDevice::Pimpl::ScopedCameraDevice::CaptureSession::cameraCaptureSessionActiveCallback(), CameraDevice::Pimpl::ScopedCameraDevice::CaptureSession::StillPictureTaker::cameraCaptureSessionCaptureCompletedCallback(), CameraDevice::Pimpl::ScopedCameraDevice::CaptureSession::StillPictureTaker::cameraCaptureSessionCaptureFailedCallback(), CameraDevice::Pimpl::ScopedCameraDevice::CaptureSession::StillPictureTaker::cameraCaptureSessionCaptureProgressedCallback(), CameraDevice::Pimpl::ScopedCameraDevice::CaptureSession::StillPictureTaker::cameraCaptureSessionCaptureSequenceAbortedCallback(), CameraDevice::Pimpl::ScopedCameraDevice::CaptureSession::StillPictureTaker::cameraCaptureSessionCaptureSequenceCompletedCallback(), CameraDevice::Pimpl::ScopedCameraDevice::CaptureSession::StillPictureTaker::cameraCaptureSessionCaptureStartedCallback(), CameraDevice::Pimpl::ScopedCameraDevice::CaptureSession::cameraCaptureSessionClosedCallback(), CameraDevice::Pimpl::ScopedCameraDevice::CaptureSession::cameraCaptureSessionConfigured(), CameraDevice::Pimpl::ScopedCameraDevice::CaptureSession::cameraCaptureSessionConfiguredCallback(), CameraDevice::Pimpl::ScopedCameraDevice::CaptureSession::cameraCaptureSessionConfigureFailedCallback(), CameraDevice::Pimpl::ScopedCameraDevice::CaptureSession::cameraCaptureSessionReadyCallback(), CameraDevice::Pimpl::ScopedCameraDevice::cameraDeviceStateOpenedCallback(), CameraDevice::Pimpl::ScopedCameraDevice::CaptureSession::CaptureSession(), CameraDevice::Pimpl::ScopedCameraDevice::CaptureSession::StillPictureTaker::captureStillPicture(), CameraDevice::Pimpl::ScopedCameraDevice::CaptureSession::StillPictureTaker::captureStillPictureDelayed(), juce::LocalRef< JavaType >::clear(), juce::GlobalRef::clear(), VideoComponent::Pimpl::close(), CameraDevice::Pimpl::ScopedCameraDevice::close(), VideoComponent::Pimpl::MediaSession::Controller::closeVideo(), VideoComponent::Pimpl::MediaSession::Player::closeVideo(), CameraDevice::Pimpl::continueOpenRequest(), VideoComponent::Pimpl::MediaSession::Controller::Controller(), VideoComponent::Pimpl::MediaSession::createAudioFocusRequestIfNecessary(), VideoComponent::Pimpl::MediaSession::createCallbackObject(), CameraDevice::Pimpl::ScopedCameraDevice::createCameraStateCallbackObject(), CameraDevice::Pimpl::ScopedCameraDevice::CaptureSession::StillPictureTaker::createCaptureSessionCallback(), VideoComponent::Pimpl::MediaSession::Controller::createControllerCallbacks(), CameraDevice::Pimpl::DeviceOrientationChangeListener::createOrientationEventListener(), CameraDevice::Pimpl::PreviewDisplay::createSurface(), juce::OpenGLContext::NativeContext::detachedFromWindow(), VideoComponent::Pimpl::MediaSession::errorOccurred(), VideoComponent::Pimpl::MediaSession::getAudioAttributes(), CameraDevice::Pimpl::getAvailableDevices(), CameraDevice::Pimpl::ImageReader::getBitmapWithCorrectOrientationFrom(), CameraDevice::Pimpl::getCameraCharacteristicsIntegerKeyValue(), CameraDevice::Pimpl::ScopedCameraDevice::CaptureSession::StillPictureTaker::getCaptureResultIntegerKeyValue(), CameraDevice::Pimpl::CaptureSessionPreviewMode::getCaptureSessionSurfaces(), CameraDevice::Pimpl::CaptureSessionVideoRecordingMode::getCaptureSessionSurfaces(), CameraDevice::Pimpl::StreamConfigurationMap::getClassForName(), CameraDevice::Pimpl::ScopedCameraDevice::CaptureSession::StillPictureTaker::getControlAEState(), VideoComponent::Pimpl::MediaSession::getCurrentPlaybackState(), CameraDevice::Pimpl::ImageReader::getImageBufferWithCorrectedOrientationFrom(), CameraDevice::Pimpl::MediaRecorder::getOrientationHint(), VideoComponent::Pimpl::MediaSession::Player::getPlayPosition(), VideoComponent::Pimpl::MediaSession::Controller::getPlaySpeed(), VideoComponent::Pimpl::MediaSession::Player::getPlaySpeed(), VideoComponent::Pimpl::MediaSession::Controller::getPosition(), CameraDevice::Pimpl::StreamConfigurationMap::getStreamConfigurationMap(), CameraDevice::Pimpl::getSupportedAutoFocusModes(), CameraDevice::Pimpl::ImageReader::getSurface(), CameraDevice::Pimpl::MediaRecorder::getSurface(), CameraDevice::Pimpl::CaptureSessionPreviewMode::getTargetSurfaces(), VideoComponent::Pimpl::MediaSession::Player::getVideoDuration(), VideoComponent::Pimpl::MediaSession::Player::getVideoNativeSize(), VideoComponent::Pimpl::MediaSession::Controller::getVolume(), CameraDevice::Pimpl::ImageReader::ImageReader(), CameraDevice::Pimpl::initialiseCameraCharacteristics(), CameraDevice::Pimpl::initialiseCameraManager(), juce::OpenGLContext::NativeContext::initialiseOnRenderThread(), MediaPlayerListener::invoke(), AndroidRunnable::invoke(), TextureViewSurfaceTextureListener::invoke(), AudioManagerOnAudioFocusChangeListener::invoke(), ImageReaderOnImageAvailableListener::invoke(), MediaRecorderOnInfoListener::invoke(), MediaRecorderOnErrorListener::invoke(), juce::SurfaceHolderCallback::invoke(), CameraDevice::Pimpl::StreamConfigurationMap::isOutputSupportedForSurface(), CameraDevice::Pimpl::PreviewDisplay::isReady(), juce::anonymous_namespace{juce_android_JNIHelpers.h}::javaString(), juce::anonymous_namespace{juce_android_JNIHelpers.h}::javaStringArrayToJuce(), juce::anonymous_namespace{juce_android_JNIHelpers.h}::javaStringFromChar(), CameraDevice::Pimpl::jintArrayToJuceArray(), juce::anonymous_namespace{juce_android_JNIHelpers.h}::jniCheckHasExceptionOccurredAndClear(), juce::anonymous_namespace{juce_android_JNIHelpers.h}::juceString(), juce::anonymous_namespace{juce_android_JNIHelpers.h}::juceStringArrayToJava(), VideoComponent::Pimpl::MediaSession::Controller::load(), VideoComponent::Pimpl::MediaSession::Player::load(), VideoComponent::Pimpl::loadAsync(), CameraDevice::Pimpl::ScopedCameraDevice::CaptureSession::StillPictureTaker::lockFocus(), CameraDevice::Pimpl::MediaRecorder::MediaRecorder(), VideoComponent::Pimpl::MediaSession::MediaSession(), juce::OpenGLContext::NativeContext::NativeContext(), CameraDevice::Pimpl::ImageReader::onImageAvailable(), CameraDevice::Pimpl::ScopedCameraDevice::open(), juce::GlobalRef::operator=(), VideoComponent::Pimpl::MediaSession::Player::pause(), VideoComponent::Pimpl::Pimpl(), VideoComponent::Pimpl::MediaSession::Controller::play(), VideoComponent::Pimpl::MediaSession::Player::play(), VideoComponent::Pimpl::MediaSession::playCallback(), CameraDevice::Pimpl::PreviewDisplay::PreviewDisplay(), CameraDevice::Pimpl::printDebugCameraInfo(), CameraDevice::Pimpl::printPrimitiveArrayElements(), CameraDevice::Pimpl::printRangeArrayElements(), VideoComponent::Pimpl::MediaSession::requestAudioFocus(), VideoComponent::Pimpl::MediaSession::restoreState(), juce::LocalRef< JavaType >::retain(), CameraDevice::Pimpl::StreamConfigurationMap::retrieveOutputSizes(), CameraDevice::Pimpl::ScopedCameraDevice::CaptureSession::StillPictureTaker::runPrecaptureSequence(), VideoComponent::Pimpl::MediaSession::Player::setAudioVolume(), CameraDevice::Pimpl::ScopedCameraDevice::CaptureSession::setCaptureRequestBuilderIntegerKey(), VideoComponent::Pimpl::MediaSession::Player::setDisplay(), CameraDevice::Pimpl::DeviceOrientationChangeListener::setEnabled(), VideoComponent::Pimpl::MediaSession::Player::setPlayPosition(), VideoComponent::Pimpl::MediaSession::Player::setPlaySpeed(), VideoComponent::Pimpl::MediaSession::Controller::setPosition(), VideoComponent::Pimpl::MediaSession::Controller::setVolume(), CameraDevice::Pimpl::MediaRecorder::start(), CameraDevice::Pimpl::ScopedCameraDevice::CaptureSession::start(), CameraDevice::Pimpl::startBackgroundThread(), VideoComponent::Pimpl::MediaSession::Controller::stateChanged(), VideoComponent::Pimpl::MediaSession::Controller::stop(), CameraDevice::Pimpl::MediaRecorder::stop(), CameraDevice::Pimpl::stopBackgroundThread(), CameraDevice::Pimpl::CaptureSessionMode< CaptureSessionPreviewMode >::stopPreview(), CameraDevice::Pimpl::ScopedCameraDevice::CaptureSession::takeStillPicture(), CameraDevice::Pimpl::ScopedCameraDevice::CaptureSession::StillPictureTaker::unlockFocus(), VideoComponent::Pimpl::MediaSession::updateMetadata(), VideoComponent::Pimpl::MediaSession::updatePlaybackState(), CameraDevice::Pimpl::PreviewDisplay::updateSurfaceTransform(), juce::OpenGLContext::NativeContext::updateWindowPosition(), CameraDevice::Pimpl::ScopedCameraDevice::CaptureSession::~CaptureSession(), VideoComponent::Pimpl::MediaSession::Controller::~Controller(), CameraDevice::Pimpl::ImageReader::~ImageReader(), CameraDevice::Pimpl::MediaRecorder::~MediaRecorder(), VideoComponent::Pimpl::MediaSession::~MediaSession(), juce::OpenGLContext::NativeContext::~NativeContext(), VideoComponent::Pimpl::~Pimpl(), CameraDevice::Pimpl::~Pimpl(), and CameraDevice::Pimpl::PreviewDisplay::~PreviewDisplay().

◆ getHostType()

const PluginHostType& juce::getHostType ( )
inline

◆ getIvar()

template<typename Type >
Type juce::getIvar ( id  self,
const char *  name 
)
inline

References juce::gl::name, and juce::gl::v.

◆ getJuceClassFromNSObject()

template<typename Class >
Class* juce::getJuceClassFromNSObject ( NSObject obj)

References juce::gl::obj.

◆ getMainActivity()

LocalRef<jobject> juce::getMainActivity ( )
noexcept

◆ hasEffectiveRootFilePermissions()

static bool juce::hasEffectiveRootFilePermissions ( )
static

◆ ignoreUnused()

template<typename... Types>
void juce::ignoreUnused ( Types &&  ...)
noexcept

Handy function for avoiding unused variables warning.

Referenced by juce::AudioProcessorValueTreeState::ParameterLayout::add(), juce::ArrayBase< juce::InAppPurchases::Listener *, DummyCriticalSection >::addAssumingCapacityIsReady(), juce::ArrayBase< juce::InAppPurchases::Listener *, DummyCriticalSection >::addImpl(), juce::ObjCClass< NSObject >::addIvar(), juce::ObjCClass< NSObject >::addProtocol(), juce::OwnedArray< SwatchComponent >::addSorted(), VideoComponent::Pimpl::MediaSession::Controller::audioInfoChanged(), CameraDevice::Pimpl::ScopedCameraDevice::CaptureSession::cameraCaptureSessionActive(), CameraDevice::Pimpl::ScopedCameraDevice::CaptureSession::StillPictureTaker::cameraCaptureSessionCaptureCompleted(), CameraDevice::Pimpl::ScopedCameraDevice::CaptureSession::StillPictureTaker::cameraCaptureSessionCaptureFailed(), CameraDevice::Pimpl::ScopedCameraDevice::CaptureSession::StillPictureTaker::cameraCaptureSessionCaptureProgressed(), CameraDevice::Pimpl::ScopedCameraDevice::CaptureSession::StillPictureTaker::cameraCaptureSessionCaptureSequenceAborted(), CameraDevice::Pimpl::ScopedCameraDevice::CaptureSession::StillPictureTaker::cameraCaptureSessionCaptureSequenceCompleted(), CameraDevice::Pimpl::ScopedCameraDevice::CaptureSession::StillPictureTaker::cameraCaptureSessionCaptureStarted(), CameraDevice::Pimpl::ScopedCameraDevice::CaptureSession::cameraCaptureSessionClosed(), CameraDevice::Pimpl::ScopedCameraDevice::CaptureSession::cameraCaptureSessionConfigureFailed(), CameraDevice::Pimpl::ScopedCameraDevice::CaptureSession::cameraCaptureSessionReady(), juce::AudioProcessor::canAddBus(), juce::AudioProcessor::canRemoveBus(), juce::OpenGLContext::NativeContext::createAttribs(), juce::UndoableAction::createCoalescedAction(), juce::OpenGLContext::NativeContext::createGLBuffers(), juce::PushNotifications::Listener::deliveredNotificationsListReceived(), juce::ContainerDeletePolicy< ObjectType >::destroy(), juce::PushNotifications::Listener::deviceTokenRefreshed(), VideoComponent::Pimpl::DirectShowContext::DirectShowContext(), CameraDevice::Pimpl::enumerateCameras(), findInsertIndexInSortedArray(), juce::StandalonePluginHolder::getIAAHostIcon(), juce::PushNotifications::Listener::handleNotification(), juce::PushNotifications::Listener::handleNotificationAction(), juce::MidiInputCallback::handlePartialSysexMessage(), juce::VSTCallbackHandler::handleVstHostCallbackAvailable(), juce::VSTCallbackHandler::handleVstPluginCanDo(), juce::OwnedArray< SwatchComponent >::indexOfSorted(), juce::ReferenceCountedArray< juce::AudioProcessorGraph::Node >::indexOfSorted(), juce::Array< juce::MPEInstrument::Listener * >::indexOfSorted(), juce_siginterrupt(), VideoComponent::Pimpl::MediaSession::Player::load(), juce::PushNotifications::Listener::localNotificationDismissedByUser(), VideoComponent::Pimpl::MediaSession::Controller::metadataChanged(), juce::MidiKeyboardComponent::mouseDownOnKey(), juce::MidiKeyboardComponent::mouseDraggedToKey(), juce::MidiKeyboardComponent::mouseUpOnKey(), juce::WebBrowserComponent::newWindowAttemptingToLoad(), juce::MPEInstrument::Listener::noteAdded(), juce::MPEInstrument::Listener::noteKeyStateChanged(), juce::MPEInstrument::Listener::notePitchbendChanged(), juce::MPEInstrument::Listener::notePressureChanged(), juce::MPEInstrument::Listener::noteReleased(), juce::MPEInstrument::Listener::noteTimbreChanged(), juce::PushNotifications::Listener::notificationSettingsReceived(), VideoComponent::Pimpl::MediaSession::Player::onBufferingUpdate(), VideoComponent::Pimpl::MediaSession::Player::onCompletion(), VideoComponent::Pimpl::MediaSession::Player::onError(), CameraDevice::Pimpl::MediaRecorder::onError(), VideoComponent::Pimpl::MediaSession::Player::onInfo(), CameraDevice::Pimpl::MediaRecorder::onInfo(), VideoComponent::Pimpl::MediaSession::Player::onPrepared(), VideoComponent::Pimpl::MediaSession::Player::onSeekComplete(), juce::WebBrowserComponent::pageAboutToLoad(), juce::WebBrowserComponent::pageFinishedLoading(), juce::WebBrowserComponent::pageLoadHadNetworkError(), juce::PushNotifications::Listener::pendingLocalNotificationsListReceived(), juce::WebInputStream::Listener::postDataSendProgress(), CameraDevice::Pimpl::printDebugCameraInfo(), CameraDevice::Pimpl::printPrimitiveArrayElements(), CameraDevice::Pimpl::printRangeArrayElements(), CameraDevice::Pimpl::StreamConfigurationMap::printSizesLog(), juce::Thread::setCurrentThreadAffinityMask(), juce::PositionableAudioSource::setLooping(), juce::HighResolutionTimer::Pimpl::setThisThreadToRealtime(), juce::OwnedArray< SwatchComponent >::sort(), juce::ReferenceCountedArray< juce::AudioProcessorGraph::Node >::sort(), juce::Array< juce::MPEInstrument::Listener * >::sort(), juce::OpenGLContext::NativeContext::surfaceChanged(), juce::AudioPlayHead::transportPlay(), juce::AudioPlayHead::transportRecord(), juce::PushNotifications::Listener::upstreamMessageSendingError(), and juce::PushNotifications::Listener::upstreamMessageSent().

◆ imageToNSImage()

NSImage* juce::imageToNSImage ( const ScaledImage image)

◆ initialiseJuce_GUI()

void juce::initialiseJuce_GUI ( )

Initialises JUCE's GUI classes.

If you're embedding JUCE into an application that uses its own event-loop rather than using the START_JUCE_APPLICATION macro, call this function before making any JUCE calls, to make sure things are initialised correctly.

Note that if you're creating a JUCE DLL for Windows, you may also need to call the Process::setCurrentModuleInstanceHandle() method.

See also
shutdownJuce_GUI()

◆ isPermissionDeclaredInManifest()

bool juce::isPermissionDeclaredInManifest ( const String requestedPermission)

◆ isPositiveAndBelow() [1/2]

template<typename Type >
bool juce::isPositiveAndBelow ( int  valueToTest,
Type  upperLimit 
)
noexcept

References jassert.

◆ isPositiveAndBelow() [2/2]

template<typename Type1 , typename Type2 >
bool juce::isPositiveAndBelow ( Type1  valueToTest,
Type2  upperLimit 
)
noexcept

Returns true if a value is at least zero, and also below a specified upper limit.

This is basically a quicker way to write:

valueToTest >= 0 && valueToTest < upperLimit

References jassert.

Referenced by juce::AudioBuffer< float >::addFrom(), juce::AudioBuffer< float >::addFromWithRamp(), juce::dsp::AudioBlock< const SampleType >::addSample(), juce::AudioBuffer< float >::addSample(), juce::AudioBuffer< float >::applyGain(), juce::AudioBuffer< float >::applyGainRamp(), juce::AudioBuffer< float >::clear(), juce::AudioBuffer< float >::copyFrom(), juce::AudioBuffer< float >::copyFromWithRamp(), juce::ArrayBase< juce::InAppPurchases::Listener *, DummyCriticalSection >::createInsertSpace(), juce::AudioBuffer< float >::findMinMax(), juce::RenderingHelpers::EdgeTableFillers::TransformedImageFill< DestPixelType, SrcPixelType, repeatPattern >::generate(), juce::HashMap< KeyType, ValueType, HashFunctionType, TypeOfCriticalSectionToUse >::generateHashFor(), juce::UIAGridProvider::GetItem(), juce::AudioBuffer< float >::getMagnitude(), juce::AudioProcessor::BusesLayout::getNumChannels(), juce::AudioBuffer< float >::getReadPointer(), juce::AudioBuffer< float >::getRMSLevel(), juce::dsp::AudioBlock< const SampleType >::getSample(), juce::AudioBuffer< float >::getSample(), juce::dsp::LookupTable< NumericType >::getUnchecked(), juce::ArrayBase< juce::InAppPurchases::Listener *, DummyCriticalSection >::getValueWithDefault(), juce::AudioBuffer< float >::getWritePointer(), juce::EdgeTable::iterate(), juce::ArrayBase< juce::InAppPurchases::Listener *, DummyCriticalSection >::move(), juce::ArrayBase< juce::InAppPurchases::Listener *, DummyCriticalSection >::operator[](), juce::dsp::LookupTableTransform< NumericType >::processSample(), juce::OwnedArray< SwatchComponent >::remove(), juce::ReferenceCountedArray< juce::AudioProcessorGraph::Node >::remove(), juce::Array< juce::MPEInstrument::Listener * >::remove(), juce::OwnedArray< SwatchComponent >::removeAndReturn(), juce::ReferenceCountedArray< juce::AudioProcessorGraph::Node >::removeAndReturn(), juce::Array< juce::MPEInstrument::Listener * >::removeAndReturn(), juce::AudioBuffer< float >::reverse(), juce::dsp::AudioBlock< const SampleType >::setSample(), juce::AudioBuffer< float >::setSample(), juce::OpenGLContext::NativeContext::setSwapInterval(), juce::Array< juce::MPEInstrument::Listener * >::setUnchecked(), juce::ArrayBase< juce::InAppPurchases::Listener *, DummyCriticalSection >::swap(), and juce::ReferenceCountedArray< juce::AudioProcessorGraph::Node >::swap().

◆ isPositiveAndNotGreaterThan() [1/2]

template<typename Type >
bool juce::isPositiveAndNotGreaterThan ( int  valueToTest,
Type  upperLimit 
)
noexcept

References jassert.

◆ isPositiveAndNotGreaterThan() [2/2]

template<typename Type1 , typename Type2 >
bool juce::isPositiveAndNotGreaterThan ( Type1  valueToTest,
Type2  upperLimit 
)
noexcept

Returns true if a value is at least zero, and also less than or equal to a specified upper limit.

This is basically a quicker way to write:

valueToTest >= 0 && valueToTest <= upperLimit

References jassert.

◆ isPowerOfTwo()

template<typename IntegerType >
constexpr bool juce::isPowerOfTwo ( IntegerType  value)
constexpr

Returns true if the specified integer is a power-of-two.

References juce::gl::value.

Referenced by juce::SingleThreadedAbstractFifo::SingleThreadedAbstractFifo().

◆ isWithin()

template<typename Type >
bool juce::isWithin ( Type  a,
Type  b,
Type  tolerance 
)
noexcept

Computes the absolute difference between two values and returns true if it is less than or equal to a given tolerance, otherwise it returns false.

References juce::gl::a, and juce::gl::b.

◆ jlimit()

template<typename Type >
Type juce::jlimit ( Type  lowerLimit,
Type  upperLimit,
Type  valueToConstrain 
)
noexcept

Constrains a value to keep it within a given range.

This will check that the specified value lies between the lower and upper bounds specified, and if not, will return the nearest value that would be in-range. Effectively, it's like calling jmax (lowerLimit, jmin (upperLimit, value)).

Note that it expects that lowerLimit <= upperLimit. If this isn't true, the results will be unpredictable.

Parameters
lowerLimitthe minimum value to return
upperLimitthe maximum value to return
valueToConstrainthe value to try to return
Returns
the closest value to valueToConstrain which lies between lowerLimit and upperLimit (inclusive)
See also
jmin, jmax, jmap

References jassert.

Referenced by juce::NormalisableRange< float >::clampTo0To1(), juce::Range< int64 >::clipValue(), juce::Range< int64 >::constrainRange(), CameraDevice::Pimpl::createFileCaptureFilter(), juce::Line< ValueType >::findNearestProportionalPositionTo(), juce::AccessibilityTextHelpers::findTextBoundary(), juce::Rectangle< int >::getConstrainedPoint(), juce::RenderingHelpers::GradientPixelIterators::Linear::getPixel(), juce::dsp::Phaser< SampleType >::process(), juce::dsp::LookupTableTransform< NumericType >::processSample(), juce::OwnedArray< SwatchComponent >::removeRange(), juce::ReferenceCountedArray< juce::AudioProcessorGraph::Node >::removeRange(), juce::Array< juce::MPEInstrument::Listener * >::removeRange(), juce::Draggable3DOrientation::rotationFromMove(), VideoComponent::Pimpl::MediaSession::Player::setAudioVolume(), juce::MPEKeyboardComponent::setLift(), juce::CarbonViewWrapperComponent::setOurSizeToEmbeddedViewSize(), juce::MPEKeyboardComponent::setPressure(), juce::MPEKeyboardComponent::setVelocity(), juce::RenderingHelpers::GradientPixelIterators::Linear::setY(), and juce::AnimatedPosition< Behaviour >::timerCallback().

◆ jmap() [1/2]

template<typename Type >
Type juce::jmap ( Type  sourceValue,
Type  sourceRangeMin,
Type  sourceRangeMax,
Type  targetRangeMin,
Type  targetRangeMax 
)

Remaps a value from a source range to a target range.

References jassert.

◆ jmap() [2/2]

template<typename Type >
constexpr Type juce::jmap ( Type  value0To1,
Type  targetRangeMin,
Type  targetRangeMax 
)
constexpr

Remaps a normalised value (between 0 and 1) to a target range.

This effectively returns (targetRangeMin + value0To1 * (targetRangeMax - targetRangeMin)).

Referenced by juce::dsp::LogRampedValue< FloatType >::getNextValue(), juce::dsp::LookupTable< NumericType >::getUnchecked(), juce::Thread::setThreadPriority(), juce::dsp::LogRampedValue< FloatType >::skip(), and juce::dsp::LadderFilter< SampleType >::updateResonance().

◆ jmax() [1/4]

template<typename Type >
dsp::SIMDRegister<Type> JUCE_VECTOR_CALLTYPE juce::jmax ( dsp::SIMDRegister< Type >  a,
dsp::SIMDRegister< Type >  b 
)
inline

◆ jmax() [2/4]

template<typename Type >
constexpr Type juce::jmax ( Type  a,
Type  b 
)
constexpr

Returns the larger of two values.

References juce::gl::a, and juce::gl::b.

Referenced by juce::SpeakerMappings::VstSpeakerConfigurationHolder::allocate(), juce::AndroidHighPerformanceAudioHelpers::buffersToQueueForBufferDuration(), juce::Rectangle< int >::enlargeIfAdjacent(), juce::Rectangle< int >::expand(), juce::Rectangle< int >::expanded(), juce::Rectangle< int >::findAreaContainingPoints(), juce::Decibels::gainToDecibels(), juce::RectangleList< int >::getBounds(), juce::CarbonViewWrapperComponent::getEmbeddedViewSize(), juce::Rectangle< int >::getIntersection(), juce::Range< int64 >::getIntersectionWith(), juce::AudioBuffer< float >::getMagnitude(), juce::AndroidHighPerformanceAudioHelpers::getMaximumBuffersToEnqueue(), juce::dsp::Polynomial< FloatingType >::getProductWith(), juce::AnimatedPosition< Behaviour >::getSpeed(), juce::Rectangle< int >::getUnion(), juce::Range< int64 >::getUnionWith(), juce::GenericInterpolator< InterpolatorTraits, memorySize >::interpolate(), juce::GenericInterpolator< InterpolatorTraits, memorySize >::interpolateAdding(), juce::Rectangle< int >::intersectRectangle(), juce::Rectangle< int >::intersectRectangles(), juce::RenderingHelpers::ClipRegions< SavedStateType >::RectangleListRegion::SubRectangleIteratorFloat::iterate(), jmax(), juce::Array< juce::MPEInstrument::Listener * >::minimiseStorageAfterRemoval(), juce::OpenGLContext::NativeContext::NativeContext(), juce::dsp::SIMDFallbackOps< ScalarType, vSIMDType >::ScalarMax::op(), juce::dsp::Chorus< SampleType >::process(), juce::dsp::FIR::Filter< SampleType >::reset(), juce::ResizableBorderComponent::Zone::resizeRectangleBy(), juce::Rectangle< int >::setLeft(), juce::Range< int64 >::setLength(), juce::TextEditor::setLineSpacing(), juce::Draggable3DOrientation::setRadius(), juce::Rectangle< int >::setTop(), juce::StandalonePluginHolder::showAudioSettingsDialog(), juce::Rectangle< int >::transformedBy(), juce::OpenGLContext::NativeContext::updateWindowPosition(), juce::Rectangle< int >::withBottom(), juce::Rectangle< int >::withHeight(), juce::Rectangle< int >::withLeft(), juce::Rectangle< int >::withRight(), juce::Rectangle< int >::withSize(), juce::Range< int64 >::withStart(), juce::Rectangle< int >::withTop(), and juce::Rectangle< int >::withWidth().

◆ jmax() [3/4]

template<typename Type >
constexpr Type juce::jmax ( Type  a,
Type  b,
Type  c 
)
constexpr

Returns the larger of three values.

References juce::gl::a, juce::gl::b, and juce::gl::c.

◆ jmax() [4/4]

template<typename Type >
constexpr Type juce::jmax ( Type  a,
Type  b,
Type  c,
Type  d 
)
constexpr

Returns the larger of four values.

References juce::gl::a, juce::gl::b, juce::gl::c, and jmax().

◆ jmin() [1/4]

template<typename Type >
dsp::SIMDRegister<Type> JUCE_VECTOR_CALLTYPE juce::jmin ( dsp::SIMDRegister< Type >  a,
dsp::SIMDRegister< Type >  b 
)
inline

◆ jmin() [2/4]

template<typename Type >
constexpr Type juce::jmin ( Type  a,
Type  b 
)
constexpr

Returns the smaller of two values.

References juce::gl::a, and juce::gl::b.

Referenced by juce::dsp::AudioBlock< const SampleType >::addInternal(), juce::dsp::AudioBlock< const SampleType >::addProductOfInternal(), juce::StandalonePluginHolder::CallbackMaxSizeEnforcer::audioDeviceIOCallback(), juce::Rectangle< int >::constrainedWithin(), juce::dsp::AudioBlock< const SampleType >::copyFromInternal(), juce::dsp::AudioBlock< const SampleType >::copyTo(), juce::SelectedItemSet< SelectableItemType >::deselectAll(), juce::Rectangle< int >::enlargeIfAdjacent(), juce::Rectangle< int >::findAreaContainingPoints(), juce::RectangleList< int >::getBounds(), juce::Rectangle< int >::getIntersection(), juce::Range< int64 >::getIntersectionWith(), juce::RenderingHelpers::GradientPixelIterators::TransformedRadial::getPixel(), juce::Rectangle< int >::getUnion(), juce::Range< int64 >::getUnionWith(), juce::Rectangle< int >::intersectRectangle(), juce::Rectangle< int >::intersectRectangles(), VideoComponent::Pimpl::MediaSession::isSeekInProgress(), juce::RenderingHelpers::ClipRegions< SavedStateType >::RectangleListRegion::SubRectangleIteratorFloat::iterate(), jmin(), juce::Draggable3DOrientation::mousePosToProportion(), juce::dsp::AudioBlock< const SampleType >::moveInternal(), juce::dsp::AudioBlock< const SampleType >::multiplyByInternal(), juce::dsp::SIMDFallbackOps< ScalarType, vSIMDType >::ScalarMin::op(), juce::dsp::ProcessorDuplicator< MonoProcessorType, StateType >::process(), juce::dsp::Phaser< SampleType >::process(), juce::dsp::Oscillator< SampleType >::process(), juce::SingleThreadedAbstractFifo::read(), juce::Rectangle< int >::removeFromBottom(), juce::Rectangle< int >::removeFromLeft(), juce::Rectangle< int >::removeFromRight(), juce::Rectangle< int >::removeFromTop(), juce::dsp::AudioBlock< const SampleType >::replaceWithAbsoluteValueOfInternal(), juce::dsp::AudioBlock< const SampleType >::replaceWithDifferenceOfInternal(), juce::dsp::AudioBlock< const SampleType >::replaceWithMaxOfInternal(), juce::dsp::AudioBlock< const SampleType >::replaceWithMinOfInternal(), juce::dsp::AudioBlock< const SampleType >::replaceWithNegativeOfInternal(), juce::dsp::AudioBlock< const SampleType >::replaceWithProductOfInternal(), juce::dsp::AudioBlock< const SampleType >::replaceWithSumOfInternal(), juce::ResizableBorderComponent::Zone::resizeRectangleBy(), juce::SelectedItemSet< SelectableItemType >::selectOnly(), juce::Rectangle< int >::setBottom(), juce::Rectangle< int >::setRight(), juce::AudioBuffer< float >::setSize(), juce::HighResolutionTimer::Pimpl::setThisThreadToRealtime(), VideoComponent::Pimpl::MediaSession::Controller::setVolume(), CameraDevice::Pimpl::startRecordingToFile(), juce::dsp::AudioBlock< const SampleType >::subtractInternal(), juce::Rectangle< int >::transformedBy(), juce::PixelARGB::unpremultiply(), juce::Rectangle< int >::withBottom(), juce::Range< int64 >::withEnd(), juce::Rectangle< int >::withRight(), juce::Line< ValueType >::withShortenedEnd(), juce::Line< ValueType >::withShortenedStart(), and juce::SingleThreadedAbstractFifo::write().

◆ jmin() [3/4]

template<typename Type >
constexpr Type juce::jmin ( Type  a,
Type  b,
Type  c 
)
constexpr

Returns the smaller of three values.

References juce::gl::a, juce::gl::b, and juce::gl::c.

◆ jmin() [4/4]

template<typename Type >
constexpr Type juce::jmin ( Type  a,
Type  b,
Type  c,
Type  d 
)
constexpr

Returns the smaller of four values.

References juce::gl::a, juce::gl::b, juce::gl::c, and jmin().

◆ juce_createCoreGraphicsImage()

CGImageRef juce::juce_createCoreGraphicsImage ( const Image ,
CGColorSpaceRef   
)

◆ juce_createImageFromUIImage()

Image juce::juce_createImageFromUIImage ( UIImage *  )

◆ juce_dispatchDelete()

void juce::juce_dispatchDelete ( JNIEnv *  ,
jobject  ,
jlong   
)

◆ juce_fileSetPosition()

int64 juce::juce_fileSetPosition ( void *  handle,
int64  pos 
)

◆ juce_getCurrentFocusWindow()

unsigned long juce::juce_getCurrentFocusWindow ( ComponentPeer )

◆ juce_getExecutableFile()

File juce::juce_getExecutableFile ( )

◆ juce_getImageContext()

CGContextRef juce::juce_getImageContext ( const Image )

◆ juce_handleXEmbedEvent()

bool juce::juce_handleXEmbedEvent ( ComponentPeer ,
void *   
)

◆ juce_hypot()

template<typename Type >
Type juce::juce_hypot ( Type  a,
Type  b 
)
noexcept

Using juce_hypot is easier than dealing with the different types of hypot function that are provided by the various platforms and compilers.

References juce::gl::a, and juce::gl::b.

Referenced by juce::Point< int >::getDistanceFrom(), juce::Point< int >::getDistanceFromOrigin(), and juce::Line< ValueType >::getPointAlongLine().

◆ juce_invokeImplementer()

jobject juce::juce_invokeImplementer ( JNIEnv *  ,
jobject  ,
jlong  ,
jobject  ,
jobject  ,
jobjectArray   
)

◆ juce_isfinite() [1/3]

template<>
bool juce::juce_isfinite ( double  value)
inlinenoexcept

References juce::gl::value.

◆ juce_isfinite() [2/3]

template<>
bool juce::juce_isfinite ( float  value)
inlinenoexcept

References juce::gl::value.

◆ juce_isfinite() [3/3]

template<typename NumericType >
bool juce::juce_isfinite ( NumericType  )
noexcept

The isfinite() method seems to vary between platforms, so this is a platform-independent function for it.

Referenced by juce::StatisticsAccumulator< FloatType >::addValue(), juce::Point< int >::isFinite(), and juce::Rectangle< int >::isFinite().

◆ juce_isRunningUnderDebugger()

bool juce::juce_isRunningUnderDebugger ( )
noexcept

◆ juce_LinuxAddRepaintListener()

void juce::juce_LinuxAddRepaintListener ( ComponentPeer ,
Component dummy 
)

◆ juce_LinuxRemoveRepaintListener()

void juce::juce_LinuxRemoveRepaintListener ( ComponentPeer ,
Component dummy 
)

◆ juce_siginterrupt()

int juce::juce_siginterrupt ( int  sig,
int  flag 
)

◆ juceRangeToNS()

NSRange juce::juceRangeToNS ( Range< int range)
inline

References juce::gl::range.

◆ juceStringToNS()

◆ logAssertion()

void juce::logAssertion ( const char *  file,
int  line 
)
noexcept

◆ makeNSRect()

template<typename RectangleType >
NSRect juce::makeNSRect ( const RectangleType &  r)
noexcept

References juce::gl::r.

◆ mapFromLog10()

template<typename Type >
Type juce::mapFromLog10 ( Type  valueInLogRange,
Type  logRangeMin,
Type  logRangeMax 
)

Remaps a logarithmic value in a target range to a normalised value (between 0 and 1).

The entire target range must be greater than zero.

See also
mapToLog10
mapFromLog10 (4.0, 0.4, 40.0) == 0.5

References jassert.

◆ mapToLog10()

template<typename Type >
Type juce::mapToLog10 ( Type  value0To1,
Type  logRangeMin,
Type  logRangeMax 
)

Remaps a normalised value (between 0 and 1) to a logarithmic target range.

The entire target range must be greater than zero.

See also
mapFromLog10
mapToLog10 (0.5, 0.4, 40.0) == 4.0

References jassert.

Referenced by juce::dsp::Phaser< SampleType >::process().

◆ maskPixelComponents()

uint32 juce::maskPixelComponents ( uint32  x)
inlinenoexcept

◆ negativeAwareModulo()

template<typename IntegerType >
IntegerType juce::negativeAwareModulo ( IntegerType  dividend,
const IntegerType  divisor 
)
noexcept

Performs a modulo operation, but can cope with the dividend being negative.

The divisor must be greater than zero.

References juce::gl::divisor, and jassert.

Referenced by juce::RenderingHelpers::EdgeTableFillers::TransformedImageFill< DestPixelType, SrcPixelType, repeatPattern >::generate().

◆ nextPowerOfTwo()

int juce::nextPowerOfTwo ( int  n)
inlinenoexcept

Returns the smallest power-of-two which is equal to or greater than the given integer.

References juce::gl::n.

◆ nsArrayToVar()

◆ nsDictionaryToVar()

var juce::nsDictionaryToVar ( NSDictionary *  dictionary)
inline

◆ nsEmptyString()

NSString* juce::nsEmptyString ( )
inlinenoexcept

References juce::gl::string.

◆ nsObjectToVar()

var juce::nsObjectToVar ( NSObject array)
inline

◆ nsRangeToJuce()

Range<int> juce::nsRangeToJuce ( NSRange  range)
inline

References int(), and juce::gl::range.

◆ nsStringLiteral()

◆ nsStringToJuce()

◆ numElementsInArray()

template<typename Type , size_t N>
constexpr int juce::numElementsInArray ( Type(&)  [N])
constexprnoexcept

◆ ObjCMsgSendSuper()

template<typename SuperType , typename ReturnType , typename... Params>
ReturnType juce::ObjCMsgSendSuper ( id  self,
SEL  sel,
Params...  params 
)
inline

◆ offerKeyMessageToJUCEWindow()

bool juce::offerKeyMessageToJUCEWindow ( MSG &  )

◆ operator!=() [1/13]

bool juce::operator!= ( const String string1,
CharPointer_UTF16  string2 
)
noexcept

Case-sensitive comparison of two strings.

◆ operator!=() [2/13]

bool juce::operator!= ( const String string1,
CharPointer_UTF32  string2 
)
noexcept

Case-sensitive comparison of two strings.

◆ operator!=() [3/13]

bool juce::operator!= ( const String string1,
CharPointer_UTF8  string2 
)
noexcept

Case-sensitive comparison of two strings.

◆ operator!=() [4/13]

bool juce::operator!= ( const String string1,
const char *  string2 
)
noexcept

Case-sensitive comparison of two strings.

◆ operator!=() [5/13]

bool juce::operator!= ( const String string1,
const String string2 
)
noexcept

Case-sensitive comparison of two strings.

◆ operator!=() [6/13]

bool juce::operator!= ( const String string1,
const wchar_t *  string2 
)
noexcept

Case-sensitive comparison of two strings.

◆ operator!=() [7/13]

bool juce::operator!= ( const String string1,
StringRef  string2 
)
noexcept

Case-sensitive comparison of two strings.

◆ operator!=() [8/13]

template<typename Type >
bool juce::operator!= ( const Type *  object1,
const ReferenceCountedObjectPtr< Type > &  object2 
)
noexcept

Compares two ReferenceCountedObjectPtrs.

◆ operator!=() [9/13]

bool juce::operator!= ( const var ,
const char *   
)

◆ operator!=() [10/13]

bool juce::operator!= ( const var ,
const String  
)

◆ operator!=() [11/13]

bool juce::operator!= ( const var ,
const var  
)

Compares the values of two var objects, using the var::equals() comparison.

◆ operator!=() [12/13]

bool juce::operator!= ( RelativeTime  t1,
RelativeTime  t2 
)
noexcept

Compares two RelativeTimes.

◆ operator!=() [13/13]

bool juce::operator!= ( Time  time1,
Time  time2 
)
noexcept

Compares two Time objects.

◆ operator""_fr()

constexpr Grid::Fr juce::operator""_fr ( unsigned long long  fr)
constexpr

◆ operator""_px() [1/2]

constexpr Grid::Px juce::operator""_px ( long double  px)
constexpr

◆ operator""_px() [2/2]

constexpr Grid::Px juce::operator""_px ( unsigned long long  px)
constexpr

◆ operator*() [1/2]

const DirectoryEntry& juce::operator* ( const DirectoryEntry e)
inlinenoexcept

A convenience operator so that the expression *it++ works correctly when it is an instance of RangedDirectoryIterator.

◆ operator*() [2/2]

template<typename ValueType >
Point<ValueType> juce::operator* ( ValueType  value,
Point< ValueType >  p 
)
noexcept

Multiplies the point's coordinates by a scalar value.

References juce::gl::p, and juce::gl::value.

◆ operator+() [1/20]

String juce::operator+ ( char  string1,
const String string2 
)

Concatenates two strings.

◆ operator+() [2/20]

String juce::operator+ ( const char *  s1,
StringRef  s2 
)
inline

◆ operator+() [3/20]

String juce::operator+ ( const char *  string1,
const String string2 
)

Concatenates two strings.

◆ operator+() [4/20]

String juce::operator+ ( const NewLine ,
const char *  s2 
)
inline

◆ operator+() [5/20]

String juce::operator+ ( const NewLine ,
const NewLine  
)
inline

◆ operator+() [6/20]

String juce::operator+ ( const wchar_t *  string1,
const String string2 
)

Concatenates two strings.

◆ operator+() [7/20]

Time juce::operator+ ( RelativeTime  delta,
Time  time 
)
noexcept

Adds a RelativeTime to a Time.

◆ operator+() [8/20]

RelativeTime juce::operator+ ( RelativeTime  t1,
RelativeTime  t2 
)
noexcept

Adds two RelativeTimes together.

◆ operator+() [9/20]

String juce::operator+ ( String  s1,
const NewLine  
)
inline

◆ operator+() [10/20]

String juce::operator+ ( String  s1,
StringRef  s2 
)
inline

◆ operator+() [11/20]

String juce::operator+ ( String  string1,
char  characterToAppend 
)

Concatenates two strings.

◆ operator+() [12/20]

String juce::operator+ ( String  string1,
const char *  string2 
)

Concatenates two strings.

◆ operator+() [13/20]

String juce::operator+ ( String  string1,
const std::string &  string2 
)

Concatenates two strings.

◆ operator+() [14/20]

String juce::operator+ ( String  string1,
const String string2 
)

Concatenates two strings.

◆ operator+() [15/20]

String juce::operator+ ( String  string1,
const wchar_t *  string2 
)

Concatenates two strings.

◆ operator+() [16/20]

String juce::operator+ ( String  string1,
wchar_t  characterToAppend 
)

Concatenates two strings.

◆ operator+() [17/20]

String juce::operator+ ( StringRef  s1,
const char *  s2 
)
inline

References juce::gl::s1.

◆ operator+() [18/20]

String juce::operator+ ( StringRef  s1,
const String s2 
)
inline

References juce::gl::s1.

◆ operator+() [19/20]

Time juce::operator+ ( Time  time,
RelativeTime  delta 
)
noexcept

Adds a RelativeTime to a Time.

◆ operator+() [20/20]

String juce::operator+ ( wchar_t  string1,
const String string2 
)

Concatenates two strings.

◆ operator+=()

String& juce::operator+= ( String s1,
const NewLine  
)
inline

◆ operator-() [1/3]

RelativeTime juce::operator- ( RelativeTime  t1,
RelativeTime  t2 
)
noexcept

Subtracts two RelativeTimes.

◆ operator-() [2/3]

Time juce::operator- ( Time  time,
RelativeTime  delta 
)
noexcept

Subtracts a RelativeTime from a Time.

◆ operator-() [3/3]

const RelativeTime juce::operator- ( Time  time1,
Time  time2 
)
noexcept

Returns the relative time difference between two times.

◆ operator<() [1/4]

bool juce::operator< ( const String string1,
StringRef  string2 
)
noexcept

Case-sensitive comparison of two strings.

◆ operator<() [2/4]

bool juce::operator< ( const var ,
const var  
)

Compares the values of two var objects, using the var::equals() comparison.

◆ operator<() [3/4]

bool juce::operator< ( RelativeTime  t1,
RelativeTime  t2 
)
noexcept

Compares two RelativeTimes.

◆ operator<() [4/4]

bool juce::operator< ( Time  time1,
Time  time2 
)
noexcept

Compares two Time objects.

◆ operator<<() [1/33]

OutputStream& juce::operator<< ( OutputStream ,
const Value  
)

Writes a Value to an OutputStream as a UTF8 string.

◆ operator<<() [2/33]

OutputStream& juce::operator<< ( OutputStream stream,
char  character 
)

Writes a character to a stream.

◆ operator<<() [3/33]

OutputStream& juce::operator<< ( OutputStream stream,
const BigInteger value 
)

Writes a BigInteger to an OutputStream as a UTF8 decimal string.

◆ operator<<() [4/33]

OutputStream& juce::operator<< ( OutputStream stream,
const char *  text 
)

Writes a null-terminated text string to a stream.

◆ operator<<() [5/33]

OutputStream& juce::operator<< ( OutputStream stream,
const File fileToRead 
)

Writes the contents of a file to a stream.

◆ operator<<() [6/33]

OutputStream& juce::operator<< ( OutputStream stream,
const MemoryBlock data 
)

Writes a block of data from a MemoryBlock to a stream.

◆ operator<<() [7/33]

OutputStream& juce::operator<< ( OutputStream stream,
const MemoryOutputStream streamToRead 
)

Copies all the data that has been written to a MemoryOutputStream into another stream.

◆ operator<<() [8/33]

OutputStream& juce::operator<< ( OutputStream stream,
const NewLine  
)

Writes a new-line to a stream.

You can use the predefined symbol 'newLine' to invoke this, e.g.

myOutputStream << "Hello World" << newLine << newLine;
See also
OutputStream::setNewLineString

◆ operator<<() [9/33]

OutputStream& juce::operator<< ( OutputStream stream,
const String stringToWrite 
)

Writes a string to an OutputStream as UTF8.

◆ operator<<() [10/33]

OutputStream& juce::operator<< ( OutputStream stream,
double  number 
)

Writes a number to a stream as 8-bit characters in the default system encoding.

◆ operator<<() [11/33]

OutputStream& juce::operator<< ( OutputStream stream,
InputStream streamToRead 
)

Writes the complete contents of an input stream to an output stream.

◆ operator<<() [12/33]

OutputStream& juce::operator<< ( OutputStream stream,
int  number 
)

Writes a number to a stream as 8-bit characters in the default system encoding.

◆ operator<<() [13/33]

OutputStream& juce::operator<< ( OutputStream stream,
int64  number 
)

Writes a number to a stream as 8-bit characters in the default system encoding.

◆ operator<<() [14/33]

OutputStream& juce::operator<< ( OutputStream stream,
StringRef  stringToWrite 
)

Writes a string to an OutputStream as UTF8.

◆ operator<<() [15/33]

template<class traits >
std::basic_ostream<char, traits>& juce::operator<< ( std::basic_ostream< char, traits > &  stream,
const String stringToWrite 
)

This operator allows you to write a juce String directly to std output streams.

This is handy for writing strings to std::cout, std::cerr, etc.

References juce::gl::stream, and juce::String::toRawUTF8().

◆ operator<<() [16/33]

template<class traits >
std::basic_ostream<wchar_t, traits>& juce::operator<< ( std::basic_ostream< wchar_t, traits > &  stream,
const String stringToWrite 
)

This operator allows you to write a juce String directly to std output streams.

This is handy for writing strings to std::wcout, std::wcerr, etc.

References juce::gl::stream, and juce::String::toWideCharPointer().

◆ operator<<() [17/33]

String& juce::operator<< ( String string1,
char  characterToAppend 
)

Appends a character at the end of a string.

◆ operator<<() [18/33]

String& juce::operator<< ( String string1,
const char *  string2 
)

Appends a string to the end of the first one.

◆ operator<<() [19/33]

String& juce::operator<< ( String string1,
const NewLine  
)
inline

Writes a new-line sequence to a string.

You can use the predefined object 'newLine' to invoke this, e.g.

myString << "Hello World" << newLine << newLine;

References juce::NewLine::getDefault().

◆ operator<<() [20/33]

String& juce::operator<< ( String string1,
const std::string &  string2 
)

Appends a string to the end of the first one.

◆ operator<<() [21/33]

String& juce::operator<< ( String string1,
const String string2 
)

Appends a string to the end of the first one.

◆ operator<<() [22/33]

String& juce::operator<< ( String string1,
const wchar_t *  string2 
)

Appends a string to the end of the first one.

◆ operator<<() [23/33]

String& juce::operator<< ( String string1,
double  number 
)

Appends a decimal number to the end of a string.

◆ operator<<() [24/33]

String& juce::operator<< ( String string1,
float  number 
)

Appends a decimal number to the end of a string.

◆ operator<<() [25/33]

String& juce::operator<< ( String string1,
int  number 
)

Appends a decimal number to the end of a string.

◆ operator<<() [26/33]

String& juce::operator<< ( String string1,
int64  number 
)

Appends a decimal number to the end of a string.

◆ operator<<() [27/33]

String& juce::operator<< ( String string1,
long  number 
)

Appends a decimal number to the end of a string.

◆ operator<<() [28/33]

String& juce::operator<< ( String string1,
short  number 
)

Appends a decimal number to the end of a string.

◆ operator<<() [29/33]

String& juce::operator<< ( String string1,
StringRef  string2 
)

Appends a string to the end of the first one.

◆ operator<<() [30/33]

String& juce::operator<< ( String string1,
uint64  number 
)

Appends a decimal number to the end of a string.

◆ operator<<() [31/33]

String& juce::operator<< ( String string1,
uint8  number 
)

Appends a decimal number to the end of a string.

◆ operator<<() [32/33]

String& juce::operator<< ( String string1,
unsigned long  number 
)

Appends a decimal number to the end of a string.

◆ operator<<() [33/33]

String & juce::operator<< ( String string1,
wchar_t  characterToAppend 
)

Appends a character at the end of a string.

◆ operator<=() [1/4]

bool juce::operator<= ( const String string1,
StringRef  string2 
)
noexcept

Case-sensitive comparison of two strings.

◆ operator<=() [2/4]

bool juce::operator<= ( const var ,
const var  
)

Compares the values of two var objects, using the var::equals() comparison.

◆ operator<=() [3/4]

bool juce::operator<= ( RelativeTime  t1,
RelativeTime  t2 
)
noexcept

Compares two RelativeTimes.

◆ operator<=() [4/4]

bool juce::operator<= ( Time  time1,
Time  time2 
)
noexcept

Compares two Time objects.

◆ operator==() [1/13]

bool juce::operator== ( const String string1,
CharPointer_UTF16  string2 
)
noexcept

Case-sensitive comparison of two strings.

◆ operator==() [2/13]

bool juce::operator== ( const String string1,
CharPointer_UTF32  string2 
)
noexcept

Case-sensitive comparison of two strings.

◆ operator==() [3/13]

bool juce::operator== ( const String string1,
CharPointer_UTF8  string2 
)
noexcept

Case-sensitive comparison of two strings.

◆ operator==() [4/13]

bool juce::operator== ( const String string1,
const char *  string2 
)
noexcept

Case-sensitive comparison of two strings.

◆ operator==() [5/13]

bool juce::operator== ( const String string1,
const String string2 
)
noexcept

Case-sensitive comparison of two strings.

◆ operator==() [6/13]

bool juce::operator== ( const String string1,
const wchar_t *  string2 
)
noexcept

Case-sensitive comparison of two strings.

◆ operator==() [7/13]

bool juce::operator== ( const String string1,
StringRef  string2 
)
noexcept

Case-sensitive comparison of two strings.

◆ operator==() [8/13]

template<typename Type >
bool juce::operator== ( const Type *  object1,
const ReferenceCountedObjectPtr< Type > &  object2 
)
noexcept

Compares two ReferenceCountedObjectPtrs.

◆ operator==() [9/13]

bool juce::operator== ( const var ,
const char *   
)

◆ operator==() [10/13]

bool juce::operator== ( const var ,
const String  
)

◆ operator==() [11/13]

◆ operator==() [12/13]

bool juce::operator== ( RelativeTime  t1,
RelativeTime  t2 
)
noexcept

Compares two RelativeTimes.

◆ operator==() [13/13]

bool juce::operator== ( Time  time1,
Time  time2 
)
noexcept

Compares two Time objects.

◆ operator>() [1/4]

bool juce::operator> ( const String string1,
StringRef  string2 
)
noexcept

Case-sensitive comparison of two strings.

◆ operator>() [2/4]

bool juce::operator> ( const var ,
const var  
)

Compares the values of two var objects, using the var::equals() comparison.

◆ operator>() [3/4]

bool juce::operator> ( RelativeTime  t1,
RelativeTime  t2 
)
noexcept

Compares two RelativeTimes.

◆ operator>() [4/4]

bool juce::operator> ( Time  time1,
Time  time2 
)
noexcept

Compares two Time objects.

◆ operator>=() [1/4]

bool juce::operator>= ( const String string1,
StringRef  string2 
)
noexcept

Case-sensitive comparison of two strings.

◆ operator>=() [2/4]

bool juce::operator>= ( const var ,
const var  
)

Compares the values of two var objects, using the var::equals() comparison.

◆ operator>=() [3/4]

bool juce::operator>= ( RelativeTime  t1,
RelativeTime  t2 
)
noexcept

Compares two RelativeTimes.

◆ operator>=() [4/4]

bool juce::operator>= ( Time  time1,
Time  time2 
)
noexcept

Compares two Time objects.

◆ parseXML() [1/2]

std::unique_ptr<XmlElement> juce::parseXML ( const File fileToParse)

Attempts to parse some XML text, returning a new XmlElement if it was valid.

If the parse fails, this will return a nullptr - if you need more information about errors or more parsing options, see the XmlDocument class instead.

See also
XmlDocument, parseXMLIfTagMatches

◆ parseXML() [2/2]

std::unique_ptr<XmlElement> juce::parseXML ( const String textToParse)

Attempts to parse some XML text, returning a new XmlElement if it was valid.

If the parse fails, this will return a nullptr - if you need more information about errors or more parsing options, see the XmlDocument class instead.

See also
XmlDocument, parseXMLIfTagMatches

◆ parseXMLIfTagMatches() [1/2]

std::unique_ptr<XmlElement> juce::parseXMLIfTagMatches ( const File fileToParse,
StringRef  requiredTag 
)

Does an inexpensive check to see whether the top-level element has the given tag name, and if that's true, does a full parse and returns the result.

If the outer tag doesn't match, or the XML has errors, this will return nullptr;

See also
parseXML

◆ parseXMLIfTagMatches() [2/2]

std::unique_ptr<XmlElement> juce::parseXMLIfTagMatches ( const String textToParse,
StringRef  requiredTag 
)

Does an inexpensive check to see whether the top-level element has the given tag name, and if that's true, does a full parse and returns the result.

If the outer tag doesn't match, or the XML has errors, this will return nullptr;

See also
parseXML

◆ radiansToDegrees()

template<typename FloatType >
constexpr FloatType juce::radiansToDegrees ( FloatType  radians)
constexprnoexcept

Converts an angle in radians to degrees.

◆ rawToUniquePtr()

template<typename T >
std::unique_ptr<T> juce::rawToUniquePtr ( T *  ptr)

Converts an owning raw pointer into a unique_ptr, deriving the type of the unique_ptr automatically.

This should only be used with pointers to single objects. Do NOT pass a pointer to an array to this function, as the destructor of the unique_ptr will incorrectly call delete instead of delete[] on the pointer.

◆ readLittleEndianBitsInBuffer()

uint32 juce::readLittleEndianBitsInBuffer ( const void *  sourceBuffer,
uint32  startBit,
uint32  numBits 
)
noexcept

Reads a number of bits from a buffer at a given bit index.

The buffer is treated as a sequence of 8-bit bytes, and the value is encoded in little-endian order, so for example if startBit = 10, and numBits = 11 then the lower 6 bits of the result would be read from bits 2-8 of sourceBuffer[1], and the upper 5 bits of the result from bits 0-5 of sourceBuffer[2].

See also
writeLittleEndianBitsInBuffer

◆ readPosixConfigFileValue()

static String juce::readPosixConfigFileValue ( const char *  file,
const char *  key 
)
static

◆ readUnaligned()

template<typename Type >
Type juce::readUnaligned ( const void *  srcPtr)
inlinenoexcept

A handy function to read un-aligned memory without a performance penalty or bus-error.

References juce::gl::value.

◆ removeWindowHidingHooks()

void juce::removeWindowHidingHooks ( void *  )
inline

◆ repostCurrentNSEvent()

void juce::repostCurrentNSEvent ( )

◆ roundToInt() [1/2]

template<typename FloatType >
int juce::roundToInt ( const FloatType  value)
noexcept

◆ roundToInt() [2/2]

int juce::roundToInt ( int  value)
inlinenoexcept

References juce::gl::value.

◆ roundToIntAccurate()

int juce::roundToIntAccurate ( double  value)
inlinenoexcept

Fast floating-point-to-integer conversion.

This is a slightly slower and slightly more accurate version of roundToInt(). It works fine for values above zero, but negative numbers are rounded the wrong way.

References roundToInt(), and juce::gl::value.

◆ sendAccessibilityAutomationEvent()

◆ sendAccessibilityPropertyChangedEvent()

void juce::sendAccessibilityPropertyChangedEvent ( const AccessibilityHandler ,
PROPERTYID  ,
VARIANT   
)

◆ setFileModeFlags()

static bool juce::setFileModeFlags ( const String fullPath,
mode_t  flags,
bool  shouldSet 
)
staticnoexcept

◆ shutdownJuce_GUI()

void juce::shutdownJuce_GUI ( )

Clears up any static data being used by JUCE's GUI classes.

If you're embedding JUCE into an application that uses its own event-loop rather than using the START_JUCE_APPLICATION macro, call this function in your shutdown code to clean up any JUCE objects that might be lying around.

See also
initialiseJuce_GUI()

◆ snapPointerToAlignment()

template<typename Type , typename IntegerType >
Type* juce::snapPointerToAlignment ( Type *  basePointer,
IntegerType  alignmentBytes 
)
inlinenoexcept

A handy function to round up a pointer to the nearest multiple of a given number of bytes.

alignmentBytes must be a power of two.

Referenced by juce::dsp::AudioBlock< const SampleType >::AudioBlock(), juce::dsp::SIMDRegister< Type >::getNextSIMDAlignedPtr(), and juce::dsp::FIR::Filter< SampleType >::reset().

◆ sortArray()

template<class ElementType , class ElementComparator >
static void juce::sortArray ( ElementComparator &  comparator,
ElementType *const  array,
int  firstElement,
int  lastElement,
const bool  retainOrderOfEquivalentItems 
)
static

Sorts a range of elements in an array.

The comparator object that is passed-in must define a public method with the following signature:

int compareElements (ElementType first, ElementType second);

..and this method must return:

  • a value of < 0 if the first comes before the second
  • a value of 0 if the two objects are equivalent
  • a value of > 0 if the second comes before the first

To improve performance, the compareElements() method can be declared as static or const.

Parameters
comparatoran object which defines a compareElements() method
arraythe array to sort
firstElementthe index of the first element of the range to be sorted
lastElementthe index of the last element in the range that needs sorting (this is inclusive)
retainOrderOfEquivalentItemsif true, the order of items that the comparator deems the same will be maintained - this will be a slower algorithm than if they are allowed to be moved around.
See also
sortArrayRetainingOrder

References juce::gl::array, and jassert.

Referenced by juce::OwnedArray< SwatchComponent >::sort(), juce::ReferenceCountedArray< juce::AudioProcessorGraph::Node >::sort(), juce::Array< juce::MPEInstrument::Listener * >::sort(), and juce::XmlElement::sortChildElements().

◆ square()

template<typename NumericType >
constexpr NumericType juce::square ( NumericType  n)
inlineconstexprnoexcept

Returns the square of its argument.

References juce::gl::n.

◆ startAndroidActivityForResult()

void juce::startAndroidActivityForResult ( const LocalRef< jobject > &  intent,
int  requestCode,
std::function< void(int, int, LocalRef< jobject >)> &&  callback 
)

◆ threadEntryProc()

static void* juce::threadEntryProc ( void *  userData)
static

◆ translate() [1/4]

String juce::translate ( CharPointer_UTF8  stringLiteral)

Uses the LocalisedStrings class to translate the given string literal.

See also
LocalisedStrings

◆ translate() [2/4]

String juce::translate ( const char *  stringLiteral)

Uses the LocalisedStrings class to translate the given string literal.

See also
LocalisedStrings

◆ translate() [3/4]

String juce::translate ( const String stringLiteral)

Uses the LocalisedStrings class to translate the given string literal.

See also
LocalisedStrings

◆ translate() [4/4]

String juce::translate ( const String stringLiteral,
const String resultIfNotFound 
)

Uses the LocalisedStrings class to translate the given string literal.

See also
LocalisedStrings

◆ truncatePositiveToUnsignedInt()

template<typename FloatType >
unsigned int juce::truncatePositiveToUnsignedInt ( FloatType  value)
noexcept

Truncates a positive floating-point number to an unsigned int.

This is generally faster than static_cast<unsigned int> (std::floor (x)) but it only works for positive numbers small enough to be represented as an unsigned int.

References jassert, and juce::gl::value.

Referenced by juce::dsp::LookupTable< NumericType >::getUnchecked().

◆ unalignedPointerCast() [1/2]

template<typename Type , typename std::enable_if< std::is_pointer< Type >::value, int >::type = 0>
Type juce::unalignedPointerCast ( const void *  ptr)
inlinenoexcept

Casts a pointer to another type via void*, which suppresses the cast-align warning which sometimes arises when casting pointers to types with different alignment.

You should only use this when you know for a fact that the input pointer points to a region that has suitable alignment for Type, e.g. regions returned from malloc/calloc that should be suitable for any non-over-aligned type.

◆ unalignedPointerCast() [2/2]

template<typename Type , typename std::enable_if< std::is_pointer< Type >::value, int >::type = 0>
Type juce::unalignedPointerCast ( void *  ptr)
inlinenoexcept

Casts a pointer to another type via void*, which suppresses the cast-align warning which sometimes arises when casting pointers to types with different alignment.

You should only use this when you know for a fact that the input pointer points to a region that has suitable alignment for Type, e.g. regions returned from malloc/calloc that should be suitable for any non-over-aligned type.

◆ uuidFromString()

GUID juce::uuidFromString ( const char *  s)
inlinenoexcept

References juce::gl::c, and juce::gl::s.

◆ varArrayToNSArray()

NSArray * juce::varArrayToNSArray ( const var varToParse)
inline

◆ varObjectToNSDictionary()

◆ withCheckedComArgs()

template<typename Value , typename Object , typename Callback >
JUCE_COMRESULT juce::withCheckedComArgs ( Value pRetVal,
Object &  handle,
Callback &&  callback 
)
inline

References juce::gl::handle.

Referenced by juce::UIATextProvider::UIATextRangeProvider::Clone(), juce::UIATextProvider::UIATextRangeProvider::Compare(), juce::UIATextProvider::UIATextRangeProvider::CompareEndpoints(), juce::UIATextProvider::UIATextRangeProvider::FindAttribute(), juce::UIAWindowProvider::get_CanMaximize(), juce::UIAWindowProvider::get_CanMinimize(), juce::UIATransformProvider::get_CanMove(), juce::UIATransformProvider::get_CanResize(), juce::UIATransformProvider::get_CanRotate(), juce::UIASelectionProvider::get_CanSelectMultiple(), juce::UIASelectionProvider::get_CurrentSelectedItem(), juce::UIAExpandCollapseProvider::get_ExpandCollapseState(), juce::UIASelectionProvider::get_FirstSelectedItem(), juce::UIAWindowProvider::get_IsModal(), juce::UIAValueProvider::get_IsReadOnly(), juce::UIASelectionItemProvider::get_IsSelected(), juce::UIASelectionProvider::get_IsSelectionRequired(), juce::UIAWindowProvider::get_IsTopmost(), juce::UIASelectionProvider::get_ItemCount(), juce::UIASelectionProvider::get_LastSelectedItem(), juce::UIASelectionItemProvider::get_SelectionContainer(), juce::UIATextProvider::get_SupportedTextSelection(), juce::UIAToggleProvider::get_ToggleState(), juce::UIAValueProvider::get_Value(), juce::UIAWindowProvider::get_WindowInteractionState(), juce::UIAWindowProvider::get_WindowVisualState(), juce::UIATextProvider::UIATextRangeProvider::GetChildren(), juce::UIATextProvider::UIATextRangeProvider::GetEnclosingElement(), juce::UIASelectionProvider::GetSelection(), juce::UIATextProvider::RangeFromAnnotation(), juce::UIATextProvider::RangeFromChild(), juce::UIAWindowProvider::WaitForInputIdle(), juce::UIAGridItemProvider::withCellInterface(), juce::UIAGridProvider::withTableInterface(), juce::UIATextProvider::withTextInterface(), and juce::UIARangeValueProvider::withValueInterface().

◆ withMember()

template<typename Object , typename OtherObject , typename Member >
Object juce::withMember ( Object  copy,
Member OtherObject::*  member,
Member &&  value 
)

Copies an object, sets one of the copy's members to the specified value, and then returns the copy.

References juce::StandardApplicationCommandIDs::copy, and juce::gl::value.

Referenced by juce::AudioProcessorValueTreeStateParameterAttributes::withAutomatable(), juce::RangedAudioParameterAttributes< AudioParameterChoiceAttributes, int >::withAutomatable(), juce::AudioProcessorParameterWithIDAttributes::withAutomatable(), juce::AudioProcessorValueTreeStateParameterAttributes::withBoolean(), juce::AudioProcessorValueTreeStateParameterAttributes::withCategory(), juce::RangedAudioParameterAttributes< AudioParameterChoiceAttributes, int >::withCategory(), juce::AudioProcessorParameterWithIDAttributes::withCategory(), juce::AudioProcessorValueTreeStateParameterAttributes::withDiscrete(), juce::AudioProcessorValueTreeStateParameterAttributes::withInverted(), juce::RangedAudioParameterAttributes< AudioParameterChoiceAttributes, int >::withInverted(), juce::AudioProcessorParameterWithIDAttributes::withInverted(), juce::AudioProcessorValueTreeStateParameterAttributes::withLabel(), juce::RangedAudioParameterAttributes< AudioParameterChoiceAttributes, int >::withLabel(), juce::AudioProcessorParameterWithIDAttributes::withLabel(), juce::AudioProcessorValueTreeStateParameterAttributes::withMeta(), juce::RangedAudioParameterAttributes< AudioParameterChoiceAttributes, int >::withMeta(), juce::AudioProcessorParameterWithIDAttributes::withMeta(), juce::AudioProcessorValueTreeStateParameterAttributes::withStringFromValueFunction(), juce::RangedAudioParameterAttributes< AudioParameterChoiceAttributes, int >::withStringFromValueFunction(), juce::AudioProcessorValueTreeStateParameterAttributes::withValueFromStringFunction(), and juce::RangedAudioParameterAttributes< AudioParameterChoiceAttributes, int >::withValueFromStringFunction().

◆ writeLittleEndianBitsInBuffer()

void juce::writeLittleEndianBitsInBuffer ( void *  targetBuffer,
uint32  startBit,
uint32  numBits,
uint32  value 
)
noexcept

Writes a number of bits into a memory buffer at a given bit index.

The buffer is treated as a sequence of 8-bit bytes, and the value is encoded in little-endian order, so for example if startBit = 10, and numBits = 11 then the lower 6 bits of the value would be written into bits 2-8 of targetBuffer[1], and the upper 5 bits of value into bits 0-5 of targetBuffer[2].

See also
readLittleEndianBitsInBuffer

◆ writeUnaligned()

template<typename Type >
void juce::writeUnaligned ( void *  dstPtr,
Type  value 
)
inlinenoexcept

A handy function to write un-aligned memory without a performance penalty or bus-error.

References juce::gl::value.

◆ zeromem()

◆ zerostruct()

template<typename Type >
void juce::zerostruct ( Type &  structure)
inlinenoexcept

Variable Documentation

◆ androidJNIJavaVM

JavaVM* juce::androidJNIJavaVM

Referenced by threadEntryProc().

◆ javaJuceOpenGLView

const uint8 juce::javaJuceOpenGLView[]
static
Initial value:
=
{31,139,8,8,95,114,161,94,0,3,74,117,99,101,79,112,101,110,71,76,86,105,101,119,83,117,114,102,97,99,101,46,100,101,120,0,109,
84,75,107,19,81,20,62,119,230,38,169,105,76,99,218,138,86,144,32,5,55,173,83,53,98,33,173,86,90,170,196,193,34,173,81,106,93,
12,147,169,153,210,204,196,100,154,22,65,40,110,234,170,43,23,34,46,93,22,87,62,138,27,65,168,235,174,213,133,11,23,254,129,
162,136,130,223,125,196,164,208,129,239,126,231,125,206,188,78,217,91,75,142,156,191,64,151,223,190,187,182,183,251,251,212,240,
247,216,223,197,205,174,170,255,233,209,230,135,123,183,222,252,225,68,53,34,90,43,229,179,164,175,5,216,142,145,178,199,129,
93,205,63,0,6,140,224,72,129,71,153,210,159,225,152,50,137,182,193,239,13,162,143,192,14,240,25,216,3,50,240,13,1,54,48,3,204,
2,119,128,5,192,1,124,224,1,240,16,120,2,108,2,207,129,87,192,14,240,5,248,9,196,184,234,7,145,32,82,76,207,149,208,136,233,
249,187,180,252,20,189,15,105,249,5,228,164,150,95,66,238,214,242,86,135,253,181,161,234,102,100,15,83,214,50,225,233,209,61,179,
154,251,100,127,46,253,226,76,73,86,113,92,199,113,76,218,171,245,62,173,247,75,54,232,168,182,183,238,69,92,134,230,188,42,139,
251,226,210,214,205,213,124,181,28,209,57,153,57,15,105,126,144,40,141,92,38,99,251,185,154,191,229,77,203,124,67,246,56,129,
227,8,56,204,49,154,163,217,9,68,161,236,89,52,28,197,51,19,122,109,162,155,248,205,180,124,6,76,206,51,216,202,201,136,26,7,
230,140,116,17,103,157,57,67,58,231,224,232,36,162,67,124,6,92,206,198,246,221,179,33,117,166,245,182,28,31,243,3,63,186,68,172,
72,189,197,21,215,155,169,121,193,85,187,228,123,171,103,150,156,166,67,199,109,39,40,215,67,191,108,185,97,16,121,65,100,77,
10,94,139,10,29,174,251,117,167,86,241,221,134,53,233,4,77,167,81,160,129,255,174,38,42,89,179,43,245,69,199,245,68,213,2,157,
180,221,176,106,213,171,141,101,107,9,13,173,253,93,11,196,74,100,148,138,100,150,138,54,4,27,130,93,164,184,235,4,174,183,44,
25,29,40,225,170,41,40,85,246,27,53,39,114,43,83,117,103,149,120,37,108,68,148,12,156,200,111,122,115,21,191,65,217,48,184,18,
69,142,91,241,202,115,225,109,63,40,135,171,212,47,109,194,164,12,55,100,56,245,133,193,148,167,66,167,235,97,85,7,15,28,100,
213,25,41,248,208,86,107,60,18,13,79,27,61,217,68,250,226,204,48,13,83,34,125,157,166,89,58,145,30,223,152,167,60,41,30,7,111,
220,29,195,11,224,248,248,248,250,58,223,54,249,99,131,12,128,1,49,246,213,100,252,23,176,197,13,254,141,31,214,239,145,117,
112,107,111,24,29,187,195,236,216,31,173,239,94,236,144,24,181,247,72,156,218,187,132,229,148,79,236,19,150,105,255,203,70,78,
213,23,59,198,212,49,226,255,160,156,202,205,235,159,87,200,98,135,253,3,40,26,5,36,252,4,0,0,0,0}

◆ keyboardHook

◆ maxNumFileHandlesInitialiser

MaxNumFileHandlesInitialiser juce::maxNumFileHandlesInitialiser
static

◆ mouseWheelHook

◆ newLine

NewLine juce::newLine

A predefined object representing a new-line, which can be written to a string or stream.

To write a new-line to a stream, you can use the predefined 'newLine' variable like this:

myOutputStream << "Hello World" << newLine << newLine;

Referenced by juce::CppTokeniserFunctions::writeEscapeChars().

◆ nsViewFrameChangedSelector

const auto juce::nsViewFrameChangedSelector = @selector (frameChanged:)

◆ numHookUsers

int juce::numHookUsers = 0
static

◆ windowHandleXContext

XContext juce::windowHandleXContext
juce::mapFromLog10
Type mapFromLog10(Type valueInLogRange, Type logRangeMin, Type logRangeMax)
Remaps a logarithmic value in a target range to a normalised value (between 0 and 1).
Definition: juce_MathsFunctions.h:166
juce::mapToLog10
Type mapToLog10(Type value0To1, Type logRangeMin, Type logRangeMax)
Remaps a normalised value (between 0 and 1) to a logarithmic target range.
Definition: juce_MathsFunctions.h:144
juce::ScopedTryLock
CriticalSection::ScopedTryLockType ScopedTryLock
Automatically tries to lock and unlock a CriticalSection object.
Definition: juce_CriticalSection.h:260
juce::ScopedUnlock
CriticalSection::ScopedUnlockType ScopedUnlock
Automatically unlocks and re-locks a CriticalSection object.
Definition: juce_CriticalSection.h:226
juce::numElementsInArray
constexpr int numElementsInArray(Type(&)[N]) noexcept
Handy function for getting the number of elements in a simple const C array.
Definition: juce_MathsFunctions.h:344
juce::newLine
NewLine newLine
A predefined object representing a new-line, which can be written to a string or stream.
juce::gl::first
GLint first
Definition: juce_gl.h:1056
juce::ScopedLock
CriticalSection::ScopedLockType ScopedLock
Automatically locks and unlocks a CriticalSection object.
Definition: juce_CriticalSection.h:186