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

« « « Anklang Documentation
Loading...
Searching...
No Matches
Namespaces | Classes | Typedefs | Enumerations | Functions | Variables
juce Namespace Reference

JUCE Namespace. More...

Namespaces

namespace  AnimatedPositionBehaviours
 Contains classes for different types of physics behaviours - these classes are used as template parameters for the AnimatedPosition class.
 
namespace  Colours
 Contains a set of predefined named colours (mostly standard HTML colours)
 
namespace  StandardApplicationCommandIDs
 A set of general-purpose application command IDs.
 
namespace  TypeHelpers
 This namespace contains a few template classes for helping work out class type variations.
 
namespace  ValueSmoothingTypes
 A namespace containing a set of types used for specifying the smoothing behaviour of the SmoothedValue class.
 

Classes

struct  AAXClientExtensions
 An interface to allow an AudioProcessor to implement extended AAX-specific functionality. More...
 
class  AAXPluginId
 
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  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  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  AiffAudioFormatReader
 
class  AiffAudioFormatWriter
 
class  AlertTextComp
 
class  AlertWindow
 A window that displays a message and has buttons for the user to react to it. More...
 
struct  AlphaMultiplyOp
 
class  AndroidDocument
 Provides access to a document on Android devices. More...
 
struct  AndroidDocumentDetail
 
class  AndroidDocumentInfo
 Some information about a document. More...
 
class  AndroidDocumentInputSource
 An InputSource backed by an AndroidDocument. More...
 
class  AndroidDocumentIterator
 An iterator that visits child documents in a directory. More...
 
class  AndroidDocumentPermission
 Represents a permission granted to an application to read and/or write to a particular document or tree. More...
 
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...
 
class  ARAEditGuard
 Reference counting helper class to ensure that the DocumentController is in editable state. More...
 
struct  ARAFactoryResult
 Represents the result of AudioPluginFormatManager::createARAFactoryAsync(). More...
 
class  ARAFactoryWrapper
 Encapsulates an ARAFactory pointer and makes sure that it remains in a valid state for the lifetime of the ARAFactoryWrapper object. More...
 
class  ARAHostDocumentController
 Wrapper class for ARA::Host::DocumentController. 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  AsyncFunctionCallback
 
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  AudioBufferReader
 
class  AudioBufferSource
 
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  AudioDeviceSettingsPanel
 
struct  AudioDeviceSetupDetails
 
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...
 
struct  AudioIODeviceCallbackContext
 Additional information that may be passed to the AudioIODeviceCallback. 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...
 
struct  AudioSourceOwningTransportSource
 
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  AudioUnitPluginFormat
 Implements a plugin format manager for AudioUnits. More...
 
class  AudioVisualiserComponent
 A simple component that can be used to show a scrolling waveform of audio data. More...
 
class  AudioWorkgroup
 A handle to an audio workgroup, which is a collection of realtime threads working together to produce audio by a common deadline. More...
 
struct  AutoRemovingTransportSource
 
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  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  BooleanParameterComponent
 
class  BooleanPropertyComponent
 A PropertyComponent that contains an on/off toggle button. More...
 
class  BorderedComponentBoundsConstrainer
 A ComponentBoundsConstrainer that can be used to add a constant border onto another ComponentBoundsConstrainer. More...
 
class  BorderSize
 Specifies a set of gaps to be left around the sides of a rectangle. 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  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  CallOutBoxCallback
 
class  CaretComponent
 @tags{GUI} More...
 
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...
 
struct  ChannelInfo
 
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  ChildProcessManager
 Manages a set of ChildProcesses and periodically checks their return value. More...
 
struct  ChildProcessPingThread
 
class  ChildProcessWorker
 Acts as the worker end of a coordinator/worker pair of connected processes. More...
 
class  ChoiceParameterComponent
 
class  ChoicePropertyComponent
 A PropertyComponent that shows its value as a combo box. More...
 
class  ChoiceRemapperValueSource
 
class  ChoiceRemapperValueSourceWithDefault
 
class  CodeDocument
 A class for storing and manipulating a source code file. More...
 
class  CodeDocumentLine
 
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...
 
struct  ColourComponentSlider
 
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  ComboBox
 A component that lets the user choose from a drop-down list of choices. More...
 
class  ComboBoxAccessibilityHandler
 
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  ComponentWithListRowMouseBehaviours
 
class  ConcertinaPanel
 A panel which holds a vertical stack of components which can be expanded and contracted. More...
 
class  Connections
 
struct  ConnectionStateMessage
 
struct  ConsoleAppFailureCode
 
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
 Functions that allow 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  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...
 
struct  CPUInformation
 
class  CriticalSection
 A re-entrant mutex. More...
 
struct  CurrentThreadHolder
 
struct  CustomMenuBarItemHolder
 
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...
 
struct  DataDeliveryMessage
 
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  DefaultDialogWindow
 
class  DefaultElementComparator
 A simple ElementComparator class that can be used to sort an array of objects that support the '<' operator. More...
 
struct  DefaultFontInfo
 
struct  DefaultHashFunctions
 A simple class to generate hash functions for some primitive types, intended for use with the HashMap class. More...
 
struct  DefaultImageFormats
 
class  DeletedAtShutdown
 Classes derived from this will be automatically deleted when the application exits. More...
 
struct  DesaturateOp
 
class  Desktop
 Describes and controls aspects of the computer's desktop. More...
 
class  DialogWindow
 A dialog-box style window. More...
 
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  DirectoryScanner
 
struct  DisplayNode
 Represents a node in our graph of displays. 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  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...
 
struct  Enumerated
 Returned when dereferencing an EnumerateIterator. More...
 
class  EnumerateIterator
 An iterator that wraps some other iterator, keeping track of the relative position of that iterator based on calls to arithmetic operators such as operator++(), operator--(), operator+(), and operator-(). More...
 
class  ErasedScopeGuard
 A ScopeGuard that uses a std::function internally to allow type erasure. 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...
 
struct  FallbackDownloadTask
 
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...
 
struct  FileEntry
 
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  FileListTreeItem
 
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  FixedSizeFunction< len, Ret(Args...)>
 A type similar to std::function that holds a callable object. 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...
 
struct  FlexBoxLayoutCalculation
 
class  FlexItem
 Describes the properties of an item inside a FlexBox container. More...
 
class  FloatVectorOperations
 A collection of simple vector operations on arrays of floating point numbers, accelerated with SIMD instructions where possible and providing all methods from FloatVectorOperationsBase. More...
 
struct  FloatVectorOperationsBase
 A collection of simple vector operations on arrays of floating point numbers, accelerated with SIMD instructions where possible, usually accessed from the FloatVectorOperations class. 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...
 
struct  FontPlaceholderNames
 
struct  FontStyleHelpers
 
class  FreeTypeTypeface
 
class  FromVar
 Allows converting a var to an object of arbitrary type. More...
 
struct  FTFaceWrapper
 
struct  FTLibWrapper
 
class  FTTypefaceList
 
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  GIFLoader
 
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...
 
struct  GraphicsFontHelpers
 
struct  GraphRenderSequence
 
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...
 
struct  HashGenerator
 
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  HierarchyChecker
 
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  ImplicitNode
 
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  InternalMessageQueue
 
struct  InternalRunLoop
 
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  IPAddress
 Represents an IP address. More...
 
union  IPAddressByteUnion
 Union used to split a 16-bit unsigned integer into 2 8-bit unsigned integers or vice-versa. More...
 
class  IteratorPair
 Wraps a pair of iterators, providing member begin() and end() functions that return those iterators. More...
 
class  JavascriptEngine
 A simple javascript interpreter! More...
 
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...
 
struct  JSONFormatter
 
struct  JSONParser
 
struct  JSONUtils
 A mini namespace to hold utility functions for working with juce::vars. 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  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  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  LabelAccessibilityHandler
 
class  LabelKeyboardFocusTraverser
 
class  LADSPAPluginFormat
 Implements a plugin format manager for LADSPA plugins. More...
 
struct  LagrangeResampleHelper
 
struct  LagrangeResampleHelper< 0 >
 
struct  LambdaInvoker
 
struct  LambdaThread
 
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  LegacyAudioParameter
 
class  LegacyAudioParametersWrapper
 
class  Line
 Represents a line. More...
 
class  LinkedListPointer
 Helps to manipulate singly-linked lists of objects. More...
 
class  LinuxComponentPeer
 
struct  LinuxEventLoopInternal
 
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...
 
struct  ListBoxMouseMoveSelector
 
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  LockedRandom
 
class  LockingAsyncUpdater
 A bit like an AsyncUpdater, but guarantees that after cancelPendingUpdate() returns, the async function will never be called until triggerAsyncUpdate() is called again. More...
 
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_V3_DocumentWindowButton
 
class  LookAndFeel_V4
 The latest JUCE look-and-feel style, as introduced in 2017. More...
 
class  LookAndFeel_V4_DocumentWindowButton
 
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...
 
struct  LuaTokeniserFunctions
 
class  LV2PluginFormat
 Implements a plugin format for LV2 plugins. 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  MarkerListScope
 
struct  MathConstants
 Commonly used mathematical constants. 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  MemoryMappedAiffReader
 
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  MemoryMappedWavReader
 
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  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  MidiDeviceListConnection
 To find out when the available MIDI devices change, call MidiDeviceListConnection::make(), passing a lambda that will be called on each configuration change. More...
 
class  MidiDeviceListConnectionBroadcaster
 
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...
 
struct  MotifWmHints
 
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...
 
struct  MultiTimerCallback
 
struct  Named
 Combines an object with a name. More...
 
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  NativeChildHandler
 
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...
 
class  NativeScaleFactorNotifier
 Calls a function every time the native scale factor of a component's peer changes. More...
 
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  NodeAttributes
 
class  Nodes
 
class  NodeStates
 
class  NormalisableRange
 Represents a mapping between an arbitrary range of values and a normalised 0->1 range. More...
 
class  NSViewComponent
 A Mac-specific class that can create and embed an NSView inside itself. More...
 
struct  NullCheckedInvocation
 Some helper methods for checking a callable object before invoking with the specified arguments. More...
 
class  OggVorbisAudioFormat
 Reads and writes the Ogg-Vorbis audio format. More...
 
class  Optional
 A simple optional type. More...
 
class  OptionalControllerValues
 
class  OptionalPitchWheel
 
class  OptionalProgramChange
 
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  OSDependentFileComparisonRules
 
struct  OutlineWindowComponent
 
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...
 
struct  ParamControlItem
 
class  ParameterAttachment
 Used to implement 'attachments' or 'controllers' that link a plug-in parameter to a UI element. More...
 
class  ParameterComponent
 
class  ParameterDisplayComponent
 
struct  ParameterGroupItem
 
class  ParameterID
 Combines a parameter ID and a version hint. More...
 
class  ParameterListener
 
class  ParameterNumberState
 
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...
 
struct  PixelIterator
 
class  PixelRGB
 Represents a 24-bit RGB pixel, and can perform compositing operations on it. More...
 
class  PlatformTimer
 
struct  PlatformTimerListener
 
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...
 
struct  PluginSorter
 
struct  PluginTreeUtils
 
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...
 
struct  PopupMenuCompletionCallback
 
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  PosixSchedulerPriority
 
class  PosixThreadAttribute
 
class  PreferencesPanel
 A component with a set of buttons at the top for changing between pages of preferences. More...
 
struct  PrepareSettings
 
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  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  RelativeRectangleComponentPositioner
 
class  RelativeRectangleLocalScope
 
class  RelativeTime
 A relative measure of time. More...
 
class  RenderSequence
 
class  RenderSequenceBuilder
 
class  RenderSequenceExchange
 
class  RenderSequenceSignature
 
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...
 
struct  ReverseCompareString
 
class  RuntimePermissions
 
class  SafeActionImpl
 
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  ScopedMessageBox
 Objects of this type can be used to programmatically close message boxes. 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  ScopedTimeMeasurement
 Simple RAII class for measuring the time spent in a scope. More...
 
class  ScopedTryReadLock
 Automatically locks and unlocks a ReadWriteLock object. More...
 
class  ScopedTryWriteLock
 Automatically locks and unlocks a ReadWriteLock object. More...
 
class  ScopedValueSetter
 Helper class providing an RAII-based mechanism for temporarily setting and then re-setting a value. More...
 
class  ScopedWindowAssociation
 
class  ScopedWriteLock
 Automatically locks and unlocks a ReadWriteLock object. More...
 
struct  ScopeGuard
 An easy way to ensure that a function is called at the end of the current scope. More...
 
class  ScrollBar
 A scrollbar component. More...
 
class  SelectedItemSet
 Manages a list of selectable items. More...
 
struct  SequenceAndLatency
 
struct  SerialisationSize
 Holds a reference to some kind of size value, used to indicate that an object being marshalled is of variable size (e.g. More...
 
struct  SerialisationTraits
 Allows serialisation functions to be attached to a specific type without having to modify the declaration of that type. More...
 
class  SettableTooltipClient
 An implementation of TooltipClient that stores the tooltip string and a method for changing it. 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...
 
struct  SimpleDeviceManagerInputLevelMeter
 
class  SimpleValueSource
 
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  SliderAccessibilityHandler
 
class  SliderParameterAttachment
 An object of this class maintains a connection between a Slider and a plug-in parameter. More...
 
class  SliderParameterComponent
 
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  SocketOptions
 Options used for the configuration of the underlying system socket in the StreamingSocket and DatagramSocket classes. More...
 
class  SoftwareImageType
 An image storage type which holds the pixels in-memory as a simple block of values. More...
 
class  SoftwarePixelData
 
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  Span
 A non-owning view over contiguous objects stored in an Array or vector or other similar container. More...
 
class  SparseSet
 Holds a set of primitive values, storing them as a set of ranges. 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...
 
struct  StandardCachedComponentImage
 
struct  StartEndString
 
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...
 
struct  StrictVariantConverter
 A helper type that can be used to implement specialisations of VariantConverter that use FromVar::convert and ToVar::convert internally. More...
 
class  String
 The JUCE String class! More...
 
class  StringArray
 A special array for holding a list of strings. More...
 
class  StringComparator
 
struct  StringCopier
 
struct  StringCreationHelper
 
struct  StringEncodingConverter
 
struct  StringEncodingConverter< CharPointer_UTF16, CharPointer_UTF16 >
 
struct  StringEncodingConverter< CharPointer_UTF32, CharPointer_UTF32 >
 
struct  StringEncodingConverter< CharPointer_UTF8, CharPointer_UTF8 >
 
struct  StringHolder
 
class  StringHolderUtils
 
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...
 
class  SubsectionPixelData
 
class  SVGState
 
class  SwitchParameterComponent
 
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...
 
struct  TextAtom
 
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...
 
struct  TextDiffHelpers
 
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  TextRemapperValueSourceWithDefault
 
class  Thread
 Encapsulates a 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...
 
struct  ThreadPoolOptions
 A set of threads that will run a list of jobs. More...
 
struct  ThreadPriorities
 
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  TimedCallback
 Utility class wrapping a single non-null callback called by a Timer. 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  Tolerance
 A class encapsulating both relative and absolute tolerances for use in floating-point comparisons. 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  ToVar
 Allows converting an object of arbitrary type to var. More...
 
class  ToVarOptions
 Options that control conversion from arbitrary types to juce::var. 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  TypefaceCache
 
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...
 
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...
 
struct  ValueTreePropertyValueSource
 
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  VBlankAttachment
 Helper class to synchronise Component updates to the vertical blank event of the display that the Component is presented on. More...
 
class  Viewport
 A Viewport is used to contain a larger child component, and allows the child to be automatically scrolled around. More...
 
struct  VST2ClientExtensions
 An interface to allow an AudioProcessor to implement extended VST2-specific functionality. More...
 
struct  VST3ClientExtensions
 An interface to allow an AudioProcessor to implement extended VST3-specific functionality. More...
 
class  VST3PluginFormat
 Implements a plugin format for VST3s. 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  WavAudioFormatReader
 
class  WavAudioFormatWriter
 
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  WildcardFileFilter
 A type of FileFilter that works by wildcard pattern matching. More...
 
struct  WildCardMatcher
 
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...
 
struct  WindowUtils
 Windowing helper functions. More...
 
struct  WindowUtilsInternal
 
class  WorkgroupToken
 Created by AudioWorkgroup to join the calling thread to a workgroup. More...
 
class  X11DragState
 
class  X11Symbols
 
class  XBitmapImage
 
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.
 
using MidiKeyboardStateListener = MidiKeyboardState::Listener
 
using WindowedSincInterpolator = Interpolators::WindowedSinc
 An interpolator for resampling a stream of floats using high order windowed (hann) sinc interpolation, recommended for high quality resampling.
 
using LagrangeInterpolator = Interpolators::Lagrange
 An interpolator for resampling a stream of floats using 4-point lagrange interpolation.
 
using CatmullRomInterpolator = Interpolators::CatmullRom
 An interpolator for resampling a stream of floats using Catmull-Rom interpolation.
 
using LinearInterpolator = Interpolators::Linear
 An interpolator for resampling a stream of floats using linear interpolation.
 
using ZeroOrderHoldInterpolator = Interpolators::ZeroOrderHold
 An interpolator for resampling a stream of floats using zero order hold interpolation.
 
template<typename FloatType >
using LinearSmoothedValue = SmoothedValue< FloatType, ValueSmoothingTypes::Linear >
 
using StringMap = std::unordered_map< String, String >
 
typedef ComponentPeer *(* createUnityPeerFunctionType) (Component &)
 
using VSTCallbackHandler = VST2ClientExtensions
 
using Nullopt = std::nullopt_t
 
using int8 = signed char
 A platform-independent 8-bit signed integer type.
 
using uint8 = unsigned char
 A platform-independent 8-bit unsigned integer type.
 
using int16 = signed short
 A platform-independent 16-bit signed integer type.
 
using uint16 = unsigned short
 A platform-independent 16-bit unsigned integer type.
 
using int32 = signed int
 A platform-independent 32-bit signed integer type.
 
using uint32 = unsigned int
 A platform-independent 32-bit unsigned integer type.
 
using int64 = long long
 A platform-independent 64-bit integer type.
 
using uint64 = unsigned long long
 A platform-independent 64-bit unsigned integer type.
 
using pointer_sized_int = int
 A signed integer type that's guaranteed to be large enough to hold a pointer without truncating it.
 
using pointer_sized_uint = unsigned int
 An unsigned integer type that's guaranteed to be large enough to hold a pointer without truncating it.
 
template<typename A , typename B >
using DisableIfSameOrDerived = std::enable_if_t<! std::is_base_of_v< A, std::remove_reference_t< B > > >
 Can be used to disable template constructors that would otherwise cause ambiguity with compiler-generated copy and move constructors.
 
using juce_socklen_t = socklen_t
 
using juce_recvsend_size_t = socklen_t
 
using SocketHandle = int
 
using juce_wchar = wchar_t
 A platform-independent 32-bit unicode character type.
 
using CharPointer_wchar_t = CharPointer_UTF32
 
using ScopedLock = CriticalSection::ScopedLockType
 Automatically locks and unlocks a CriticalSection object.
 
using ScopedUnlock = CriticalSection::ScopedUnlockType
 Automatically unlocks and re-locks a CriticalSection object.
 
using ScopedTryLock = CriticalSection::ScopedTryLockType
 Automatically tries to lock and unlock a CriticalSection object.
 
using ChildProcessSlave = ChildProcessWorker
 
using ChildProcessMaster = ChildProcessCoordinator
 
using MessageCallbackFunction = void *(void *userData)
 See MessageManager::callFunctionOnMessageThread() for use of this function type.
 
using GetTypefaceForFont = Typeface::Ptr(*)(const Font &)
 
using CommandID = int
 A type used to hold the unique ID for an application command.
 
using ViewportDragPosition = AnimatedPosition< AnimatedPositionBehaviours::ContinuousWithMomentum >
 
using OSCType = char
 The type used for OSC type tags.
 
using OSCTypeList = Array< OSCType >
 The type used for OSC type tag strings.
 

Enumerations

enum class  WASAPIDeviceMode { shared , exclusive , sharedLowLatency }
 Available modes for the WASAPI audio device. More...
 
enum  VariantStreamMarkers {
  varMarker_Int , varMarker_BoolTrue , varMarker_BoolFalse , varMarker_Double ,
  varMarker_String , varMarker_Int64 , varMarker_Array , varMarker_Binary ,
  varMarker_Undefined
}
 
enum  { U_ISOFS_SUPER_MAGIC , U_MSDOS_SUPER_MAGIC , U_NFS_SUPER_MAGIC , U_SMB_SUPER_MAGIC }
 
enum  { magicCoordWorkerConnectionHeader }
 
enum  { specialMessageSize , defaultTimeoutMs }
 
enum  NotificationType { dontSendNotification , sendNotification , sendNotificationSync , sendNotificationAsync }
 These enums are used in various classes to indicate whether a notification event should be sent out. More...
 
enum class  AccessibilityActionType { press , toggle , focus , showMenu }
 An action that can be performed by an accessible UI element. More...
 
enum class  AccessibilityEvent {
  valueChanged , titleChanged , structureChanged , textSelectionChanged ,
  textChanged , rowSelectionChanged
}
 A list of events that can be notified to any subscribed accessibility clients. More...
 
enum class  AccessibilityRole {
  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
}
 The list of available roles for an AccessibilityHandler object. More...
 
enum  { clickMessageId }
 
enum  { KeyPressEventType }
 
enum class  MessageBoxIconType { NoIcon , QuestionIcon , WarningIcon , InfoIcon }
 The type of icon to show in the dialog box. More...
 
enum class  ResultCodeMappingMode { plainIndex , alertWindow }
 
enum  { maxXEmbedVersionToSupport }
 
enum  { XEMBED_MAPPED }
 
enum  {
  XEMBED_EMBEDDED_NOTIFY , XEMBED_WINDOW_ACTIVATE , XEMBED_WINDOW_DEACTIVATE , XEMBED_REQUEST_FOCUS ,
  XEMBED_FOCUS_IN , XEMBED_FOCUS_OUT , XEMBED_FOCUS_NEXT , XEMBED_FOCUS_PREV ,
  XEMBED_MODALITY_ON , XEMBED_MODALITY_OFF , XEMBED_REGISTER_ACCELERATOR , XEMBED_UNREGISTER_ACCELERATOR ,
  XEMBED_ACTIVATE_ACCELERATOR
}
 
enum  { XEMBED_FOCUS_CURRENT , XEMBED_FOCUS_FIRST , XEMBED_FOCUS_LAST }
 

Functions

template<typename Type >
bool operator== (const AudioBuffer< Type > &a, const AudioBuffer< Type > &b)
 
template<typename Type >
bool operator!= (const AudioBuffer< Type > &a, const AudioBuffer< Type > &b)
 
template<typename Obj , typename Member , typename... Ts>
constexpr Obj makeARASizedStruct (Member Obj::*member, Ts &&... ts)
 
void createARAFactoryAsync (AudioPluginInstance &instance, std::function< void(ARAFactoryWrapper)> cb)
 Calls the provided callback with an ARAFactoryWrapper object obtained from the provided AudioPluginInstance.
 
template<typename Callback >
void callOnMessageThread (Callback &&callback)
 
template<typename Attachment , typename Control >
std::unique_ptr< AttachmentmakeAttachment (const AudioProcessorValueTreeState &stateToUse, const String &parameterID, Control &control)
 
Image JUCE_API getIconFromApplication (const String &, const int)
 
template<typename Begin , typename End = Begin>
constexpr auto makeRange (Begin begin, End end)
 Given two iterators "begin" and "end", returns an IteratorPair with a member begin() and end() function.
 
template<typename Range , typename Index = detail::withAdlSize::AdlSignedSize<Range>>
constexpr auto enumerate (Range &&range, Index startingValue={})
 Given a range and an optional starting offset, returns an IteratorPair that holds EnumerateIterators wrapping the begin() and end() of the range.
 
template<size_t len, typename T >
bool operator!= (const FixedSizeFunction< len, T > &fn, std::nullptr_t)
 
template<size_t len, typename T >
bool operator!= (std::nullptr_t, const FixedSizeFunction< len, T > &fn)
 
template<size_t len, typename T >
bool operator== (const FixedSizeFunction< len, T > &fn, std::nullptr_t)
 
template<size_t len, typename T >
bool operator== (std::nullptr_t, const FixedSizeFunction< len, T > &fn)
 
template<typename Value >
JUCE_END_IGNORE_WARNINGS_MSVC Optional< std::decay_t< Value > > makeOptional (Value &&v)
 
template<typename T , typename End >
 Span (T, End) -> Span< std::remove_pointer_t< decltype(detail::toAddress(std::declval< T >()))> >
 
template<typename T , size_t N>
 Span (T(&)[N]) -> Span< T, N >
 
template<typename T , size_t N>
 Span (std::array< T, N > &) -> Span< T, N >
 
template<typename T , size_t N>
 Span (const std::array< T, N > &) -> Span< const T, N >
 
template<typename Range >
 Span (Range &&r) -> Span< std::remove_pointer_t< decltype(std::data(r))> >
 
bool canCompare (const var &v1, const var &v2)
 
bool operator== (const var &, const var &)
 Compares the values of two var objects, using the var::equals() comparison.
 
bool operator!= (const var &, const var &)
 Compares the values of two var objects, using the var::equals() comparison.
 
bool operator< (const var &, const var &)
 Compares the values of two var objects, using the var::equals() comparison.
 
bool operator> (const var &, const var &)
 Compares the values of two var objects, using the var::equals() comparison.
 
bool operator<= (const var &, const var &)
 Compares the values of two var objects, using the var::equals() comparison.
 
bool operator>= (const var &, const var &)
 Compares the values of two var objects, using the var::equals() comparison.
 
bool operator== (const var &v1, const String &v2)
 
bool operator!= (const var &v1, const String &v2)
 
bool operator== (const var &v1, const char *v2)
 
bool operator!= (const var &v1, const char *v2)
 
int64 juce_fileSetPosition (void *handle, int64 pos)
 
const DirectoryEntryoperator* (const DirectoryEntry &e) noexcept
 A convenience operator so that the expression *it++ works correctly when it is an instance of RangedDirectoryIterator.
 
RangedDirectoryIterator begin (const RangedDirectoryIterator &it)
 Returns the iterator that was passed in.
 
RangedDirectoryIterator end (const RangedDirectoryIterator &)
 Returns a default-constructed sentinel value.
 
bool juce_isRunningUnderDebugger () noexcept
 < This macro is added to all JUCE public class declarations.
 
void logAssertion (const char *file, int line) noexcept
 < This macro is added to all JUCE public class declarations.
 
int findHighestSetBit (uint32 n) noexcept
 Returns the index of the highest set bit in a (non-zero) number.
 
OutputStream &JUCE_CALLTYPE operator<< (OutputStream &stream, const BigInteger &value)
 Writes a BigInteger to an OutputStream as a UTF8 decimal string.
 
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.
 
uint32 readLittleEndianBitsInBuffer (const void *sourceBuffer, uint32 startBit, uint32 numBits) noexcept
 Reads a number of bits from a buffer at a given bit index.
 
template<typename... Types>
void ignoreUnused (Types &&...) noexcept
 Handy function for avoiding unused variables warning.
 
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.
 
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.
 
template<typename FloatType >
constexpr FloatType degreesToRadians (FloatType degrees) noexcept
 Converts an angle in degrees to radians.
 
template<typename FloatType >
constexpr FloatType radiansToDegrees (FloatType radians) noexcept
 Converts an angle in radians to degrees.
 
template<typename NumericType >
bool juce_isfinite (NumericType value) noexcept
 The isfinite() method seems to vary between platforms, so this is a platform-independent function for it.
 
template<typename Type >
constexpr bool exactlyEqual (Type a, Type b)
 Equivalent to operator==, but suppresses float-equality warnings.
 
template<typename Type , std::enable_if_t< std::is_floating_point_v< Type >, int > = 0>
constexpr bool approximatelyEqual (Type a, Type b, Tolerance< Type > tolerance=Tolerance< Type >{} .withAbsolute(std::numeric_limits< Type >::min()) .withRelative(std::numeric_limits< Type >::epsilon()))
 Returns true if the two floating-point numbers are approximately equal.
 
template<typename Type , std::enable_if_t<! std::is_floating_point_v< Type >, int > = 0>
constexpr bool approximatelyEqual (Type a, Type b)
 Special case for non-floating-point types that returns true if both are exactly equal.
 
template<typename FloatType >
FloatType nextFloatUp (FloatType value) noexcept
 Returns the next representable value by FloatType in the direction of the largest representable value.
 
template<typename FloatType >
FloatType nextFloatDown (FloatType value) noexcept
 Returns the next representable value by FloatType in the direction of the lowest representable value.
 
template<typename Type >
constexpr Type jmax (Type a, Type b)
 Returns the larger of two values.
 
template<typename Type >
constexpr Type jmax (Type a, Type b, Type c)
 Returns the larger of three values.
 
template<typename Type >
constexpr Type jmax (Type a, Type b, Type c, Type d)
 Returns the larger of four values.
 
template<typename Type >
constexpr Type jmin (Type a, Type b)
 Returns the smaller of two values.
 
template<typename Type >
constexpr Type jmin (Type a, Type b, Type c)
 Returns the smaller of three values.
 
template<typename Type >
constexpr Type jmin (Type a, Type b, Type c, Type d)
 Returns the smaller of four values.
 
template<typename Type >
constexpr Type jmap (Type value0To1, Type targetRangeMin, Type targetRangeMax)
 Remaps a normalised value (between 0 and 1) to a target range.
 
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.
 
template<typename Type >
Type mapToLog10 (Type value0To1, Type logRangeMin, Type logRangeMax)
 Remaps a normalised value (between 0 and 1) to a logarithmic target range.
 
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).
 
template<typename Type , typename Size >
Type findMinimum (const Type *data, Size numValues)
 Scans an array of values, returning the minimum value that it contains.
 
template<typename Type , typename Size >
Type findMaximum (const Type *values, Size numValues)
 Scans an array of values, returning the maximum value that it contains.
 
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.
 
template<typename Type >
Type jlimit (Type lowerLimit, Type upperLimit, Type valueToConstrain) noexcept
 Constrains a value to keep it within a given range.
 
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.
 
template<typename Type >
bool isPositiveAndBelow (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.
 
template<typename Type >
bool isPositiveAndNotGreaterThan (int valueToTest, Type upperLimit) noexcept
 
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.
 
template<typename FloatType >
int roundToInt (const FloatType value) noexcept
 Fast floating-point-to-integer conversion.
 
int roundToInt (int value) noexcept
 
int roundToIntAccurate (double value) noexcept
 Fast floating-point-to-integer conversion.
 
template<typename FloatType >
unsigned int truncatePositiveToUnsignedInt (FloatType value) noexcept
 Truncates a positive floating-point number to an unsigned int.
 
template<typename IntegerType >
constexpr bool isPowerOfTwo (IntegerType value)
 Returns true if the specified integer is a power-of-two.
 
int nextPowerOfTwo (int n) noexcept
 Returns the smallest power-of-two which is equal to or greater than the given integer.
 
constexpr int countNumberOfBits (uint32 n) noexcept
 Returns the number of bits in a 32-bit integer.
 
constexpr int countNumberOfBits (uint64 n) noexcept
 Returns the number of bits in a 64-bit integer.
 
template<typename IntegerType >
IntegerType negativeAwareModulo (IntegerType dividend, const IntegerType divisor) noexcept
 Performs a modulo operation, but can cope with the dividend being negative.
 
template<typename NumericType >
constexpr NumericType square (NumericType n) noexcept
 Returns the square of its argument.
 
template<typename T >
constexpr auto toUnderlyingType (T t) -> std::enable_if_t< std::is_enum_v< T >, std::underlying_type_t< T > >
 Converts an enum to its underlying integral type.
 
void zeromem (void *memory, size_t numBytes) noexcept
 Fills a block of memory with zeros.
 
template<typename Type >
void zerostruct (Type &structure) noexcept
 Overwrites a structure or object with zeros.
 
template<typename Type >
void deleteAndZero (Type &pointer)
 Delete an object pointer, and sets the pointer to null.
 
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.
 
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.
 
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.
 
template<typename Type >
Type readUnaligned (const void *srcPtr) noexcept
 A handy function to read un-aligned memory without a performance penalty or bus-error.
 
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.
 
template<typename Type >
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.
 
template<typename Type >
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.
 
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.
 
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.
 
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.
 
template<typename Type >
bool operator== (const Type *object1, const ReferenceCountedObjectPtr< Type > &object2) noexcept
 Compares two ReferenceCountedObjectPtrs.
 
template<typename Type >
bool operator!= (const Type *object1, const ReferenceCountedObjectPtr< Type > &object2) noexcept
 Compares two ReferenceCountedObjectPtrs.
 
template<typename EnumType , std::enable_if_t< std::is_enum_v< EnumType >, int > = 0>
constexpr bool hasBitValueSet (EnumType enumValue, EnumType valueToLookFor) noexcept
 
template<typename EnumType , std::enable_if_t< std::is_enum_v< EnumType >, int > = 0>
constexpr EnumType withBitValueSet (EnumType enumValue, EnumType valueToAdd) noexcept
 
template<typename EnumType , std::enable_if_t< std::is_enum_v< EnumType >, int > = 0>
constexpr EnumType withBitValueCleared (EnumType enumValue, EnumType valueToRemove) noexcept
 
template<typename Object , typename OtherObject , typename Member , typename Other >
Object withMember (Object copy, Member OtherObject::*member, Other &&value)
 Copies an object, sets one of the copy's members to the specified value, and then returns the copy.
 
template<typename Fn >
 ScopeGuard (Fn) -> ScopeGuard< Fn >
 
int juce_siginterrupt (int sig, int flag)
 
File juce_getExecutableFile ()
 
void juce_runSystemCommand (const String &)
 
String juce_getOutputFromCommand (const String &)
 
uint32 juce_millisecondsSinceStartup () noexcept
 
template<typename T >
constexpr auto named (std::string_view c, T &t)
 Produces a Named instance that holds a mutable reference.
 
template<typename T >
constexpr auto named (std::string_view c, const T &t)
 Produces a Named instance that holds an immutable reference.
 
template<typename T >
constexpr auto serialisationSize (T &t) -> std::enable_if_t< std::is_integral_v< T >, SerialisationSize< T > >
 Produces a SerialisationSize instance that holds a mutable reference to a size value.
 
template<typename T >
constexpr auto serialisationSize (const T &t) -> std::enable_if_t< std::is_integral_v< T >, SerialisationSize< const T > >
 Produces a SerialisationSize instance that holds an immutable reference to a size value.
 
OutputStream &JUCE_CALLTYPE operator<< (OutputStream &stream, const MemoryOutputStream &streamToRead)
 Copies all the data that has been written to a MemoryOutputStream into another stream.
 
JUCE_API OutputStream &JUCE_CALLTYPE operator<< (OutputStream &stream, int number)
 Writes a number to a stream as 8-bit characters in the default system encoding.
 
JUCE_API OutputStream &JUCE_CALLTYPE operator<< (OutputStream &stream, int64 number)
 Writes a number to a stream as 8-bit characters in the default system encoding.
 
JUCE_API OutputStream &JUCE_CALLTYPE operator<< (OutputStream &stream, double number)
 Writes a number to a stream as 8-bit characters in the default system encoding.
 
JUCE_API OutputStream &JUCE_CALLTYPE operator<< (OutputStream &stream, char character)
 Writes a character to a stream.
 
JUCE_API OutputStream &JUCE_CALLTYPE operator<< (OutputStream &stream, const char *text)
 Writes a null-terminated text string to a stream.
 
JUCE_API OutputStream &JUCE_CALLTYPE operator<< (OutputStream &stream, const MemoryBlock &data)
 Writes a block of data from a MemoryBlock to a stream.
 
JUCE_API OutputStream &JUCE_CALLTYPE operator<< (OutputStream &stream, const File &fileToRead)
 Writes the contents of a file to a stream.
 
JUCE_API OutputStream &JUCE_CALLTYPE operator<< (OutputStream &stream, InputStream &streamToRead)
 Writes the complete contents of an input stream to an output stream.
 
JUCE_API OutputStream &JUCE_CALLTYPE operator<< (OutputStream &stream, const NewLine &)
 Writes a new-line to a stream.
 
String getLegacyUniqueDeviceID ()
 
JUCE_API String translate (const String &stringLiteral)
 Uses the LocalisedStrings class to translate the given string literal.
 
JUCE_API String translate (const char *stringLiteral)
 Uses the LocalisedStrings class to translate the given string literal.
 
JUCE_API String translate (CharPointer_UTF8 stringLiteral)
 Uses the LocalisedStrings class to translate the given string literal.
 
JUCE_API String translate (const String &stringLiteral, const String &resultIfNotFound)
 Uses the LocalisedStrings class to translate the given string literal.
 
Stringoperator<< (String &string1, const NewLine &)
 Writes a new-line sequence to a string.
 
Stringoperator+= (String &s1, const NewLine &)
 
String operator+ (const NewLine &, const NewLine &)
 
String operator+ (String s1, const NewLine &)
 
String operator+ (const NewLine &, const char *s2)
 
JUCE_API bool JUCE_CALLTYPE operator== (const String &string1, const String &string2) noexcept
 Case-sensitive comparison of two strings.
 
JUCE_API bool JUCE_CALLTYPE operator!= (const String &string1, const String &string2) noexcept
 Case-sensitive comparison of two strings.
 
JUCE_API bool JUCE_CALLTYPE operator== (const String &string1, const char *string2) noexcept
 Case-sensitive comparison of two strings.
 
JUCE_API bool JUCE_CALLTYPE operator!= (const String &string1, const char *string2) noexcept
 Case-sensitive comparison of two strings.
 
JUCE_API bool JUCE_CALLTYPE operator== (const String &string1, const wchar_t *string2) noexcept
 Case-sensitive comparison of two strings.
 
JUCE_API bool JUCE_CALLTYPE operator!= (const String &string1, const wchar_t *string2) noexcept
 Case-sensitive comparison of two strings.
 
JUCE_API bool JUCE_CALLTYPE operator== (const String &string1, StringRef string2) noexcept
 Case-sensitive comparison of two strings.
 
JUCE_API bool JUCE_CALLTYPE operator!= (const String &string1, StringRef string2) noexcept
 Case-sensitive comparison of two strings.
 
JUCE_API bool JUCE_CALLTYPE operator< (const String &string1, StringRef string2) noexcept
 Case-sensitive comparison of two strings.
 
JUCE_API bool JUCE_CALLTYPE operator<= (const String &string1, StringRef string2) noexcept
 Case-sensitive comparison of two strings.
 
JUCE_API bool JUCE_CALLTYPE operator> (const String &string1, StringRef string2) noexcept
 Case-sensitive comparison of two strings.
 
JUCE_API bool JUCE_CALLTYPE operator>= (const String &string1, StringRef string2) noexcept
 Case-sensitive comparison of two strings.
 
JUCE_API bool JUCE_CALLTYPE operator== (const String &string1, CharPointer_UTF8 string2) noexcept
 Case-sensitive comparison of two strings.
 
JUCE_API bool JUCE_CALLTYPE operator!= (const String &string1, CharPointer_UTF8 string2) noexcept
 Case-sensitive comparison of two strings.
 
JUCE_API bool JUCE_CALLTYPE operator== (const String &string1, CharPointer_UTF16 string2) noexcept
 Case-sensitive comparison of two strings.
 
JUCE_API bool JUCE_CALLTYPE operator!= (const String &string1, CharPointer_UTF16 string2) noexcept
 Case-sensitive comparison of two strings.
 
JUCE_API bool JUCE_CALLTYPE operator== (const String &string1, CharPointer_UTF32 string2) noexcept
 Case-sensitive comparison of two strings.
 
JUCE_API bool JUCE_CALLTYPE operator!= (const String &string1, CharPointer_UTF32 string2) noexcept
 Case-sensitive comparison of two strings.
 
JUCE_API String JUCE_CALLTYPE operator+ (const char *string1, const String &string2)
 Concatenates two strings.
 
JUCE_API String JUCE_CALLTYPE operator+ (const wchar_t *string1, const String &string2)
 Concatenates two strings.
 
JUCE_API String JUCE_CALLTYPE operator+ (char string1, const String &string2)
 Concatenates two strings.
 
JUCE_API String JUCE_CALLTYPE operator+ (wchar_t string1, const String &string2)
 Concatenates two strings.
 
JUCE_API String JUCE_CALLTYPE operator+ (String string1, const String &string2)
 Concatenates two strings.
 
JUCE_API String JUCE_CALLTYPE operator+ (String string1, const char *string2)
 Concatenates two strings.
 
JUCE_API String JUCE_CALLTYPE operator+ (String string1, const wchar_t *string2)
 Concatenates two strings.
 
JUCE_API String JUCE_CALLTYPE operator+ (String string1, const std::string &string2)
 Concatenates two strings.
 
JUCE_API String JUCE_CALLTYPE operator+ (String string1, char characterToAppend)
 Concatenates two strings.
 
JUCE_API String JUCE_CALLTYPE operator+ (String string1, wchar_t characterToAppend)
 Concatenates two strings.
 
JUCE_API String &JUCE_CALLTYPE operator<< (String &string1, wchar_t characterToAppend)
 Appends a character at the end of a string.
 
JUCE_API String &JUCE_CALLTYPE operator<< (String &string1, char characterToAppend)
 Appends a character at the end of a string.
 
JUCE_API String &JUCE_CALLTYPE operator<< (String &string1, const char *string2)
 Appends a string to the end of the first one.
 
JUCE_API String &JUCE_CALLTYPE operator<< (String &string1, const wchar_t *string2)
 Appends a string to the end of the first one.
 
JUCE_API String &JUCE_CALLTYPE operator<< (String &string1, const String &string2)
 Appends a string to the end of the first one.
 
JUCE_API String &JUCE_CALLTYPE operator<< (String &string1, StringRef string2)
 Appends a string to the end of the first one.
 
JUCE_API String &JUCE_CALLTYPE operator<< (String &string1, const std::string &string2)
 Appends a string to the end of the first one.
 
JUCE_API String &JUCE_CALLTYPE operator<< (String &string1, uint8 number)
 Appends a decimal number to the end of a string.
 
JUCE_API String &JUCE_CALLTYPE operator<< (String &string1, short number)
 Appends a decimal number to the end of a string.
 
JUCE_API String &JUCE_CALLTYPE operator<< (String &string1, int number)
 Appends a decimal number to the end of a string.
 
JUCE_API String &JUCE_CALLTYPE operator<< (String &string1, long number)
 Appends a decimal number to the end of a string.
 
JUCE_API String &JUCE_CALLTYPE operator<< (String &string1, unsigned long number)
 Appends a decimal number to the end of a string.
 
JUCE_API String &JUCE_CALLTYPE operator<< (String &string1, int64 number)
 Appends a decimal number to the end of a string.
 
JUCE_API String &JUCE_CALLTYPE operator<< (String &string1, uint64 number)
 Appends a decimal number to the end of a string.
 
JUCE_API String &JUCE_CALLTYPE operator<< (String &string1, float number)
 Appends a decimal number to the end of a string.
 
JUCE_API String &JUCE_CALLTYPE operator<< (String &string1, double number)
 Appends a decimal number to the end of a string.
 
JUCE_API OutputStream &JUCE_CALLTYPE operator<< (OutputStream &stream, const String &stringToWrite)
 Writes a string to an OutputStream as UTF8.
 
JUCE_API OutputStream &JUCE_CALLTYPE operator<< (OutputStream &stream, StringRef stringToWrite)
 Writes a string to an OutputStream as UTF8.
 
template<class traits >
std::basic_ostream< char, traits > &JUCE_CALLTYPE operator<< (std::basic_ostream< char, traits > &stream, const String &stringToWrite)
 This operator allows you to write a juce String directly to std output streams.
 
template<class traits >
std::basic_ostream< wchar_t, traits > &JUCE_CALLTYPE 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.
 
String operator+ (String s1, StringRef s2)
 
String operator+ (StringRef s1, const String &s2)
 
String operator+ (const char *s1, StringRef s2)
 
String operator+ (StringRef s1, const char *s2)
 
void JUCE_API juce_threadEntryPoint (void *userData)
 
JUCE_API RelativeTime JUCE_CALLTYPE operator+ (RelativeTime t1, RelativeTime t2) noexcept
 Adds two RelativeTimes together.
 
JUCE_API RelativeTime JUCE_CALLTYPE operator- (RelativeTime t1, RelativeTime t2) noexcept
 Subtracts two RelativeTimes.
 
JUCE_API bool JUCE_CALLTYPE operator== (RelativeTime t1, RelativeTime t2) noexcept
 Compares two RelativeTimes.
 
JUCE_API bool JUCE_CALLTYPE operator!= (RelativeTime t1, RelativeTime t2) noexcept
 Compares two RelativeTimes.
 
JUCE_API bool JUCE_CALLTYPE operator> (RelativeTime t1, RelativeTime t2) noexcept
 Compares two RelativeTimes.
 
JUCE_API bool JUCE_CALLTYPE operator< (RelativeTime t1, RelativeTime t2) noexcept
 Compares two RelativeTimes.
 
JUCE_API bool JUCE_CALLTYPE operator>= (RelativeTime t1, RelativeTime t2) noexcept
 Compares two RelativeTimes.
 
JUCE_API bool JUCE_CALLTYPE operator<= (RelativeTime t1, RelativeTime t2) noexcept
 Compares two RelativeTimes.
 
Time operator+ (Time time, RelativeTime delta) noexcept
 Adds a RelativeTime to a Time.
 
Time operator- (Time time, RelativeTime delta) noexcept
 Subtracts a RelativeTime from a Time.
 
Time operator+ (RelativeTime delta, Time time) noexcept
 Adds a RelativeTime to a Time.
 
RelativeTime operator- (Time time1, Time time2) noexcept
 Returns the relative time difference between two times.
 
bool operator== (Time time1, Time time2) noexcept
 Compares two Time objects.
 
bool operator!= (Time time1, Time time2) noexcept
 Compares two Time objects.
 
bool operator< (Time time1, Time time2) noexcept
 Compares two Time objects.
 
bool operator> (Time time1, Time time2) noexcept
 Compares two Time objects.
 
bool operator<= (Time time1, Time time2) noexcept
 Compares two Time objects.
 
bool operator>= (Time time1, Time time2) noexcept
 Compares two Time objects.
 
std::unique_ptr< XmlElementparseXML (const String &textToParse)
 Attempts to parse some XML text, returning a new XmlElement if it was valid.
 
std::unique_ptr< XmlElementparseXML (const File &fileToParse)
 Attempts to parse some XML text, returning a new XmlElement if it was valid.
 
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.
 
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.
 
uint16 readUnalignedLittleEndianShort (const void *buffer)
 
uint32 readUnalignedLittleEndianInt (const void *buffer)
 
OutputStream &JUCE_CALLTYPE operator<< (OutputStream &, const Value &)
 Writes a Value to an OutputStream as a UTF8 string.
 
template<typename Type >
dsp::SIMDRegister< Type > JUCE_VECTOR_CALLTYPE jmin (dsp::SIMDRegister< Type > a, dsp::SIMDRegister< Type > b)
 
template<typename Type >
dsp::SIMDRegister< Type > JUCE_VECTOR_CALLTYPE jmax (dsp::SIMDRegister< Type > a, dsp::SIMDRegister< Type > b)
 
JUCE_API void JUCE_CALLTYPE initialiseJuce_GUI ()
 Initialises JUCE's GUI classes.
 
JUCE_API void JUCE_CALLTYPE shutdownJuce_GUI ()
 Clears up any static data being used by JUCE's GUI classes.
 
uint32 maskPixelComponents (uint32 x) noexcept
 
uint32 clampPixelComponents (uint32 x) noexcept
 
template<typename ValueType >
Point< ValueType > operator* (ValueType value, Point< ValueType > p) noexcept
 Multiplies the point's coordinates by a scalar value.
 
template<typename T >
int threeWayCompare (const T &a, const T &b)
 
int threeWayCompare (const String &a, const String &b)
 
int threeWayCompare (const ReverseCompareString &a, const ReverseCompareString &b)
 
template<size_t position, typename... Ts>
constexpr int threeWayCompareImpl (const std::tuple< Ts... > &a, const std::tuple< Ts... > &b)
 
template<typename... Ts>
constexpr int threeWayCompare (const std::tuple< Ts... > &a, const std::tuple< Ts... > &b)
 
constexpr Grid::Px operator""_px (long double px)
 
constexpr Grid::Px operator""_px (unsigned long long px)
 
constexpr Grid::Fr operator""_fr (unsigned long long fr)
 
bool juce_performDragDropFiles (const StringArray &, const bool copyFiles, bool &shouldStop)
 
bool juce_performDragDropText (const String &, bool &shouldStop)
 
ComponentPeergetPeerFor (::Window)
 
void juce_LinuxAddRepaintListener (ComponentPeer *peer, Component *dummy)
 
void juce_LinuxRemoveRepaintListener (ComponentPeer *peer, Component *dummy)
 
::Window juce_createKeyProxyWindow (ComponentPeer *peer)
 
void juce_deleteKeyProxyWindow (::Window keyProxy)
 
Image createSnapshotOfNativeWindow (void *window)
 
template<typename FindIndex >
Optional< AccessibilityTableInterface::SpanfindRecursively (const AccessibilityHandler &handler, Component *outermost, FindIndex &&findIndexOfComponent)
 
bool juce_handleXEmbedEvent (ComponentPeer *, void *)
 
unsigned long juce_getCurrentFocusWindow (ComponentPeer *)
 

Variables

constexpr auto minimumDecibels
 
const uint32 magicXmlNumber
 
createUnityPeerFunctionType juce_createUnityPeerFn
 
constexpr uint8 whiteNotes []
 
constexpr uint8 blackNotes []
 
constexpr auto nullopt
 
constexpr auto dynamicExtent
 
const char *constjuce_argv
 
int juce_argc
 
NewLine newLine
 A predefined object representing a new-line, which can be written to a string or stream.
 
constexpr StringHolder emptyString
 
GetTypefaceForFont juce_getTypefaceForFont
 
void(* clearOpenGLGlyphCache )()
 
XContext windowHandleXContext
 
::Window juce_messageWindowHandle
 
constexpr int rightEdgeSpace
 
const float bubblePaddingX
 
const float bubblePaddingY
 

Detailed Description

JUCE Namespace.


Class Documentation

◆ juce::ARAFactoryResult

struct juce::ARAFactoryResult

Represents the result of AudioPluginFormatManager::createARAFactoryAsync().

If the operation fails then araFactory will contain nullptr, and errorMessage may contain a reason for the failure.

The araFactory member ensures that the module necessary for the correct functioning of the factory will remain loaded.

@tags{ARA}

Definition at line 72 of file juce_ARACommon.h.

Class Members
ARAFactoryWrapper araFactory
String errorMessage

◆ juce::AudioDeviceSetupDetails

struct juce::AudioDeviceSetupDetails

Definition at line 200 of file juce_AudioDeviceSelectorComponent.cpp.

Class Members
AudioDeviceManager * manager
int maxNumInputChannels
int maxNumOutputChannels
int minNumInputChannels
int minNumOutputChannels
bool useStereoPairs

◆ juce::AudioIODeviceCallbackContext

struct juce::AudioIODeviceCallbackContext

Additional information that may be passed to the AudioIODeviceCallback.

@tags{Audio}

Definition at line 33 of file juce_AudioIODevice.h.

Class Members
const uint64_t * hostTimeNs If the host provides this information, this field will be set to point to an integer holding the current value; otherwise, this will be nullptr.

◆ juce::ConsoleAppFailureCode

struct juce::ConsoleAppFailureCode

Definition at line 290 of file juce_ConsoleApplication.cpp.

Class Members
String errorMessage
int returnCode

◆ juce::DisplayNode

struct juce::DisplayNode

Represents a node in our graph of displays.

Definition at line 229 of file juce_Displays.cpp.

Class Members
Display * display The Display object that this represents.
bool isRoot True if this represents the 'root' display with position (0, 0).
Rectangle< double > logicalArea The logical area to be calculated.

This will be valid after processDisplay() has been called on this node.

DisplayNode * parent The parent node of this node in our display graph.

This will have a correct logicalArea.

◆ juce::Enumerated

struct juce::Enumerated
template<typename Index, typename Value>
struct juce::Enumerated< Index, Value >

Returned when dereferencing an EnumerateIterator.

Allows querying the index associated with an element, along with a reference to the element itself.

You should never need to construct an instance of this type yourself. Instead, use the enumerate() function to construct a range that can be enumerated.

See also
enumerate() @tags{Core}

Definition at line 109 of file juce_Enumerate.h.

Class Members
Index index
Value value

◆ juce::ExtraLookAndFeelBaseClasses

struct juce::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.

@tags{GUI}

Definition at line 36 of file juce_LookAndFeel.h.

◆ juce::FontPlaceholderNames

struct juce::FontPlaceholderNames

Definition at line 442 of file juce_Font.cpp.

Class Members
String mono
String regular
String sans
String serif

◆ juce::Interpolators

class juce::Interpolators

A collection of different interpolators for resampling streams of floats.

See also
GenericInterpolator, WindowedSincInterpolator, LagrangeInterpolator, CatmullRomInterpolator, LinearInterpolator, ZeroOrderHoldInterpolator

@tags{Audio}

Definition at line 34 of file juce_Interpolators.h.

Class Members
typedef GenericInterpolator< CatmullRomTraits, 4 > CatmullRom
typedef GenericInterpolator< LagrangeTraits, 5 > Lagrange
typedef GenericInterpolator< LinearTraits, 2 > Linear
typedef GenericInterpolator< WindowedSincTraits, 200 > WindowedSinc
typedef GenericInterpolator< ZeroOrderHoldTraits, 1 > ZeroOrderHold

◆ juce::IPAddressByteUnion

union juce::IPAddressByteUnion

Union used to split a 16-bit unsigned integer into 2 8-bit unsigned integers or vice-versa.

Definition at line 27 of file juce_IPAddress.cpp.

Class Members
uint16 combined
uint8 split[2]

◆ juce::MidiRPNMessage

struct juce::MidiRPNMessage

Represents a MIDI RPN (registered parameter number) or NRPN (non-registered parameter number) message.

@tags{Audio}

Definition at line 32 of file juce_MidiRPN.h.

Class Members
int channel Midi channel of the message, in the range 1 to 16.
bool is14BitValue True if the value uses 14-bit resolution (LSB + MSB); false if the value is 7-bit (MSB only).
bool isNRPN True if this message is an NRPN; false if it is an RPN.
int parameterNumber The 14-bit parameter index, in the range 0 to 16383 (0x3fff).
int value The parameter value, in the range 0 to 16383 (0x3fff).

If the message contains no value LSB, the value will be in the range 0 to 127 (0x7f).

◆ juce::MotifWmHints

struct juce::MotifWmHints

Definition at line 338 of file juce_XWindowSystem_linux.cpp.

Class Members
unsigned long decorations
unsigned long flags
unsigned long functions
long input_mode
unsigned long status

◆ juce::MouseWheelDetails

struct juce::MouseWheelDetails

Contains status information about a mouse wheel event.

See also
MouseListener, MouseEvent

@tags{GUI}

Definition at line 391 of file juce_MouseEvent.h.

Class Members
float deltaX The amount that the wheel has been moved in the X axis.

If isReversed is true, then a negative deltaX means that the wheel has been pushed physically to the left. If isReversed is false, then a negative deltaX means that the wheel has been pushed physically to the right.

float deltaY The amount that the wheel has been moved in the Y axis.

If isReversed is true, then a negative deltaY means that the wheel has been pushed physically upwards. If isReversed is false, then a negative deltaY means that the wheel has been pushed physically downwards.

bool isInertial If true, then this event is part of the inertial momentum phase that follows the wheel being released.
bool isReversed Indicates whether the user has reversed the direction of the wheel.

See deltaX and deltaY for an explanation of the effects of this value.

bool isSmooth If true, then the wheel has continuous, un-stepped motion.

◆ juce::NetworkServiceDiscovery

struct juce::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.

@tags{Events}

Definition at line 34 of file juce_NetworkServiceDiscovery.h.

◆ juce::PenDetails

struct juce::PenDetails

Contains status information about a pen event.

See also
MouseListener, MouseEvent

@tags{GUI}

Definition at line 433 of file juce_MouseEvent.h.

Class Members
float rotation The rotation of the pen device in radians.

Indicates the clockwise rotation, or twist, of the pen. The default is 0.

float tiltX Indicates the angle of tilt of the pointer in a range of -1.0 to 1.0 along the x-axis where a positive value indicates a tilt to the right.

The default is 0.

float tiltY Indicates the angle of tilt of the pointer in a range of -1.0 to 1.0 along the y-axis where a positive value indicates a tilt toward the user.

The default is 0.

◆ juce::ReverseCompareString

struct juce::ReverseCompareString

Definition at line 43 of file juce_FileTreeComponent.cpp.

Class Members
String value

◆ juce::SequenceAndLatency

struct juce::SequenceAndLatency

Definition at line 993 of file juce_AudioProcessorGraph.cpp.

Class Members
typedef variant< GraphRenderSequence< float >, GraphRenderSequence< double > > RenderSequenceVariant
Class Members
int latencySamples
RenderSequenceVariant sequence

◆ juce::SerialisationTraits

struct juce::SerialisationTraits
template<typename T>
struct juce::SerialisationTraits< T >

Allows serialisation functions to be attached to a specific type without having to modify the declaration of that type.

A specialisation of SerialisationTraits must include:

  • A static constexpr data member named 'marshallingVersion' with a value that is convertible to std::optional<int>.
  • Either:
    • Normally, a single function with the following signature:
      template <typename Archive, typename Item>
      static void serialise (Archive& archive, Item& item);
      Type unalignedPointerCast(void *ptr) noexcept
      Casts a pointer to another type via void*, which suppresses the cast-align warning which sometimes ar...
      Definition juce_Memory.h:88
    • For types that must do slightly different work when loading and saving, you may supply two functions with the following signatures, where "T" is a placeholder for the type on which SerialisationTraits is specialised:
      template <typename Archive>
      static void load (Archive& archive, T& item);
      template <typename Archive>
      static void save (Archive& archive, const T& item);

If the marshallingVersion converts to a null optional, then all versioning information will be ignored when marshalling the type. Otherwise, if the value converts to a non-null optional, this versioning information will be included when serialising the type.

Inside serialise() and load() you may call archive.getVersion() to find the detected version of the object being deserialised. archive.getVersion() will return an std::optional<int>, where 'nullopt' indicates that no versioning information was detected.

Marshalling functions can also be specified directly inside the type to be marshalled. This approach may be preferable as it is more concise. Internal marshalling functions are written in exactly the same way as external ones; i.e. the type must include a marshallingVersion, and either a single serialise function, or a load/save pair of functions, as specified above.

@tags{Core}

Definition at line 65 of file juce_Serialisation.h.

◆ juce::StringHolder

struct juce::StringHolder

Definition at line 48 of file juce_String.cpp.

Class Members
typedef CharPointerType CharPointerType
typedef CharType CharType
Class Members
size_t allocatedNumBytes
atomic< int > refCount
CharType text[1]

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

Definition at line 1318 of file juce_AudioSampleBuffer.h.

◆ 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}

Definition at line 205 of file juce_Interpolators.h.

◆ CharPointer_wchar_t

Definition at line 39 of file juce_String.cpp.

◆ ChildProcessMaster

Definition at line 226 of file juce_ConnectedChildProcess.h.

◆ ChildProcessSlave

Definition at line 118 of file juce_ConnectedChildProcess.h.

◆ CommandID

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

Definition at line 37 of file juce_ApplicationCommandID.h.

◆ createUnityPeerFunctionType

typedef ComponentPeer *(* juce::createUnityPeerFunctionType) (Component &)

Definition at line 216 of file juce_AudioProcessorEditor.cpp.

◆ DisableIfSameOrDerived

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/

Definition at line 79 of file juce_Functional.h.

◆ GetTypefaceForFont

typedef Typeface::Ptr(* juce::GetTypefaceForFont)(const Font &)

Definition at line 42 of file juce_Font.cpp.

◆ int16

A platform-independent 16-bit signed integer type.

Definition at line 39 of file juce_MathsFunctions.h.

◆ int32

A platform-independent 32-bit signed integer type.

Definition at line 43 of file juce_MathsFunctions.h.

◆ int64

A platform-independent 64-bit integer type.

Definition at line 54 of file juce_MathsFunctions.h.

◆ int8

A platform-independent 8-bit signed integer type.

Definition at line 35 of file juce_MathsFunctions.h.

◆ juce_recvsend_size_t

using juce::juce_recvsend_size_t = typedef socklen_t

Definition at line 46 of file juce_Socket.cpp.

◆ juce_socklen_t

using juce::juce_socklen_t = typedef socklen_t

Definition at line 45 of file juce_Socket.cpp.

◆ juce_wchar

A platform-independent 32-bit unicode character type.

Definition at line 42 of file juce_CharacterFunctions.h.

◆ 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}

Definition at line 188 of file juce_Interpolators.h.

◆ 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}

Definition at line 222 of file juce_Interpolators.h.

◆ LinearSmoothedValue

Definition at line 404 of file juce_SmoothedValue.h.

◆ MessageCallbackFunction

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

Definition at line 33 of file juce_MessageManager.h.

◆ MidiKeyboardStateListener

Definition at line 193 of file juce_MidiKeyboardState.h.

◆ Nullopt

Definition at line 26 of file juce_Optional.h.

◆ OSCType

The type used for OSC type tags.

Definition at line 31 of file juce_OSCTypes.h.

◆ OSCTypeList

The type used for OSC type tag strings.

Definition at line 35 of file juce_OSCTypes.h.

◆ pointer_sized_int

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

Definition at line 80 of file juce_MathsFunctions.h.

◆ pointer_sized_uint

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

Definition at line 82 of file juce_MathsFunctions.h.

◆ 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
{
// assuming that this example function will be called by multiple threads
void foo()
{
// 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
}
};
Automatically locks and unlocks a mutex object.
See also
CriticalSection, ScopedUnlock

Definition at line 186 of file juce_CriticalSection.h.

◆ 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
{
void foo()
{
// 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..
}
}
};
Automatically locks and unlocks a mutex object.
See also
CriticalSection::tryEnter, ScopedLock, ScopedUnlock, ScopedReadLock

Definition at line 260 of file juce_CriticalSection.h.

◆ 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
{
void foo()
{
{
// objectLock is now locked..
{
// ..and now unlocked..
}
// ..and now locked again..
}
// ..and finally unlocked.
}
};
Automatically unlocks and re-locks a mutex object.
See also
CriticalSection, ScopedLock

Definition at line 226 of file juce_CriticalSection.h.

◆ SocketHandle

using juce::SocketHandle = typedef int

Definition at line 47 of file juce_Socket.cpp.

◆ StringMap

Definition at line 29 of file juce_WavAudioFormat.cpp.

◆ uint16

A platform-independent 16-bit unsigned integer type.

Definition at line 41 of file juce_MathsFunctions.h.

◆ uint32

A platform-independent 32-bit unsigned integer type.

Definition at line 45 of file juce_MathsFunctions.h.

◆ uint64

A platform-independent 64-bit unsigned integer type.

Definition at line 56 of file juce_MathsFunctions.h.

◆ uint8

A platform-independent 8-bit unsigned integer type.

Definition at line 37 of file juce_MathsFunctions.h.

◆ ViewportDragPosition

Definition at line 29 of file juce_Viewport.cpp.

◆ VSTCallbackHandler

Definition at line 72 of file juce_VST2ClientExtensions.h.

◆ 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 WindowedSincInterpolator object.

See also
GenericInterpolator
LagrangeInterpolator, CatmullRomInterpolator, LinearInterpolator, ZeroOrderHoldInterpolator

@tags{Audio}

Definition at line 171 of file juce_Interpolators.h.

◆ 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}

Definition at line 241 of file juce_Interpolators.h.

Enumeration Type Documentation

◆ anonymous enum

Definition at line 26 of file juce_Files_linux.cpp.

◆ anonymous enum

Definition at line 26 of file juce_ConnectedChildProcess.cpp.

◆ anonymous enum

Definition at line 31 of file juce_ConnectedChildProcess.cpp.

◆ anonymous enum

Definition at line 348 of file juce_Button.cpp.

◆ anonymous enum

Definition at line 581 of file juce_XWindowSystem_linux.cpp.

◆ anonymous enum

Definition at line 33 of file juce_XEmbedComponent_linux.cpp.

◆ anonymous enum

Definition at line 38 of file juce_XEmbedComponent_linux.cpp.

◆ anonymous enum

Definition at line 43 of file juce_XEmbedComponent_linux.cpp.

◆ anonymous enum

Definition at line 60 of file juce_XEmbedComponent_linux.cpp.

◆ 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.

Definition at line 33 of file juce_AccessibilityActions.h.

◆ 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.

Definition at line 37 of file juce_AccessibilityEvent.h.

◆ 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}

Definition at line 36 of file juce_AccessibilityRole.h.

◆ 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.

Definition at line 30 of file juce_MessageBoxOptions.h.

◆ 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.

Definition at line 31 of file juce_NotificationType.h.

◆ ResultCodeMappingMode

enum class juce::ResultCodeMappingMode
strong

Definition at line 29 of file juce_NativeMessageBox.cpp.

◆ VariantStreamMarkers

enum juce::VariantStreamMarkers

Definition at line 26 of file juce_Variant.cpp.

◆ 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.

Definition at line 173 of file juce_audio_devices.h.

Function Documentation

◆ addBytesToPointer() [1/2]

template<typename Type , typename IntegerType >
const Type * juce::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.

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,

Definition at line 123 of file juce_Memory.h.

◆ addBytesToPointer() [2/2]

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

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,

Definition at line 113 of file juce_Memory.h.

◆ approximatelyEqual() [1/2]

template<typename Type , std::enable_if_t<! std::is_floating_point_v< Type >, int > = 0>
constexpr bool juce::approximatelyEqual ( Type  a,
Type  b 
)
constexpr

Special case for non-floating-point types that returns true if both are exactly equal.

Definition at line 315 of file juce_MathsFunctions.h.

◆ approximatelyEqual() [2/2]

template<typename Type , std::enable_if_t< std::is_floating_point_v< Type >, int > = 0>
constexpr bool juce::approximatelyEqual ( Type  a,
Type  b,
Tolerance< Type >  tolerance = Tolerance<Type>{} .withAbsolute (std::numeric_limits<Type>::min()) .withRelative (std::numeric_limits<Type>::epsilon()) 
)
constexpr

Returns true if the two floating-point numbers are approximately equal.

If either a or b are not finite, returns exactlyEqual (a, b).

The default absolute tolerance is equal to the minimum normal value. This ensures differences that are subnormal are always considered equal. It is highly recommend this value is reviewed depending on the calculation being carried out. In general specifying an absolute value is useful when considering values close to zero. For example you might expect sin (pi) to return 0, but what it actually returns is close to the error of the value pi. Therefore, in this example it might be better to set the absolute tolerance to sin (pi).

The default relative tolerance is equal to the machine epsilon which is the difference between 1.0 and the next floating-point value that can be represented by Type. In most cases this value is probably reasonable. This value is multiplied by the largest absolute value of a and b so as to scale relatively according to the input parameters. For example, specifying a relative value of 0.05 will ensure values return equal if the difference between them is less than or equal to 5% of the larger of the two absolute values.

Parameters
aThe first number to compare.
bThe second number to compare.
toleranceAn object that represents both absolute and relative tolerances when evaluating if a and b are equal.
See also
exactlyEqual

Definition at line 299 of file juce_MathsFunctions.h.

◆ begin()

Returns the iterator that was passed in.

Provided for range-for compatibility.

Definition at line 179 of file juce_RangedDirectoryIterator.h.

◆ callOnMessageThread()

template<typename Callback >
void juce::callOnMessageThread ( Callback &&  callback)

Definition at line 81 of file juce_audio_processors.cpp.

◆ canCompare()

bool juce::canCompare ( const var v1,
const var v2 
)

Definition at line 637 of file juce_Variant.cpp.

◆ clampPixelComponents()

uint32 juce::clampPixelComponents ( uint32  x)
noexcept

Definition at line 42 of file juce_PixelFormats.h.

◆ countNumberOfBits() [1/2]

constexpr int juce::countNumberOfBits ( uint32  n)
constexprnoexcept

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

Definition at line 671 of file juce_MathsFunctions.h.

◆ countNumberOfBits() [2/2]

constexpr int juce::countNumberOfBits ( uint64  n)
constexprnoexcept

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

Definition at line 682 of file juce_MathsFunctions.h.

◆ createARAFactoryAsync()

void juce::createARAFactoryAsync ( AudioPluginInstance instance,
std::function< void(ARAFactoryWrapper)>  cb 
)

Calls the provided callback with an ARAFactoryWrapper object obtained from the provided AudioPluginInstance.

If the provided AudioPluginInstance has no ARA extensions, the callback will be called with an ARAFactoryWrapper that wraps a nullptr.

The object passed to the callback must be checked even if the plugin instance reports having ARA extensions.

◆ createCopyIfNotNull()

template<class Type >
Type * juce::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.

Definition at line 60 of file juce_Memory.h.

◆ createSnapshotOfNativeWindow()

Image juce::createSnapshotOfNativeWindow ( void window)

Definition at line 3989 of file juce_XWindowSystem_linux.cpp.

◆ degreesToRadians()

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

Converts an angle in degrees to radians.

Definition at line 168 of file juce_MathsFunctions.h.

◆ deleteAndZero()

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

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!

Definition at line 40 of file juce_Memory.h.

◆ end()

Returns a default-constructed sentinel value.

Provided for range-for compatibility.

Definition at line 184 of file juce_RangedDirectoryIterator.h.

◆ enumerate()

template<typename Range , typename Index = detail::withAdlSize::AdlSignedSize<Range>>
constexpr auto juce::enumerate ( Range &&  range,
Index  startingValue = {} 
)
constexpr

Given a range and an optional starting offset, returns an IteratorPair that holds EnumerateIterators wrapping the begin() and end() of the range.

This is useful in situations where you need to iterate some range, but also query the position of each item in the range.

A simple usage might look like this:

std::list<int> elements { 10, 20, 30, 40, 50 };
for (const auto pair : enumerate (elements))
std::cout << pair.index << ' ' << pair.value << ' ';
// output: 0 10 1 20 2 30 3 40 4 50
constexpr auto enumerate(Range &&range, Index startingValue={})
Given a range and an optional starting offset, returns an IteratorPair that holds EnumerateIterators ...

You can also use structured bindings to concisely destructure each Enumerated instance:

for (const auto [index, value] : enumerate (elements))
std::cout << index << ' ' << value << ' ';

Note that the Enumerated instance is returned by value. This is because each Enumerated instance is created on-demand when the iterator is dereferenced. As a result, the following will result in a dangling reference, and will probably trigger a compiler warning:

// BAD IDEA: creating a reference to a temporary Enumerated instance
for (auto& [index, value] : enumerate (elements))
...

The 'value' member of Enumerated automatically assumes the same type as dereferencing the wrapped iterator, which is normally a reference to an element of a container. In the following snippet, the type of '[index, value]' is 'const Enumerated<ptrdiff_t, int&>', the type of 'index' is 'ptrdiff_t', and the type of 'value' is 'int&'.

std::vector<int> elements { 10, 20, 30, 40, 50 };
for (const auto [index, value] : enumerate (elements))
...

By default, the constness of pair.value will match the constness of the range passed to enumerate. If you pass a mutable lvalue reference to enumerate, then each value will also be mutable. If you pass a constant lvalue reference to enumerate, then each value will be const. If you know that you don't need the iterated elements to be mutable, it's good practice to wrap the range with std::as_const before passing it to enumerate:

for (const auto [index, value] : enumerate (std::as_const (elements)))
{
// value is immutable here
}

Definition at line 419 of file juce_Enumerate.h.

◆ exactlyEqual()

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

Equivalent to operator==, but suppresses float-equality warnings.

This allows code to be explicit about float-equality checks that are known to have the correct semantics.

Definition at line 201 of file juce_MathsFunctions.h.

◆ 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!

Definition at line 33 of file juce_BigInteger.cpp.

◆ 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.

Definition at line 445 of file juce_MathsFunctions.h.

◆ findMinAndMax()

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

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

Definition at line 465 of file juce_MathsFunctions.h.

◆ 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.

Definition at line 425 of file juce_MathsFunctions.h.

◆ findRecursively()

template<typename FindIndex >
Optional< AccessibilityTableInterface::Span > juce::findRecursively ( const AccessibilityHandler handler,
Component outermost,
FindIndex &&  findIndexOfComponent 
)

Definition at line 554 of file juce_TableListBox.cpp.

◆ getAddressDifference()

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

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.

Definition at line 54 of file juce_Memory.h.

◆ getIconFromApplication()

Image JUCE_API juce::getIconFromApplication ( const String ,
const int   
)

Definition at line 29 of file juce_IconHelpers_linux.cpp.

◆ getPeerFor()

ComponentPeer * juce::getPeerFor ( ::Window  windowH)

Definition at line 1430 of file juce_XWindowSystem_linux.cpp.

◆ hasBitValueSet()

constexpr bool juce::hasBitValueSet ( EnumType  enumValue,
EnumType  valueToLookFor 
)
constexprnoexcept

Definition at line 87 of file juce_EnumHelpers.h.

◆ ignoreUnused()

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

Handy function for avoiding unused variables warning.

Definition at line 92 of file juce_MathsFunctions.h.

◆ initialiseJuce_GUI()

JUCE_API void JUCE_CALLTYPE 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()

Definition at line 495 of file juce_MessageManager.cpp.

◆ isPositiveAndBelow() [1/2]

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

Definition at line 532 of file juce_MathsFunctions.h.

◆ 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:

Definition at line 525 of file juce_MathsFunctions.h.

◆ isPositiveAndNotGreaterThan() [1/2]

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

Definition at line 551 of file juce_MathsFunctions.h.

◆ 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:

Definition at line 544 of file juce_MathsFunctions.h.

◆ isPowerOfTwo()

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

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

Definition at line 647 of file juce_MathsFunctions.h.

◆ 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.

Definition at line 561 of file juce_MathsFunctions.h.

◆ 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

Definition at line 508 of file juce_MathsFunctions.h.

◆ 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.

Definition at line 373 of file juce_MathsFunctions.h.

◆ 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)).

Definition at line 366 of file juce_MathsFunctions.h.

◆ jmax() [1/4]

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

Definition at line 176 of file juce_SIMDRegister_Impl.h.

◆ jmax() [2/4]

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

Returns the larger of two values.

Definition at line 340 of file juce_MathsFunctions.h.

◆ jmax() [3/4]

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

Returns the larger of three values.

Definition at line 344 of file juce_MathsFunctions.h.

◆ 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.

Definition at line 348 of file juce_MathsFunctions.h.

◆ jmin() [1/4]

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

Definition at line 174 of file juce_SIMDRegister_Impl.h.

◆ jmin() [2/4]

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

Returns the smaller of two values.

Definition at line 352 of file juce_MathsFunctions.h.

◆ jmin() [3/4]

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

Returns the smaller of three values.

Definition at line 356 of file juce_MathsFunctions.h.

◆ 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.

Definition at line 360 of file juce_MathsFunctions.h.

◆ juce_createKeyProxyWindow()

Window juce::juce_createKeyProxyWindow ( ComponentPeer peer)

Definition at line 3328 of file juce_XWindowSystem_linux.cpp.

◆ juce_deleteKeyProxyWindow()

void juce::juce_deleteKeyProxyWindow ( ::Window  keyProxy)

Definition at line 3334 of file juce_XWindowSystem_linux.cpp.

◆ juce_fileSetPosition()

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

Definition at line 433 of file juce_SharedCode_posix.h.

◆ juce_getCurrentFocusWindow()

unsigned long juce::juce_getCurrentFocusWindow ( ComponentPeer peer)

Definition at line 706 of file juce_XEmbedComponent_linux.cpp.

◆ juce_getExecutableFile()

File juce::juce_getExecutableFile ( )

Definition at line 612 of file juce_SharedCode_posix.h.

◆ juce_getOutputFromCommand()

String juce::juce_getOutputFromCommand ( const String command)

Definition at line 702 of file juce_SharedCode_posix.h.

◆ juce_handleXEmbedEvent()

bool juce::juce_handleXEmbedEvent ( ComponentPeer p,
void e 
)

Definition at line 701 of file juce_XEmbedComponent_linux.cpp.

◆ 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.

Definition at line 111 of file juce_MathsFunctions.h.

◆ juce_isfinite()

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

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

Definition at line 179 of file juce_MathsFunctions.h.

◆ juce_isRunningUnderDebugger()

JUCE_API bool JUCE_CALLTYPE juce::juce_isRunningUnderDebugger ( )
externnoexcept

< This macro is added to all JUCE public class declarations.

Definition at line 406 of file juce_SystemStats_linux.cpp.

◆ juce_LinuxAddRepaintListener()

void juce::juce_LinuxAddRepaintListener ( ComponentPeer peer,
Component dummy 
)

Definition at line 841 of file juce_Windowing_linux.cpp.

◆ juce_LinuxRemoveRepaintListener()

void juce::juce_LinuxRemoveRepaintListener ( ComponentPeer peer,
Component dummy 
)

Definition at line 848 of file juce_Windowing_linux.cpp.

◆ juce_millisecondsSinceStartup()

uint32 juce::juce_millisecondsSinceStartup ( )
noexcept

Definition at line 366 of file juce_SystemStats_linux.cpp.

◆ juce_runSystemCommand()

void juce::juce_runSystemCommand ( const String command)

Definition at line 696 of file juce_SharedCode_posix.h.

◆ juce_siginterrupt()

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

Definition at line 143 of file juce_SharedCode_posix.h.

◆ juce_threadEntryPoint()

void JUCE_API juce::juce_threadEntryPoint ( void userData)

Definition at line 118 of file juce_Thread.cpp.

◆ makeARASizedStruct()

template<typename Obj , typename Member , typename... Ts>
constexpr Obj juce::makeARASizedStruct ( Member Obj::*  member,
Ts &&...  ts 
)
constexpr

Definition at line 81 of file juce_ARACommon.h.

◆ makeAttachment()

std::unique_ptr< Attachment > juce::makeAttachment ( const AudioProcessorValueTreeState stateToUse,
const String parameterID,
Control control 
)

Definition at line 473 of file juce_AudioProcessorValueTreeState.cpp.

◆ makeOptional()

template<typename Value >
JUCE_END_IGNORE_WARNINGS_MSVC Optional< std::decay_t< Value > > juce::makeOptional ( Value &&  v)

Definition at line 161 of file juce_Optional.h.

◆ makeRange()

template<typename Begin , typename End = Begin>
constexpr auto juce::makeRange ( Begin  begin,
End  end 
)
constexpr

Given two iterators "begin" and "end", returns an IteratorPair with a member begin() and end() function.

This pair can be used in contexts that expect an iterable range, the most significant of which is ranged-for loops. This automatically deduces the Begin and End types, so it is more concise to use than directly calling the IteratorPair constructor.

Definition at line 353 of file juce_Enumerate.h.

◆ 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
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 at line 412 of file juce_MathsFunctions.h.

◆ 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
Type mapToLog10(Type value0To1, Type logRangeMin, Type logRangeMax)
Remaps a normalised value (between 0 and 1) to a logarithmic target range.

Definition at line 390 of file juce_MathsFunctions.h.

◆ maskPixelComponents()

uint32 juce::maskPixelComponents ( uint32  x)
noexcept

Definition at line 37 of file juce_PixelFormats.h.

◆ named() [1/2]

template<typename T >
constexpr auto juce::named ( std::string_view  c,
const T &  t 
)
constexpr

Produces a Named instance that holds an immutable reference.

Definition at line 101 of file juce_Serialisation.h.

◆ named() [2/2]

template<typename T >
constexpr auto juce::named ( std::string_view  c,
T &  t 
)
constexpr

Produces a Named instance that holds a mutable reference.

Definition at line 98 of file juce_Serialisation.h.

◆ 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.

Definition at line 691 of file juce_MathsFunctions.h.

◆ nextFloatDown()

template<typename FloatType >
FloatType juce::nextFloatDown ( FloatType  value)
noexcept

Returns the next representable value by FloatType in the direction of the lowest representable value.

Definition at line 330 of file juce_MathsFunctions.h.

◆ nextFloatUp()

template<typename FloatType >
FloatType juce::nextFloatUp ( FloatType  value)
noexcept

Returns the next representable value by FloatType in the direction of the largest representable value.

Definition at line 323 of file juce_MathsFunctions.h.

◆ nextPowerOfTwo()

int juce::nextPowerOfTwo ( int  n)
noexcept

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

Definition at line 653 of file juce_MathsFunctions.h.

◆ numElementsInArray()

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

Handy function for getting the number of elements in a simple const C array.

E.g.

static int myArray[] = { 1, 2, 3 };
constexpr int numElementsInArray(Type(&)[N]) noexcept
Handy function for getting the number of elements in a simple const C array.

Definition at line 103 of file juce_MathsFunctions.h.

◆ operator!=() [1/16]

template<typename Type >
bool juce::operator!= ( const AudioBuffer< Type > &  a,
const AudioBuffer< Type > &  b 
)

Definition at line 1303 of file juce_AudioSampleBuffer.h.

◆ operator!=() [2/16]

template<size_t len, typename T >
bool juce::operator!= ( const FixedSizeFunction< len, T > &  fn,
std::nullptr_t   
)

Definition at line 223 of file juce_FixedSizeFunction.h.

◆ operator!=() [3/16]

JUCE_API bool JUCE_CALLTYPE juce::operator!= ( const String s1,
const CharPointer_UTF16  s2 
)
noexcept

Case-sensitive comparison of two strings.

Definition at line 569 of file juce_String.cpp.

◆ operator!=() [4/16]

JUCE_API bool JUCE_CALLTYPE juce::operator!= ( const String s1,
const CharPointer_UTF32  s2 
)
noexcept

Case-sensitive comparison of two strings.

Definition at line 571 of file juce_String.cpp.

◆ operator!=() [5/16]

JUCE_API bool JUCE_CALLTYPE juce::operator!= ( const String s1,
const CharPointer_UTF8  s2 
)
noexcept

Case-sensitive comparison of two strings.

Definition at line 567 of file juce_String.cpp.

◆ operator!=() [6/16]

JUCE_API bool JUCE_CALLTYPE juce::operator!= ( const String s1,
const char s2 
)
noexcept

Case-sensitive comparison of two strings.

Definition at line 557 of file juce_String.cpp.

◆ operator!=() [7/16]

JUCE_API bool JUCE_CALLTYPE juce::operator!= ( const String s1,
const String s2 
)
noexcept

Case-sensitive comparison of two strings.

Definition at line 555 of file juce_String.cpp.

◆ operator!=() [8/16]

JUCE_API bool JUCE_CALLTYPE juce::operator!= ( const String s1,
const wchar_t *  s2 
)
noexcept

Case-sensitive comparison of two strings.

Definition at line 559 of file juce_String.cpp.

◆ operator!=() [9/16]

JUCE_API bool JUCE_CALLTYPE juce::operator!= ( const String s1,
StringRef  s2 
)
noexcept

Case-sensitive comparison of two strings.

Definition at line 561 of file juce_String.cpp.

◆ operator!=() [10/16]

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

Compares two ReferenceCountedObjectPtrs.

Definition at line 464 of file juce_ReferenceCountedObject.h.

◆ operator!=() [11/16]

JUCE_API bool juce::operator!= ( const var v1,
const var v2 
)

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

Definition at line 652 of file juce_Variant.cpp.

◆ operator!=() [12/16]

JUCE_API bool juce::operator!= ( const var v1,
const char v2 
)

Definition at line 661 of file juce_Variant.cpp.

◆ operator!=() [13/16]

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

Definition at line 659 of file juce_Variant.cpp.

◆ operator!=() [14/16]

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

Compares two RelativeTimes.

Definition at line 62 of file juce_RelativeTime.cpp.

◆ operator!=() [15/16]

template<size_t len, typename T >
bool juce::operator!= ( std::nullptr_t  ,
const FixedSizeFunction< len, T > &  fn 
)

Definition at line 226 of file juce_FixedSizeFunction.h.

◆ operator!=() [16/16]

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

Compares two Time objects.

Definition at line 575 of file juce_Time.cpp.

◆ operator""_fr()

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

Definition at line 221 of file juce_Grid.h.

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

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

Definition at line 219 of file juce_Grid.h.

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

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

Definition at line 220 of file juce_Grid.h.

◆ operator*() [1/2]

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

Definition at line 80 of file juce_RangedDirectoryIterator.h.

◆ 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.

Definition at line 257 of file juce_Point.h.

◆ operator+() [1/20]

JUCE_API String JUCE_CALLTYPE juce::operator+ ( char  s1,
const String s2 
)

Concatenates two strings.

Definition at line 815 of file juce_String.cpp.

◆ operator+() [2/20]

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

Definition at line 155 of file juce_StringRef.h.

◆ operator+() [3/20]

JUCE_API String JUCE_CALLTYPE juce::operator+ ( const char s1,
const String s2 
)

Concatenates two strings.

Definition at line 812 of file juce_String.cpp.

◆ operator+() [4/20]

Definition at line 80 of file juce_NewLine.h.

◆ operator+() [5/20]

Definition at line 78 of file juce_NewLine.h.

◆ operator+() [6/20]

JUCE_API String JUCE_CALLTYPE juce::operator+ ( const wchar_t *  s1,
const String s2 
)

Concatenates two strings.

Definition at line 813 of file juce_String.cpp.

◆ operator+() [7/20]

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

Adds a RelativeTime to a Time.

Definition at line 570 of file juce_Time.cpp.

◆ operator+() [8/20]

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

Adds two RelativeTimes together.

Definition at line 54 of file juce_RelativeTime.cpp.

◆ operator+() [9/20]

Definition at line 79 of file juce_NewLine.h.

◆ operator+() [10/20]

Definition at line 153 of file juce_StringRef.h.

◆ operator+() [11/20]

JUCE_API String JUCE_CALLTYPE juce::operator+ ( String  s1,
char  s2 
)

Concatenates two strings.

Definition at line 823 of file juce_String.cpp.

◆ operator+() [12/20]

JUCE_API String JUCE_CALLTYPE juce::operator+ ( String  s1,
const char s2 
)

Concatenates two strings.

Definition at line 819 of file juce_String.cpp.

◆ operator+() [13/20]

Concatenates two strings.

Definition at line 821 of file juce_String.cpp.

◆ operator+() [14/20]

JUCE_API String JUCE_CALLTYPE juce::operator+ ( String  s1,
const String s2 
)

Concatenates two strings.

Definition at line 818 of file juce_String.cpp.

◆ operator+() [15/20]

JUCE_API String JUCE_CALLTYPE juce::operator+ ( String  s1,
const wchar_t *  s2 
)

Concatenates two strings.

Definition at line 820 of file juce_String.cpp.

◆ operator+() [16/20]

JUCE_API String JUCE_CALLTYPE juce::operator+ ( String  s1,
wchar_t  s2 
)

Concatenates two strings.

Definition at line 824 of file juce_String.cpp.

◆ operator+() [17/20]

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

Definition at line 156 of file juce_StringRef.h.

◆ operator+() [18/20]

Definition at line 154 of file juce_StringRef.h.

◆ operator+() [19/20]

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

Adds a RelativeTime to a Time.

Definition at line 568 of file juce_Time.cpp.

◆ operator+() [20/20]

JUCE_API String JUCE_CALLTYPE juce::operator+ ( wchar_t  s1,
const String s2 
)

Concatenates two strings.

Definition at line 816 of file juce_String.cpp.

◆ operator+=()

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

Definition at line 76 of file juce_NewLine.h.

◆ operator-() [1/3]

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

Subtracts two RelativeTimes.

Definition at line 55 of file juce_RelativeTime.cpp.

◆ operator-() [2/3]

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

Subtracts a RelativeTime from a Time.

Definition at line 569 of file juce_Time.cpp.

◆ operator-() [3/3]

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

Returns the relative time difference between two times.

Definition at line 572 of file juce_Time.cpp.

◆ operator<() [1/4]

JUCE_API bool JUCE_CALLTYPE juce::operator< ( const String s1,
StringRef  s2 
)
noexcept

Case-sensitive comparison of two strings.

Definition at line 562 of file juce_String.cpp.

◆ operator<() [2/4]

JUCE_API bool juce::operator< ( const var v1,
const var v2 
)

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

Definition at line 653 of file juce_Variant.cpp.

◆ operator<() [3/4]

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

Compares two RelativeTimes.

Definition at line 68 of file juce_RelativeTime.cpp.

◆ operator<() [4/4]

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

Compares two Time objects.

Definition at line 576 of file juce_Time.cpp.

◆ operator<<() [1/33]

Writes a Value to an OutputStream as a UTF8 string.

Definition at line 236 of file juce_Value.cpp.

◆ operator<<() [2/33]

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

Writes a character to a stream.

Definition at line 353 of file juce_OutputStream.cpp.

◆ operator<<() [3/33]

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

Definition at line 1093 of file juce_BigInteger.cpp.

◆ operator<<() [4/33]

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

Writes a null-terminated text string to a stream.

Definition at line 359 of file juce_OutputStream.cpp.

◆ operator<<() [5/33]

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

Writes the contents of a file to a stream.

Definition at line 373 of file juce_OutputStream.cpp.

◆ operator<<() [6/33]

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

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

Definition at line 365 of file juce_OutputStream.cpp.

◆ operator<<() [7/33]

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

Definition at line 200 of file juce_MemoryOutputStream.cpp.

◆ operator<<() [8/33]

JUCE_API OutputStream &JUCE_CALLTYPE 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;
NewLine newLine
A predefined object representing a new-line, which can be written to a string or stream.
See also
OutputStream::setNewLineString

Definition at line 389 of file juce_OutputStream.cpp.

◆ operator<<() [9/33]

JUCE_API OutputStream &JUCE_CALLTYPE juce::operator<< ( OutputStream stream,
const String text 
)

Writes a string to an OutputStream as UTF8.

Definition at line 851 of file juce_String.cpp.

◆ operator<<() [10/33]

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

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

Definition at line 348 of file juce_OutputStream.cpp.

◆ operator<<() [11/33]

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

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

Definition at line 383 of file juce_OutputStream.cpp.

◆ operator<<() [12/33]

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

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

Definition at line 336 of file juce_OutputStream.cpp.

◆ operator<<() [13/33]

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

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

Definition at line 342 of file juce_OutputStream.cpp.

◆ operator<<() [14/33]

JUCE_API OutputStream &JUCE_CALLTYPE juce::operator<< ( OutputStream stream,
StringRef  text 
)

Writes a string to an OutputStream as UTF8.

Definition at line 856 of file juce_String.cpp.

◆ operator<<() [15/33]

template<class traits >
std::basic_ostream< char, traits > &JUCE_CALLTYPE 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.

Definition at line 1477 of file juce_String.h.

◆ operator<<() [16/33]

template<class traits >
std::basic_ostream< wchar_t, traits > &JUCE_CALLTYPE 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.

Definition at line 1486 of file juce_String.h.

◆ operator<<() [17/33]

JUCE_API String &JUCE_CALLTYPE juce::operator<< ( String s1,
char  s2 
)

Appends a character at the end of a string.

Definition at line 832 of file juce_String.cpp.

◆ operator<<() [18/33]

JUCE_API String &JUCE_CALLTYPE juce::operator<< ( String s1,
const char s2 
)

Appends a string to the end of the first one.

Definition at line 835 of file juce_String.cpp.

◆ operator<<() [19/33]

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

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;

Definition at line 75 of file juce_NewLine.h.

◆ operator<<() [20/33]

JUCE_API String &JUCE_CALLTYPE juce::operator<< ( String s1,
const std::string s2 
)

Appends a string to the end of the first one.

Definition at line 839 of file juce_String.cpp.

◆ operator<<() [21/33]

JUCE_API String &JUCE_CALLTYPE juce::operator<< ( String s1,
const String s2 
)

Appends a string to the end of the first one.

Definition at line 837 of file juce_String.cpp.

◆ operator<<() [22/33]

JUCE_API String &JUCE_CALLTYPE juce::operator<< ( String s1,
const wchar_t *  s2 
)

Appends a string to the end of the first one.

Definition at line 836 of file juce_String.cpp.

◆ operator<<() [23/33]

JUCE_API String &JUCE_CALLTYPE juce::operator<< ( String s1,
double  number 
)

Appends a decimal number to the end of a string.

Definition at line 849 of file juce_String.cpp.

◆ operator<<() [24/33]

JUCE_API String &JUCE_CALLTYPE juce::operator<< ( String s1,
float  number 
)

Appends a decimal number to the end of a string.

Definition at line 848 of file juce_String.cpp.

◆ operator<<() [25/33]

JUCE_API String &JUCE_CALLTYPE juce::operator<< ( String s1,
int  number 
)

Appends a decimal number to the end of a string.

Definition at line 843 of file juce_String.cpp.

◆ operator<<() [26/33]

JUCE_API String &JUCE_CALLTYPE juce::operator<< ( String s1,
int64  number 
)

Appends a decimal number to the end of a string.

Definition at line 846 of file juce_String.cpp.

◆ operator<<() [27/33]

JUCE_API String &JUCE_CALLTYPE juce::operator<< ( String s1,
long  number 
)

Appends a decimal number to the end of a string.

Definition at line 844 of file juce_String.cpp.

◆ operator<<() [28/33]

JUCE_API String &JUCE_CALLTYPE juce::operator<< ( String s1,
short  number 
)

Appends a decimal number to the end of a string.

Definition at line 842 of file juce_String.cpp.

◆ operator<<() [29/33]

JUCE_API String &JUCE_CALLTYPE juce::operator<< ( String s1,
StringRef  s2 
)

Appends a string to the end of the first one.

Definition at line 838 of file juce_String.cpp.

◆ operator<<() [30/33]

JUCE_API String &JUCE_CALLTYPE juce::operator<< ( String s1,
uint64  number 
)

Appends a decimal number to the end of a string.

Definition at line 847 of file juce_String.cpp.

◆ operator<<() [31/33]

JUCE_API String &JUCE_CALLTYPE juce::operator<< ( String s1,
uint8  number 
)

Appends a decimal number to the end of a string.

Definition at line 841 of file juce_String.cpp.

◆ operator<<() [32/33]

JUCE_API String &JUCE_CALLTYPE juce::operator<< ( String s1,
unsigned long  number 
)

Appends a decimal number to the end of a string.

Definition at line 845 of file juce_String.cpp.

◆ operator<<() [33/33]

JUCE_API String &JUCE_CALLTYPE juce::operator<< ( String s1,
juce_wchar  s2 
)

Appends a character at the end of a string.

Definition at line 829 of file juce_String.cpp.

◆ operator<=() [1/4]

JUCE_API bool JUCE_CALLTYPE juce::operator<= ( const String s1,
StringRef  s2 
)
noexcept

Case-sensitive comparison of two strings.

Definition at line 563 of file juce_String.cpp.

◆ operator<=() [2/4]

JUCE_API bool juce::operator<= ( const var v1,
const var v2 
)

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

Definition at line 655 of file juce_Variant.cpp.

◆ operator<=() [3/4]

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

Compares two RelativeTimes.

Definition at line 70 of file juce_RelativeTime.cpp.

◆ operator<=() [4/4]

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

Compares two Time objects.

Definition at line 578 of file juce_Time.cpp.

◆ operator==() [1/16]

template<typename Type >
bool juce::operator== ( const AudioBuffer< Type > &  a,
const AudioBuffer< Type > &  b 
)

Definition at line 1285 of file juce_AudioSampleBuffer.h.

◆ operator==() [2/16]

template<size_t len, typename T >
bool juce::operator== ( const FixedSizeFunction< len, T > &  fn,
std::nullptr_t   
)

Definition at line 229 of file juce_FixedSizeFunction.h.

◆ operator==() [3/16]

JUCE_API bool JUCE_CALLTYPE juce::operator== ( const String s1,
const CharPointer_UTF16  s2 
)
noexcept

Case-sensitive comparison of two strings.

Definition at line 568 of file juce_String.cpp.

◆ operator==() [4/16]

JUCE_API bool JUCE_CALLTYPE juce::operator== ( const String s1,
const CharPointer_UTF32  s2 
)
noexcept

Case-sensitive comparison of two strings.

Definition at line 570 of file juce_String.cpp.

◆ operator==() [5/16]

JUCE_API bool JUCE_CALLTYPE juce::operator== ( const String s1,
const CharPointer_UTF8  s2 
)
noexcept

Case-sensitive comparison of two strings.

Definition at line 566 of file juce_String.cpp.

◆ operator==() [6/16]

JUCE_API bool JUCE_CALLTYPE juce::operator== ( const String s1,
const char s2 
)
noexcept

Case-sensitive comparison of two strings.

Definition at line 556 of file juce_String.cpp.

◆ operator==() [7/16]

JUCE_API bool JUCE_CALLTYPE juce::operator== ( const String s1,
const String s2 
)
noexcept

Case-sensitive comparison of two strings.

Definition at line 554 of file juce_String.cpp.

◆ operator==() [8/16]

JUCE_API bool JUCE_CALLTYPE juce::operator== ( const String s1,
const wchar_t *  s2 
)
noexcept

Case-sensitive comparison of two strings.

Definition at line 558 of file juce_String.cpp.

◆ operator==() [9/16]

JUCE_API bool JUCE_CALLTYPE juce::operator== ( const String s1,
StringRef  s2 
)
noexcept

Case-sensitive comparison of two strings.

Definition at line 560 of file juce_String.cpp.

◆ operator==() [10/16]

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

Compares two ReferenceCountedObjectPtrs.

Definition at line 457 of file juce_ReferenceCountedObject.h.

◆ operator==() [11/16]

JUCE_API bool juce::operator== ( const var v1,
const var v2 
)

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

Definition at line 651 of file juce_Variant.cpp.

◆ operator==() [12/16]

JUCE_API bool juce::operator== ( const var v1,
const char v2 
)

Definition at line 660 of file juce_Variant.cpp.

◆ operator==() [13/16]

JUCE_API bool juce::operator== ( const var v1,
const String v2 
)

Definition at line 658 of file juce_Variant.cpp.

◆ operator==() [14/16]

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

Compares two RelativeTimes.

Definition at line 57 of file juce_RelativeTime.cpp.

◆ operator==() [15/16]

template<size_t len, typename T >
bool juce::operator== ( std::nullptr_t  ,
const FixedSizeFunction< len, T > &  fn 
)

Definition at line 232 of file juce_FixedSizeFunction.h.

◆ operator==() [16/16]

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

Compares two Time objects.

Definition at line 574 of file juce_Time.cpp.

◆ operator>() [1/4]

JUCE_API bool JUCE_CALLTYPE juce::operator> ( const String s1,
StringRef  s2 
)
noexcept

Case-sensitive comparison of two strings.

Definition at line 564 of file juce_String.cpp.

◆ operator>() [2/4]

JUCE_API bool juce::operator> ( const var v1,
const var v2 
)

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

Definition at line 654 of file juce_Variant.cpp.

◆ operator>() [3/4]

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

Compares two RelativeTimes.

Definition at line 67 of file juce_RelativeTime.cpp.

◆ operator>() [4/4]

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

Compares two Time objects.

Definition at line 577 of file juce_Time.cpp.

◆ operator>=() [1/4]

JUCE_API bool JUCE_CALLTYPE juce::operator>= ( const String s1,
StringRef  s2 
)
noexcept

Case-sensitive comparison of two strings.

Definition at line 565 of file juce_String.cpp.

◆ operator>=() [2/4]

JUCE_API bool juce::operator>= ( const var v1,
const var v2 
)

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

Definition at line 656 of file juce_Variant.cpp.

◆ operator>=() [3/4]

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

Compares two RelativeTimes.

Definition at line 69 of file juce_RelativeTime.cpp.

◆ operator>=() [4/4]

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

Compares two Time objects.

Definition at line 579 of file juce_Time.cpp.

◆ 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

Definition at line 46 of file juce_XmlDocument.cpp.

◆ 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

Definition at line 41 of file juce_XmlDocument.cpp.

◆ 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

Definition at line 56 of file juce_XmlDocument.cpp.

◆ 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

Definition at line 51 of file juce_XmlDocument.cpp.

◆ radiansToDegrees()

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

Converts an angle in radians to degrees.

Definition at line 172 of file juce_MathsFunctions.h.

◆ 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.

Definition at line 197 of file juce_Memory.h.

◆ 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

Definition at line 1259 of file juce_BigInteger.cpp.

◆ readUnaligned()

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

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

Definition at line 65 of file juce_Memory.h.

◆ readUnalignedLittleEndianInt()

uint32 juce::readUnalignedLittleEndianInt ( const void buffer)

Definition at line 32 of file juce_ZipFile.cpp.

◆ readUnalignedLittleEndianShort()

uint16 juce::readUnalignedLittleEndianShort ( const void buffer)

Definition at line 26 of file juce_ZipFile.cpp.

◆ roundToInt() [1/2]

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

Fast floating-point-to-integer conversion.

This is faster than using the normal c++ cast to convert a float to an int, and it will round the value to the nearest integer, rather than rounding it down like the normal cast does.

Note that this routine gets its speed at the expense of some accuracy, and when rounding values whose floating point component is exactly 0.5, odd numbers and even numbers will be rounded up or down differently.

Definition at line 585 of file juce_MathsFunctions.h.

◆ roundToInt() [2/2]

int juce::roundToInt ( int  value)
noexcept

Definition at line 601 of file juce_MathsFunctions.h.

◆ roundToIntAccurate()

int juce::roundToIntAccurate ( double  value)
noexcept

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.

Definition at line 618 of file juce_MathsFunctions.h.

◆ serialisationSize() [1/2]

template<typename T >
constexpr auto juce::serialisationSize ( const T &  t) -> std::enable_if_t<std::is_integral_v<T>, SerialisationSize<const T>>
constexpr

Produces a SerialisationSize instance that holds an immutable reference to a size value.

Definition at line 130 of file juce_Serialisation.h.

◆ serialisationSize() [2/2]

template<typename T >
constexpr auto juce::serialisationSize ( T &  t) -> std::enable_if_t<std::is_integral_v<T>, SerialisationSize<T>>
constexpr

Produces a SerialisationSize instance that holds a mutable reference to a size value.

Definition at line 127 of file juce_Serialisation.h.

◆ shutdownJuce_GUI()

JUCE_API void JUCE_CALLTYPE 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()

Definition at line 503 of file juce_MessageManager.cpp.

◆ snapPointerToAlignment()

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

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.

Definition at line 45 of file juce_Memory.h.

◆ square()

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

Returns the square of its argument.

Definition at line 700 of file juce_MathsFunctions.h.

◆ threeWayCompare() [1/4]

int juce::threeWayCompare ( const ReverseCompareString a,
const ReverseCompareString b 
)

Definition at line 49 of file juce_FileTreeComponent.cpp.

◆ threeWayCompare() [2/4]

template<typename... Ts>
constexpr int juce::threeWayCompare ( const std::tuple< Ts... > &  a,
const std::tuple< Ts... > &  b 
)
constexpr

Definition at line 74 of file juce_FileTreeComponent.cpp.

◆ threeWayCompare() [3/4]

int juce::threeWayCompare ( const String a,
const String b 
)

Definition at line 38 of file juce_FileTreeComponent.cpp.

◆ threeWayCompare() [4/4]

template<typename T >
int juce::threeWayCompare ( const T &  a,
const T &  b 
)

Definition at line 30 of file juce_FileTreeComponent.cpp.

◆ threeWayCompareImpl()

template<size_t position, typename... Ts>
constexpr int juce::threeWayCompareImpl ( const std::tuple< Ts... > &  a,
const std::tuple< Ts... > &  b 
)
constexpr

Definition at line 55 of file juce_FileTreeComponent.cpp.

◆ toUnderlyingType()

template<typename T >
constexpr auto juce::toUnderlyingType ( t) -> std::enable_if_t<std::is_enum_v<T>, std::underlying_type_t<T>>
constexpr

Converts an enum to its underlying integral type.

Similar to std::to_underlying, which is only available in C++23 and above.

Definition at line 806 of file juce_MathsFunctions.h.

◆ translate() [1/4]

JUCE_API String juce::translate ( CharPointer_UTF8  stringLiteral)

Uses the LocalisedStrings class to translate the given string literal.

See also
LocalisedStrings

Definition at line 190 of file juce_LocalisedStrings.cpp.

◆ translate() [2/4]

JUCE_API String juce::translate ( const char stringLiteral)

Uses the LocalisedStrings class to translate the given string literal.

See also
LocalisedStrings

Definition at line 189 of file juce_LocalisedStrings.cpp.

◆ translate() [3/4]

JUCE_API String juce::translate ( const String stringLiteral)

Uses the LocalisedStrings class to translate the given string literal.

See also
LocalisedStrings

Definition at line 188 of file juce_LocalisedStrings.cpp.

◆ translate() [4/4]

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

Uses the LocalisedStrings class to translate the given string literal.

See also
LocalisedStrings

Definition at line 192 of file juce_LocalisedStrings.cpp.

◆ 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.

Definition at line 635 of file juce_MathsFunctions.h.

◆ unalignedPointerCast() [1/2]

template<typename Type >
Type juce::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.

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.

Definition at line 102 of file juce_Memory.h.

◆ unalignedPointerCast() [2/2]

template<typename Type >
Type juce::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.

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.

Definition at line 88 of file juce_Memory.h.

◆ withBitValueCleared()

constexpr EnumType juce::withBitValueCleared ( EnumType  enumValue,
EnumType  valueToRemove 
)
constexprnoexcept

Definition at line 99 of file juce_EnumHelpers.h.

◆ withBitValueSet()

constexpr EnumType juce::withBitValueSet ( EnumType  enumValue,
EnumType  valueToAdd 
)
constexprnoexcept

Definition at line 93 of file juce_EnumHelpers.h.

◆ withMember()

Object juce::withMember ( Object  copy,
Member OtherObject::*  member,
Other &&  value 
)

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

Definition at line 83 of file juce_Functional.h.

◆ 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

Definition at line 1224 of file juce_BigInteger.cpp.

◆ writeUnaligned()

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

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

Definition at line 74 of file juce_Memory.h.

◆ zeromem()

void juce::zeromem ( void memory,
size_t  numBytes 
)
noexcept

Fills a block of memory with zeros.

Definition at line 28 of file juce_Memory.h.

◆ zerostruct()

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

Overwrites a structure or object with zeros.

Definition at line 32 of file juce_Memory.h.

Variable Documentation

◆ blackNotes

constexpr uint8 juce::blackNotes[]
constexpr

Definition at line 30 of file juce_KeyboardComponentBase.cpp.

◆ bubblePaddingX

const float juce::bubblePaddingX

Definition at line 86 of file juce_BubbleMessageComponent.cpp.

◆ bubblePaddingY

const float juce::bubblePaddingY

Definition at line 87 of file juce_BubbleMessageComponent.cpp.

◆ clearOpenGLGlyphCache

void(* juce::clearOpenGLGlyphCache) () ( )

Definition at line 173 of file juce_Font.cpp.

◆ dynamicExtent

constexpr auto juce::dynamicExtent
constexpr

Definition at line 27 of file juce_Span.h.

◆ emptyString

constexpr StringHolder juce::emptyString
constexpr

Definition at line 58 of file juce_String.cpp.

◆ juce_argc

int juce::juce_argc

Definition at line 101 of file juce_Files_linux.cpp.

◆ juce_argv

const char *const * juce::juce_argv

Definition at line 100 of file juce_Files_linux.cpp.

◆ juce_createUnityPeerFn

createUnityPeerFunctionType juce::juce_createUnityPeerFn

Definition at line 217 of file juce_AudioProcessorEditor.cpp.

◆ juce_getTypefaceForFont

GetTypefaceForFont juce::juce_getTypefaceForFont

Definition at line 43 of file juce_Font.cpp.

◆ juce_messageWindowHandle

::Window juce::juce_messageWindowHandle

Definition at line 330 of file juce_XWindowSystem_linux.cpp.

◆ magicXmlNumber

const uint32 juce::magicXmlNumber

Definition at line 927 of file juce_AudioProcessor.cpp.

◆ minimumDecibels

constexpr auto juce::minimumDecibels
constexpr

Definition at line 26 of file juce_IIRFilter.cpp.

◆ 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;

Definition at line 28 of file juce_String.cpp.

◆ nullopt

constexpr auto juce::nullopt
constexpr

Definition at line 27 of file juce_Optional.h.

◆ rightEdgeSpace

constexpr int juce::rightEdgeSpace
constexpr

Definition at line 1487 of file juce_TextEditor.cpp.

◆ whiteNotes

constexpr uint8 juce::whiteNotes[]
constexpr

Definition at line 29 of file juce_KeyboardComponentBase.cpp.

◆ windowHandleXContext

XContext juce::windowHandleXContext

Definition at line 331 of file juce_XWindowSystem_linux.cpp.