| CADSR | Linear ADSR |
| CADSRComponent | Component for adjuting ADSR curves |
| CAirWindowsDistortion | Distortion based on AirWindows plugins |
| CAnalogADSR | Analog ADSR |
| CAsyncDownload | Async Download |
| CAsyncLambdaValueTreeListener | Listen to value tree changes with std::function<>, but Async |
| CAsyncWebsocket | |
| CAudioEquationParser | Enhances the EquationParser with math related functions like filters and oscilllators |
| CAudioFifo | FIFO - stuff audio in one end and it pops out the other |
| CAudioFunctionHost | State managment for audio functions |
| CAudioMidiFifo | FIFO - stuff audio/midi in one end and it pops out the other |
| CAudioProcessorWrapper | |
| CAudioSamplerBufferComponent | Draws an AudioSampleBuffer thumbnail |
| CBandLimitedLookupTable | Lookup tables for holding bandlimited waveforms |
| CBandLimitedLookupTables | Generate and hold bandlimited lookup tables for all the common waveforms |
| CBLLTVoicedStereoOscillator | Stereo Oscillator with multiple voices, pan, spread, detune, etc |
| CBMPImageFormat | Support for reading and writing Windows Bitmap files |
| CBoxArea | A group of control boxes |
| CBP12State | State for band pass filter |
| CBP24State | State for band pass filter |
| CCatenary | A catenary is the shape a wire, cable, rope etc |
| CCoalescedTimer | Run multiple timers from one juce::Timer per rate |
| CColourPropertyComponent | |
| CCommentMetadata | |
| ►CComponentGrid | |
| CDragInfo | |
| CComponentViewer | Shows the component under the mouse and component hierarchy |
| CControlBox | A box for holding controls on a grid |
| CCopperLookAndFeel | Plugin specific addition to GinLookAndFeel Still black and white |
| CCopperLookAndFeelWrapper | Auto sets and clears CopperLookAndFeel as default |
| CDCBlocker | |
| CDelayLine | Audio Delay with linear interpolation |
| ►CDownloadManager | Downloads files to a memory block and then calls a lambda on the message thread with the results |
| CDownloadResult | |
| CDynamics | Compressor / Gate / Expander / Limiter based on algorithm from Designing Audio Effect Plug-ins in C++ by Will Pirkle |
| CDynamicsMeter | Draws a comp, gate, limiter, expander graph Draws input > output curve Draws input and output levels |
| CEasedValueSmoother | Linearly smooths a value in a 0 to 1 range at a constant rate |
| CElevatedFileCopy | Copies files, creating folders where required requesting admin access only if required |
| CEllipse | Equations to calculate the shape of an ellipse and to calculate points on the edge of the ellipse and to see if points are inside or outside |
| CEnvelopeDetector | EnvelopeDetector for Dynamics |
| CEQ | Basic multi channel / multi band EQ |
| CEquationParser | |
| CExifMetadata | |
| CFastMath | |
| CFilePropertyComponent | |
| ►CFileSystemWatcher | Watches a folder in the file system for changes |
| CListener | Receives callbacks from the FileSystemWatcher when a file changes |
| CFilter | Basic multi channel filter |
| CFuncState | Base class to store an audio functions state But you say "functions don't have state!" Well, that's true, but to make things like filters act as functions, I need to hide a bit of state in them |
| CGainProcessor | |
| CGateEffect | Gate effect |
| CGateEffectComponent | An editor for the gate effect pattern |
| CGinLookAndFeel | The GinLookAndFeel |
| CGlideInfo | Info on how the voice should glide |
| CHeaderButton | A header button with title text |
| CHeaderItem | A header with power button, name and mod destinations |
| CHeaderRow | Holds a row of headers |
| CHorizontalFader | Horizontal slider wth text for controlling a param |
| CHP12State | State for high pass filter |
| CHP24State | State for high pass filter |
| ►CHttp | |
| CHttpResult | |
| CImageMetadata | |
| CImages | |
| CIntegrator | Calculates the integral of a function defined by a series of points |
| CIptcMetadata | |
| CKnob | Slider + editable text for showing a param |
| CLambdaAsyncUpdater | Like juce::AsyncUpdater, but it calls a std::function<> |
| CLambdaMouseListener | If you add a mouse listener to yourself to get nested mouse messages, then you get them all twice, so use a lambda mouse listener instead |
| CLambdaTimer | Like juce::Timer, but it calls a std::function<> |
| CLambdaValueTreeListener | Listen to value tree changes with std::function<> |
| CLayout | Layout components with json, supports hot reloading |
| CLeastSquaresRegression | See https://www.codeproject.com/Articles/63170/Least-Squares-Regression-for-Quadratic-Curve-Fitti for original code |
| CLevelMeter | Draws a simple level meter |
| CLevelTracker | Track audio levels with decay in dB |
| ►CLFO | LFO with many shapes |
| CParameters | |
| CLFOComponent | Draws an LFO curve and shows a little dot moving long |
| CLinearRegression | Calculates linear regression from a set of points |
| ►CLocationManager | |
| CListener | |
| CLocation | |
| CLP12State | State for low pass filter |
| CLP24State | State for low pass filter |
| CMainContentComponent | |
| CMapViewer | Draws an map, etting tiles fom one of many OpenStreetMapsServers |
| CMessagePack | Converts to/from MessagePack and juce::var |
| CMidiFifo | FIFO - stuff midi in one end and it pops out the other |
| CModCurveButton | A button that displays mod curve |
| CModDstId | |
| ►CModMatrix | Add one of these to you Synth if you want to support modulation |
| CListener | |
| CModMatrixBox | A list box of all assigned |
| CModSrcId | |
| CModSrcListBox | A list box of all mod sources |
| CModulation | Audio modulation, for a chorus or phaser etc |
| CModulationDepthSlider | A button for the modulation destination |
| CModulationOverview | A button and text readout that shows the current modulation source |
| CModulationSourceButton | A button for enabling modulation learn |
| CModVoice | Make your synth voice inherit from this if it supports modulation |
| ►CMSEG | MSEG LFO |
| CData | |
| CParameters | |
| CPoint | |
| CMSEGComponent | Draws an MSEG LFO curve and shows a little dot moving long |
| CMultiParamComponent | A base component for controlling multiple parameters at once |
| CNewsChecker | Checks Wordpress feed for plugin news |
| CNoiseState | State for noise |
| CNotch12State | State for notch filter |
| CNotch24State | State for notch filter |
| CNoteDuration | How long is a note? |
| ►COpenStreetMaps | Fetches map files from OSM servers |
| CListener | |
| COscState | State for an oscillator |
| CPagedControlBox | A control for holding pags of controls on a grid Pages slide over top of each other to make room |
| CParamArea | A box for graphs without a header |
| CParamBox | A box for knobs with a header |
| CParamComponent | Base class for a control showing a parameter with label |
| ►CParameter | A parameter with user values, real time safe callbacks, modulation, and all sorts of other fancy stuff |
| CParameterListener | |
| CParamState | |
| CParamHeader | A header with title text |
| ►CPatchBrowser | |
| CAuthorsModel | |
| CPresetsModel | |
| CTagsModel | |
| CPerlinNoise | Perlin noise - realistic looking noise Based on reference implementation of Perlin Noise by Ken Perlin http://mrl.nyu.edu/~perlin/paper445.pdf |
| CPinkNoise | |
| CPlateReverb | Plate reverb from Dattorro's paper |
| CPluginAlertWindow | An alert window that doesn't add itself to the desktop |
| CPluginButton | Button for toggling a parameter |
| CPluginComboBox | A control for selecting param values from a dropbox |
| CPluginLookAndFeel | Plugin specific addition to GinLookAndFeel Still black and white |
| CPluginLookAndFeelWrapper | Auto sets and clears PluginLookAndFeel as default |
| CPluginSlider | A slider for controlling a parameter |
| CPluginWrapper | |
| CPoint | Like the juce::Point, useful for project that don't use juce_graphics |
| CPolygon | Polygon with multiple points |
| CPowerButton | Button for toggling a parameter, drawn as a power button |
| CProcessor | A process with internal and external params |
| CProcessorEditor | Plugin editor |
| CProcessorEditorBase | Base for plugin editor |
| CProcessorOptions | Use this class to customize your plugin |
| CProgram | Saves your plugin state to XML |
| CPropertyComponentBase | |
| CReadout | A control for displaying a parameter |
| CRealtimeAsyncUpdater | Like juce::AsyncUpdater but it doesn't use the message queue |
| CResamplingFifo | ResamplingFifo - uses secret rabbit code |
| CRIFFParser | Parse all the chunks in RIFF files (like wav, aiff, etc) |
| CRollingAverage | Keeps a rolling average of a series of numbers |
| CSample | Holds an audio sample |
| CSampleOscillator | Oscillator for playing samples |
| CScaledPluginEditor | If you want your plugin editor to scale, just wrap it in this |
| CScratchBuffer | A temporay buffer provided from a list |
| CSecureStreamingSocket | |
| CSelect | Control for picking param value with label |
| CSharedMemory | Creates a block of shared memory |
| CSideBarComponent | |
| CSimpleVerb | Simple Reverb |
| ►CSingleLineTextEditor | An editable text box |
| CInputFilter | Base class for input filters that can be applied to a TextEditor to restrict the text that can be entered |
| CLengthAndCharacterRestriction | An input filter for a TextEditor that limits the length of text and/or the characters that it may contain |
| CListener | Receives callbacks from a TextEditor component when it changes |
| CLookAndFeelMethods | This abstract base class is implemented by LookAndFeel classes to provide TextEditor drawing functionality |
| CSmoothedParameter | A silky smooth parameter |
| CSmoothingType | How do you want you params smoothed? |
| ►CSpline | Cubic spline interpolation is a simple way to obtain a smooth curve from a set of discrete points |
| CElement | |
| CStandaloneFilterApp | |
| CStandaloneFilterWindow | A class that can be used to run a simple standalone application containing your filter |
| ►CStandalonePluginHolder | An object that creates and plays a standalone instance of an AudioProcessor |
| CPluginInOuts | Structure used for the number of inputs and outputs |
| CStepLFO | LFO with editable number of steps |
| CStepLFOComponent | Draws a step LFO curve and shows a little dot moving long |
| CStereoDelay | Stereo delay with feedback and cross feedback |
| CStereoEnhancer | Stereo Enhancer |
| ►CStereoOscillator | Virtual Analog Stereo oscillator |
| CParams | |
| CStereoProcessor | Stereo Processor |
| CSVGButton | Button that draws an SVG |
| CSVGPluginButton | Button for toggling a parameter |
| CSwitch | Control for toggling param with label |
| CSynthesiser | MPESynthesiser with better fast kill, mono and glide support |
| CSynthesiserUsage | Control for synth usage |
| CSynthesiserVoice | A voice with glide info and fast kill support |
| CSystemClipboard | Handles reading/writing to the system's clipboard |
| CSystemSemaphore | A semaphore that works across processes and in one process This is not finished / implemented |
| CTextHistory | |
| CTextRenderer | Render audio to ascii waveforms |
| CTimeProfiler | Time Profiler – get a quick idea how long something takes |
| CTitleBar | |
| CTriggeredScope | Triggered Scope that it can be set to start on a rising or falling signal |
| CUpdateChecker | Checks for plugin updates |
| CValueSmoother | Linearly smooths a value in a 0 to 1 range at a constant rate |
| CValueTreeObject | Mirrors a ValueTree in Objects |
| CVoicedOscillatorParams | |
| CVoicedStereoOscillator | Stereo Oscillator with multiples voices, pan, spread, detune, etc |
| CVoicedStereoOscillatorParams | |
| CWaveformComponent | Draws a waveform |
| CWavetableComponent | Draws a wavetable |
| CWEBPImageFormat | Support for reading and writing Webp |
| CWebSocket | |
| CWetDryMix | Mix between wet and dry with a nice curve |
| CWhiteNoise | |
| CWSHeaderType | |
| ►CWTOscillator | WT Oscillator |
| CParams | |
| CWTVoicedStereoOscillator | Stereo Wavetable Oscillator with multiples voices, pan, spread, detune, etc |
| CWTVoicedStereoOscillatorParams | |
| CXmpMetadata | |
| CXYScope | Draws an XY Scope |