Audacity 3.2.0
Class List
Here are the classes, structs, unions and interfaces with brief descriptions:
[detail level 123456]
 Nanonymous_namespace{ClipMenus.cpp}Namespace for functions for Clip menu
 NClientDataUtility ClientData::Site to register hooks into a host class that attach client data.
 NJournalFacilities for recording and playback of sequences of user interaction
 NNavigationActionsNamespace for functions for project navigation menu (part of Extra menu)
 NstdSTL namespace
 NTrackInfoFunctions for drawing the track control panel, which is shown to the side of a track It has the menus, pan and gain controls displayed in it. So "Info" is somewhat a misnomer. Should possibly be "TrackControls"
 NTypeListUtilities for compile-time type manipulation. Some terminology as in Lisp
 C_LADSPA_Descriptor_LADSPA_Descriptor is a structure that provides the API to a LADSPA (Linux Audio Plugin Architecture) Effect.
 C_LADSPA_PortRangeHint_LADSPA_PortRangeHint is a structure that gives parameter validation information for a LADSPA (Linux Audio Plugin Architecture) plug in effect.
 CAboutDialogThe AboutDialog shows the program version and developer credits
 CAboutDialogCreditItemAboutDialogCreditItem is a structure used by the AboutDialog to hold information about one contributor to Audacity
 CAButtonA wxButton with mouse-over behaviour
 CAccessibleLinksFormatterA class that allows translatable text to have accessible links in it in a way that is friendly to translators
 CAColorAColor Manages color brushes and pens
 CActiveProjectsManages a list of active projects
 CADCChangerMakes temporary drawing context changes that you back out of, RAII style
 CAdornedRulerPanelThis is an Audacity Specific ruler panel which additionally has border, selection markers, play marker
 CAEffectVST Effects class, conforming to VST layout
 CAliasedFileAn audio file that is referenced (pointed into) directly from an Audacity .aup file rather than Audacity having its own copies of the data
 CAndValidatorParameter must pass both of the supplied validators
 CAppCommandEventAn event 'envelope' for sending Command objects through the wxwidgets event loop
 CApplicableForEntry for the Applicability table
 CApplicationPrefsA PrefsPanel to enable/disable certain general application options like checking updates, etc
 CApplyAndSendResponseApplyAndSendResponse is a DecoratoredCommand that performs the given command and then outputs a status message according to the result. It manages a CommandContext which is passed into its mCommand, so that result messages are routed back to the right place
 CApplyMacroDialogShows progress in executing commands in MacroCommands
 CArrayOfThis simplifies arrays of arrays, each array separately allocated with NEW[] But it might be better to use std::Array<ArrayOf<X>, N> for some small constant N Or use just one array when sub-arrays have a common size and are not large
 CASliderASlider is a custom slider, allowing for a slicker look and feel
 CAStaticBitmapA widget for bitmaps which ignores the erase event for flicker-free use
 CAsyncPluginValidatorStarts and communicates with a dedicated process to perform plugin validation. Once instantiated, client should call AsyncPluginValidation::Validate for plugin that needs to be validated. When done, AsyncPluginValidation will notify caller via Delegate on the UI thread (requires event loop). After Delegate::OnValidationFinished is called procedure can be repeated with another plugin id
 CAttachableScrollBarAn AttachableScrollBar is a scroll bar that can be attached to multiple items and so control their scrolling. Uses floats internally, not ints, allowing for (external) control of zooming
 CAttachedVirtualFunctionClass template generates single-dispatch, open method registry tables
 CAudacityAppAudacityApp is the 'main' class for Audacity
 CAudacityAVDictionaryEntrySimply an overlay of AVDictionaryEntry, but we avoid including that type
 CAudacityCommandBase class for command in Audacity
 CAudacityCommandDialogDefault dialog used for commands. Is populated using ShuttleGui
 CAudacityExceptionBase class for exceptions specially processed by the application
 CAudacityFileConfigOur own specialisation of FileConfig
 CAudacityLoggerAudacityLogger is a thread-safe logger class
 CAudacityMessageDialogWrap wxMessageDialog so that caption IS translatable
 CAudacityPrintoutDerived from wxPrintout, this class helps with printing
 CAudacityProjectThe top-level handle to an Audacity project. It serves as a source of events that other objects can bind to, and a container of associated sub-objects that it treats opaquely. It stores a filename and a status message and a few other things. There is very little in this class, most of the intelligence residing in the cooperating attached objects
 CAudacityTextEntryDialogWrap wxTextEntryDialog so that caption IS translatable
 CAudioIOAudioIO uses the PortAudio library to play and record sound
 CAudioIOBaseA singleton object supporting queries of the state of any active audio streams, and audio device capabilities
 CAudioIoCallbackAudioIoCallback is a class that implements the callback required by PortAudio. The callback needs to be responsive, has no GUI, and copies data into and out of the sound card buffers. It also sends data to the meters
 CAudioIOExtBaseAbstract interface to alternative, concurrent playback with the main audio (such as MIDI events)
 CAudioIOListenerMonitors record play start/stop and new sample blocks. Has callbacks for these events
 CAudioIOStartStreamOptionsStruct holding stream options, including a pointer to the time warp info and AudioIOListener and whether the playback is looped
 CAudioSegmentA generalization for audio segments, whether clips or silence between clips
 CAudioSetupToolBarA toolbar to allow easier changing of input and output devices
 CAudioTrackTrack subclass holding data representing sound (as notes, or samples, or ...)
 CAudioUnitCleanerGenerates deleters for std::unique_ptr that clean up AU plugin state
 CAudioUnitEffectAn Effect class that handles a wide range of effects. ??Mac only??
 CAudioUnitEffectBaseAn Effect class that handles a wide range of effects. ??Mac only??
 CAudioUnitWrapperCommon base class for AudioUnitEffect and its Instance
 CAUPImportFileHandleAn ImportFileHandle for AUP files (pre-AUP3)
 CAUPImportPluginAn ImportPlugin for AUP files (pre-AUP3)
 CauStaticTextLike wxStaticText, except it can be themed. wxStaticText can't be
 CAutoDuckRegionStruct that holds a start and end time
 CAutoRollbackRenamerAutoRollbackRenamer handles the renaming of files which is needed when producing a NEW version of a file which may fail. On failure the old version is put back in place
 CBackedPanelBackedPanel is for a panel that consists of a bitmap with something drawn over it. It supports efficient repainting when the overlays change and recreation of the bitmap when the panel size is changed
 CBackgroundCellClass representing the background of a Track. It provides the hit test function that tells us what was hit
 CBatchEvalCommandGiven a string representing a command, pass it to the MacroCommands system
 CBatchEvalCommandTypeThe <something>CommandType classes are classes which are going away. They all provided a BuildSignature (what parameters they accept) and Name, but that is now replaced by the AudacityCommand interface.
 CBatchPrefsA probably unused PrefsPanel that in debug builds could offer a setting used in debugging batch (aka macros) processing
 CBE_CONFIGBE_CONFIG is a structure defined in the Blade DLL Interface for LAME (MP3 Conversion DLL)
 CBE_VERSIONBE_VERSION is a structure defined in the Blade DLL Interface for LAME (MP3 Conversion DLL)
 CBenchmarkDialogBenchmarkDialog is used for measuring performance and accuracy of sample block storage
 CBiquadRepresents a biquad digital filter
 CBoolArrayValidatorParameter must be char array of booleans, e.g. "011010001"
 CBoolSettingThis specialization of Setting for bool adds a Toggle method to negate the saved value
 CBoolValidatorParameter must be a boolean
 CBreakpadConfigurerThis class is used to configure Breakpad's handler before start
 CBriefCommandMessageTargetBriefCommandMessageTarget is a CommandOutputTarget that provides status in a briefer listing
 CBriefCommandOutputTargetsBriefCommandOutputTargets is a CommandOutputTargets that replaces the status message target with the BriefCommandMessageTarget version
 CBrowserDialogAdds some event handling to an HtmlWindow
 CBufferedIPCChannelSocket-based implementation of IPCChannel that uses intermediate buffer for data exchange between client and server
 CBufferedStreamReaderA facade-like class, that implements buffered reading from the underlying data stream
 CBuiltinCommandsModuleInternal module to auto register all built in commands. It is closely modelled on BuiltinEffectsModule
 CBuiltinEffectsModuleInternal module to auto register all built in effects.
 CBuiltinFormatStringBuiltinFormatString is a structure used in the NumericTextCtrl and holds both a descriptive name for the string format and a wxPrintf inspired style format string, optimised for displaying time in different formats
 CButtonHandleA UIHandle for a TrackPanel button, such as the Mute and Solo buttons
 CCachingSettingBaseClass template adds an in-memory cache of a value to TransactionalSettingBase and support for SettingTransaction
 CCapturedParametersGenerates EffectParameterMethods overrides from variadic template arguments
 CCellularPanelFormerly part of TrackPanel, this abstract base class has no special knowledge of Track objects and is intended for reuse with other windows
 CChannelAttachmentsHolds multiple objects of the parameter type as a single attachment to Track
 CChannelAttachmentsBaseHolds multiple objects as a single attachment to Track
 CChannelGroupIntervalA start and an end time, and whatever else subclasses associate with them
 CChannelIntervalThe intersection of a Channel and a WideChannelGroupInterval
 CChoiceEditorModified version of wxGridChoiceEditor using wxChoice instead of wxComboBox
 CClipboardChangeMessageMessage is sent during idle time by the global clipboard
 CCombinedMessageTargetSends messages to two message targets at once
 CCommandBuilderA type of factory for Commands of various sorts
 CCommandContextCommandContext provides additional information to an 'Apply()' command. It provides the project, and provides output channels for Error, Progress and Status. Status is used for general messaging from a command back to its invoker
 CCommandDirectoryAllows registration and lookup (by name) of command types
 CCommandFunctorCommandFunctor is a very small class that works with CommandManager. It holds the callback for one command
 CCommandHandlerContains methods for applying commands that are passed to it
 CCommandImplementationDerived from OldStyleCommand. It validates and applies the command. CommandImplementation::Apply() is overloaded in classes derived from it
 CCommandListList of CommandListEntry
 CCommandListEntryCommandListEntry is a structure used by CommandManager
 CCommandManagerCommandManager implements a system for organizing all user-callable commands
 CCommandMessageTargetInterface for objects that can receive (string) messages from a command
 CCommandMessageTargetDecoratorCommandMessageTargetDecorator is a CommandOutputTarget that forwards its work on to another one. Typically we derive from it to modify some functionality and forward the rest
 CCommandOutputTargetsCommandOutputTargets a mix of three output classes to output progress indication, status messages and errors
 CCommandParametersCommandParameters, derived from wxFileConfig, is essentially doing the same things as the SettingsVisitor classes. It does text <-> binary conversions of parameters. It does not seem to be using actual file read/writing.
 CCommandProgressTargetInterface for objects that can receive command progress information
 CCommandSignatureClass that maps parameter names to default values and validators
 CCommonChannelViewImplements some hit-testing shared by many ChannelView subtypes
 CCompareAudioCommandReturns information about the amount of audio that is about a certain threshold of difference in two selected tracks
 CCompatibilityEntryDescribes format-codec compatibility
 CComponentInterfaceComponentInterface provides name / vendor / version functions to identify plugins. It is what makes a class a plug-in. Additionally it provides an optional parameter definitions function, for those components such as commands, effects and (soon) preference pagess that define parameters
 CComponentInterfaceSymbolComponentInterfaceSymbol pairs a persistent string identifier used internally with an optional, different string as msgid for lookup in a translation catalog
 CCompressorPanelPanel used within the EffectCompressor for EffectCompressor
 CControlToolBarA ToolBar that has the main Transport buttons
 CCookieA struct, representing a Cookie object
 CCookiesListA class, representing a list of HTTP cookies
 CCrashReportContextThis object is for internal usage
 CCrossFaderNot used by Audacity (yet) apparently work in progress that has been abandoned
 CCutCopyPasteToolBarA ToolBar that has the cut, copy and paste buttons on it
 CDCUnchangerUsed to restore pen, brush and logical-op in a DC back to what they were
 CDecoratedCommandDecoratedCommand is a decorator for command. It forwards functions to the mCommand it holds
 CDefaultPlaybackPolicyThe PlaybackPolicy used by Audacity for most playback
 CDemoCommandAn AudacityCommand that does nothing but provide parameters. It is for development purposes
 CDemoDialogDemoDialog used with DemoCommand
 CDependencyDialogDependencyDialog shows dependencies of an AudacityProject on AliasedFile s
 CDestroyerA deleter class to supply the second template parameter of unique_ptr for classes like wxWindow that should be sent a message called Destroy rather than be deleted directly
 CDeviceManagerA singleton that manages the audio devices known to Audacity
 CDevicePrefsA PrefsPanel used to select recording and playback devices and other settings
 CDeviceToolBarA toobar to allow easier changing of input and output devices
 CDiagsProcessing of the macros for recording bad events or performance monitoring
 CDirectoriesPrefsA PrefsPanel used to select directories
 CDitherThis class implements various functions for dithering and is derived from the dither code in the Ardour project, written by Steve Harris
 CDoubleSettingSpecialization of Setting for double
 CDoubleValidatorParameter must be a floating-point number
 CDragCommandCommand that sets clip information
 CEBUR128Implements EBU-R128 loudness measurement
 CEchoDialogEchoDialog used with EffectEcho
 CEditToolBarA ToolBar that has the edit buttons on it
 CEffectBase class for many of the effects in Audacity
 CEffectAmplifyAn Effect that makes a sound louder or softer
 CEffectAutoDuckImplements the Auto Ducking effect
 CEffectBaseBase class for many of the effects in Audacity
 CEffectBassTrebleA high shelf and low shelf filter
 CEffectChangeSpeedAn Effect that affects both pitch & speed
 CEffectChangeTempoAn EffectSoundTouch provides speeding up or slowing down tempo without changing pitch
 CEffectClickRemovalAn Effect for removing clicks
 CEffectCompressorAn Effect derived from EffectTwoPassSimpleMono
 CEffectDefinitionInterfaceEffectDefinitionInterface is a ComponentInterface that adds some basic read-only information about effect properties, and getting and setting of parameters
 CEffectDistortionA WaveShaper distortion effect
 CEffectDtmfAn effect that generates DTMF tones
 CEffectEchoAn Effect that causes an echo, variable delay and volume
 CEffectEqualizationAn Effect that modifies volume in different frequency bands
 CEffectFadeAn Effect that reduces the volume to zero over achosen interval
 CEffectFindClippingLocates clipping and inserts labels when found
 CEffectInstancePerforms effect computation
 CEffectInstanceExPerforms effect computation
 CEffectInstanceWithBlockSizeInherit to add a state variable to an EffectInstance subclass
 CEffectInvertAn Effect that inverts the selected audio
 CEffectLevellerAn Effect that aims to selectively make softer sounds louder
 CEffectLoudnessAn Effect to bring the loudness level up to a chosen level
 CEffectManagerEffectManager is the class that handles effects and effect categories
 CEffectNoiseAn effect to add white noise
 CEffectNoiseReductionA two-pass effect to reduce background noise
 CEffectNoiseRemovalA two-pass effect to remove background noise
 CEffectNormalizeAn Effect to bring the peak level up to a chosen level
 CEffectOutputsHold values to send to effect output meters
 CEffectOutputTracksUse this object to copy the input tracks to tentative outputTracks
 CEffectParameterMethodsInterface for manipulations of an Effect's settings
 CEffectPaulstretchAn Extreme Time Stretch and Time Smear effect
 CEffectPhaserAn Effect that changes frequencies in a time varying manner
 CEffectPluginFactory of instances of an effect
 CEffectRepairUse the interpolation code to fill in damaged audio. Damage can include pops, clicks, or clipping. As long as the damaged section is short and surrounded by lots of good audio, it is usually quite successful
 CEffectRepeatAn Effect that repeats audio several times over
 CEffectReverbA reverberation effect
 CEffectReverseAn Effect that reverses the selected audio
 CEffectScienFilterAn Effect that applies 'classical' IIR filters
 CEffectScienFilterPanelEffectScienFilterPanel is used with EffectScienFilter and controls a graph for EffectScienFilter
 CEffectSettingChangedMessage sent by EffectEditor when a setting is changed by the user
 CEffectSettingsExternalized state of a plug-in
 CEffectSettingsExtraNon-polymorphic package of settings values common to many effects
 CEffectSettingsManagerEffectSettingsManager is an EffectDefinitionInterface that adds a factory function for EffectSettings, and const functions for manipulating those settings. This externalizes certain effect state
 CEffectSilenceAn effect to add silence
 CEffectsPrefsA PrefsPanel for general GUI preferences
 CEffectStageDecorates a source with a non-timewarping effect, which may have latency
 CEffectStereoToMonoAn Effect to convert stereo to mono
 CEffectTimeScaleAn EffectTimeScale does high quality sliding time scaling/pitch shifting
 CEffectToneGenAn Effect that can generate a sine, square or sawtooth wave. An extended mode of EffectToneGen supports 'chirps' where the frequency changes smoothly during the tone
 CEffectTruncSilenceTruncate Silence automatically reduces the length of passages where the volume is below a set threshold level
 CEffectTwoPassSimpleMonoAn Effect base class that implements a two pass process
 CEffectWahwahAn Effect that adds a 'spectral glide'
 CEnumSettingAdapts EnumSettingBase to a particular enumeration type
 CEnvelopePiecewise linear or piecewise exponential function from double to double
 CEnvPointEnvPoint, derived from XMLTagHandler, provides Envelope with a draggable point type
 CEQCurveOne curve in a list
 CEQCurveReaderDeserializer of curves from XML files
 CEQCurveWriterSerializer of curves into XML files
 CEQPointOne point in a curve
 CEqualizationCurvesDialogEqualizationCurvesDialog manages the available preset curves
 CEqualizationCurvesListMaintains a list of preset curves for Equalization effects
 CEqualizationPanelEqualizationPanel is used with EqualizationDialog and controls a graph for EffectEqualization. We should look at amalgamating the various graphing code, such as provided by FrequencyPlotDialog and FilterPanel
 CEqualizationParametersParameters of the Equalization effects that persist in configuration files
 CErrorDialogGives an Error message with an option for help
 CErrorReportDialogA dialog, that has "Send", "Don't send" and help buttons
 CExpandingToolBarA smart ToolBar class that has a "MainPanel" which is always displayed, and an "ExtraPanel" that can be hidden to save space
 CExpandingToolBarEvtHandlerA custom event handler for ExpandingToolBar
 CExportMain class to control the export function
 CExportCommandCommand for exporting audio
 CExportFFmpegControlling class for FFmpeg exporting. Creates the options dialog of the appropriate type, adds tags and invokes the export function
 CExportFFmpegOptionsCustom FFmpeg export dialog
 CExportMixerDialogDialog for advanced mixing
 CExportMixerPanelPanel that displays mixing for advanced mixing option
 CExportOptionA type that provides a description of an exporting option. Isn't allowed to change except non-type related flags
 CExportOptionsEditorEditor objects are used to retrieve a set of export options, and configure exporting parameters according the plugin internal logic. Each option is assigned with internal index that should not change
 CExportPluginHelpersUtility class that provides helper functions for ExportPlugin
 CExposedFormatDescribes export type
 CExtendedLV2FeaturesListExtends one (immutable) feature list (whose lifetime contains this one's)
 CExtImportPrefsA PrefsPanel used to select extended import filter options
 CExtTargetFactoryExtended Target Factory with more options
 CFFmpegExporterPerforms actual export
 CFFmpegImportFileHandle! Does actual import, returned by FFmpegImportPlugin::Open
 CFFmpegImportPluginAn ImportPlugin for FFmpeg data
 CFFmpegLibsClass used to dynamically load FFmpeg libraries
 CFileDialogDialog used to present platform specific "Save As" dialog with custom controls
 CFileExceptionThrown for failure of file or database operations in deeply nested places
 CFileHistorySimilar to wxFileHistory, but customized to our needs
 CFileNamesProvides Static functions to yield filenames
 CFinally"finally" as in The C++ Programming Language, 4th ed., p. 358 Useful for defining ad-hoc RAII actions. typical usage: auto cleanup = finally([&]{ ... code; ... });
 CFindClippingDialogFindClippingDialog used with EffectFindClipping
 CFindFFmpegDialogAllows user to locate libav* libraries
 CFLACImportFileHandleAn ImportFileHandle for FLAC data
 CFLACImportPluginAn ImportPlugin for FLAC data
 CFlowPackerA cursor for iterating the theme bitmap
 CFormatAbstract base class used in importing a file
 CFormatClassifierFormatClassifier classifies the sample format and endianness of raw audio files
 CFormatterContextA context in which formatter operates
 CFrameStatisticsA class to profile TrackPanel painting
 CFrameStatisticsDialogA dialog that displays information about time needed to paint the TrackPanel
 CFreqPlotWorks with FrequencyPlotDialog to display a spectrum plot of the waveform. This class actually does the graph display
 CFrequencyPlotDialogDisplays a spectrum plot of the waveform. Has options for selecting parameters of the plot
 CFromCharsResultResult of the conversion, similar to std::from_chars_result
 CGeometricInputRateTimeWarperTimeScale - rate varies geometrically with input
 CGeometricOutputRateTimeWarperTimeScale - rate varies geometrically with output
 CGetInfoCommandCommand which outputs a list of available menu commands on the status channel
 CGetPreferenceCommandCommand for getting the value of a preference
 CGetTrackInfoCommandObsolete. GetInfo now does it
 CGlobalHookGlobal function-valued variable, adding a convenient Call()
 CGlobalVariableClass template to generate global variables
 CGrabberThe widget to the left of a ToolBar that allows it to be dragged around to NEW positions
 CGrabberEventGrabber Class
 CGridSupplies an accessible grid based on wxGrid
 CGUIPrefsA PrefsPanel for general GUI preferences
 CHeaderA string pair, representing HTTP header
 CHeadersListA class, representing a list of HTTP headers
 CHelpCommandCommand to get help about other commands
 CHelpSystemClass which contains static methods and data needed for implementing help buttons
 CHistoryDialogWorks with UndoManager to allow user to see descriptions of and undo previous commands. Also allows you to selectively clear the undo memory so as to free up space
 CHtmlWindowHtmlWindow Class
 CIdentifierAn explicitly nonlocalized string, not meant for the user to see
 CIdentityTimeWarperNo change to time at all
 CImageRollAn ImageRoll is an image that can be expanded to an arbitrary size; it is made up of both fixed pieces and repeating pieces
 CImageRollPanelA wxPanel which displays an ImageRoll
 CImportCommandCommand for importing audio
 CImporterClass which actually imports the auido, using functions defined in ImportPCM.cpp, ImportMP3_*.cpp, ImportOGG.cpp, ImportRawData.cpp, ImportLOF.cpp, and ImportAUP.cpp
 CImportExportPrefsA PrefsPanel used to select import and export options
 CImportFileHandleBase class for FlacImportFileHandle, LOFImportFileHandle, MP3ImportFileHandle, OggImportFileHandle and PCMImportFileHandle. Gives API for sound file import
 CImportPluginBase class for FlacImportPlugin, LOFImportPlugin, MP3ImportPlugin, OggImportPlugin and PCMImportPlugin. Gives API for sound file import
 CImportProgressListenerInterface used to report on import state and progress
 CImportRawDialogImportRawDialog prompts you with options such as endianness and sample size to help you importing data of an unknown format
 CInconsistencyExceptionException that should be impossible in production, thrown only from provably unreachable places
 CInteractiveOutputTargetsInteractiveOutputTargets is an output target that pops up a dialog, if necessary
 CInternatInternationalisation support
 CIntSettingSpecialization of Setting for int
 CIntValidatorParameter must be integral
 CInvisiblePanelAn InvisiblePanel is a panel which does not repaint its own background
 CInvisibleTemporaryProjectMakes a temporary project that doesn't display on the screen
 CIPCChannelInterface for sending data from client to server or vice versa, complemented by IPCChannelStatusCallback
 CIPCChannelStatusCallbackInterface for listening connection status changes
 CIPCClientSimple TCP socket based ipc client. When created attempts to connect to existing server (see IPCServer)
 CIPCServerSimple TCP socket based ipc server. When created server starts to listen for incoming connection (see IPCClient)
 CIteratorRangeA convenience for use with range-for
 CKeyConfigPrefsA PrefsPanel for keybindings
 CKeyViewProvides multiple views of keyboard shortcuts
 CLabelDialogDialog for editing labels
 CLabelStructA LabelStruct holds information for ONE label in a LabelTrack
 CLabelTrackA LabelTrack is a Track that holds labels (LabelStruct)
 CLadspaEffectAn Effect that calls up a LADSPA plug in, i.e. many possible effects from this one class
 CLadspaEffectBaseAn Effect that calls up a LADSPA plug in, i.e. many possible effects from this one class
 CLadspaEffectOutputsCarry output control port information back to main thread
 Clame_global_flagsStruct with zillion of control parameters that control lame export (MP3 Conversion DLL)
 CLangChoiceDialogA dialog used (at start up) to present the user with a choice of languages for Audacity
 CLibraryPrefsA PrefsPanel used to select manage external libraries like the MP3 and FFmpeg encoding libraries
 CLilv_deleterGenerate deleter classes for smart pointers to lv2 resources
 CLinearInputInverseRateTimeWarperTimeScale - inverse rate varies linearly with input
 CLinearInputRateTimeWarperTimeScale - rate varies linearly with input
 CLinearOutputRateTimeWarperTimeScale - rate varies linearly with output
 CLinearTimeWarperLinear scaling, initialised by giving two points on the line
 CLinkingHtmlWindowAn HtmlWindow that handles linked clicked - usually the link will go to our own local copy of the manual, but it could launch a new browser window
 CLispifiedCommandOutputTargetsLispifiedCommandOutputTargets is a CommandOutputTargets that replaces the status message target with the LispyCommandMessageTarget version
 CLispyCommandMessageTargetLispyCommandMessageTarget is a CommandOutputTarget that provides status in a lispy style
 CListNavigationEnabledChanges default arrow navigation to behave more list- or table-like. Instead of searching focusable items among children first, list navigation searches for siblings when arrow key is pressed. Tab behaviour stays same. Requires wxWANT_CHARS style flag to be set
 CLocationUsed only by WaveTrack, a special way to hold location that can accommodate merged regions
 CLOFImportFileHandleAn ImportFileHandle for LOF data
 CLOFImportPluginAn ImportPlugin for LOF data
 CLogWindowMaintains the unique logging window which displays debug information
 CLongMessageDialogLongMessageDialog is a dialog with a Text Window in it to capture the more lengthy output from some commands
 CLV2AtomPortImmutable description of an LV2 Atom port
 CLV2AtomPortStateState of an instance of an LV2 Atom port
 CLV2AudioPortImmutable description of an LV2 Audio port
 CLV2ControlPortImmutable description of an LV2 control port
 CLV2ControlPortStateOther UI related state of an instance of an LV2 Control port
 CLV2CVPortImmutable description of an LV2 CV port (control data signal at sample rate)
 CLV2CVPortStateState of an instance of an LV2 CV port
 CLV2EffectMeterUI widget that watches a floating point location and then updates a bar
 CLV2EffectOutputsCarry output control port information back to main thread
 CLV2EffectSettingsStorage locations to be connected to LV2 control ports
 CLV2PortImmutable description of an LV2 port
 CLV2WrapperManager of a handle to an LV2 plug-in instantiation
 CLWSliderLightweight version of ASlider. In other words it does not have a window permanently associated with it
 CLyricsPanelLyricsPanel is a panel that paints the bouncing ball and the lyrics text
 CMacroCommandDialogProvides a list of configurable commands for use with MacroCommands
 CMacroCommandsMaintains the list of commands for batch/macro processing. See also MacrosWindow and ApplyMacroDialog
 Cmad_bitptrStruct in the MPEG library, used for MP3 compression by MP3Exporter
 Cmad_decoderStruct in the MPEG library, used for MP3 compression by MP3Exporter
 Cmad_frameStruct in the MPEG library, used for MP3 compression by MP3Exporter
 Cmad_headerStruct in the MPEG library, used for MP3 compression by MP3Exporter
 Cmad_pcmStruct in the MPEG library, used for MP3 compression by MP3Exporter
 Cmad_streamStruct in the MPEG library, used for MP3 compression by MP3Exporter
 Cmad_synthStruct in the MPEG library, used for MP3 compression by MP3Exporter
 Cmad_timer_tStruct in the MPEG library, used for MP3 compression by MP3Exporter
 CMatrixHolds a matrix of doubles and supports arithmetic, subsetting, and matrix inversion. Used by InterpolateAudio
 CMemoryStreamA low overhead memory stream with O(1) append, low heap fragmentation and a linear memory view
 CMenuBarListList of MenuBarListEntry
 CMenuBarListEntryMenuBarListEntry is a structure used by CommandManager
 CMenuCreatorMenuCreator is responsible for creating the main menu bar
 CMenuManagerMenuManager handles updates to menu state
 CMenuUpdateMessageSent when menus update (such as for changing enablement of items)
 CMessageBoxExceptionAbstract AudacityException subclass displays a message, specified by further subclass
 CMessageBoxTargetDisplays messages from a command in an AudacityMessageBox
 CMessageBufferCommunicate data atomically from one writer thread to one reader
 CMessageCommandCommand to get a message response. Used for testing, and used internally to create messages for forwarding
 CMessageCommandTypeThe <something>CommandType classes are classes which are going away. They all provided a BuildSignature (what parameters they accept) and Name, but that is now replaced by the AudacityCommand interface.
 CMessageDialogTargetMessageDialogTarget is a CommandOutputTarget that sends its status to the LongMessageDialog
 CMeterAudioIO uses this to send sample buffers for real-time display updates
 CMeterBarA struct used by MeterPanel to hold the position of one bar
 CMeterPanelMeterPanel is a panel that paints the meter used for monitoring or playback
 CMeterPanelBaseInherits wxPanel and has a Meter; exposes shared_ptr to the Meter
 CMeterToolBarA ToolBar that holds the VU Meter
 CMeterUpdateMsgMessage used to update the MeterPanel
 CMeterUpdateQueueQueue of MeterUpdateMsg used to feed the MeterPanel
 CMidiIOPrefsA PrefsPanel used to select recording and playback devices and other settings
 CMIDIParserUnused class that might someday be used again to read MIDI files into a NoteTrack
 CMIDIPlayCallbacks that AudioIO uses, to synchronize audio and MIDI playback
 CMissingPluginsErrorDialogAn error dialog about missing plugins
 CMixerFunctions for doing the mixdown of the tracks
 CModNullCallbackModNullCallback is a class containing all the callback functions for this demonstartion module. These functions are added into the standard Audacity Project Menus
 CModNullCommandFunctorWe create one of these functors for each menu item or command which we register with the Command Manager. These take the click from the menu into the actual function to be called
 CModulePrefsA PrefsPanel to enable/disable certain modules. 'Modules' are dynamically linked libraries that modify Audacity. They are plug-ins with names like mod-script-pipe that add NEW features
 CMousePrefsA PrefsPanel that presents an interface for user to view the default bindings of mouse buttons to commands
 CMP2ExporterClass used to export MP2 files
 CMP3ExporterClass used to export MP3 files
 CMultiDialogA dialog presenting an exclusive, multiple choice, help button, and log info
 CMultiFormatReaderMultiFormatReader reads raw audio files in different formats and machine endianness representations
 CNetworkManagerClass for performing HTTP requests
 CNoiseRemovalDialogDialog used with EffectNoiseRemoval
 CNoteTrackA Track that is used for Midi notes. (Somewhat old code)
 CNoteTrackDisplayDataData used to display a note track
 CNoUpdatesAvailableDialogInformation dialog about no updates available, that allows to navigate to settings quickly
 CNullMessageTargetUsed to ignore a command's message updates
 CNullProgressTargetUsed to ignore a command's progress updates
 CNumericConverterNumericConverter provides the advanced formatting control used in the selection bar of Audacity
 CNumericEditorWxGridCellEditor for the NumericTextCtrl
 CNumericRendererWxGridCellRenderer for the NumericTextCtrl
 CNyqControlA control on a NyquistDialog
 CNyquistEffectAn Effect that calls up a Nyquist (XLISP) plug-in, i.e. many possible effects from this one class
 CNyquistOutputDialogDialog used with NyquistEffect
 COGGImportPluginAn ImportPlugin for OGG data
 COldStyleCommandAbstract base class for command interface. This is the version created by Dan Horgan. It was previously a factory for other command classes. It created a separation between the type of a command and the command itself, which is being removed. These Commands were managed by CommandDirectory
 COldStyleCommandPointerOldStyleCommandPointer is a unique_ptr to an OldStyleCommand
 COldStyleCommandTypeBase class for containing data common to all commands of a given type. Also acts as a factory
 COpenProjectCommandCommand for opening an Audacity project
 COptionValidatorParameter must be one of the defined options
 COtherPlayableSequenceThis is defined just to enable dynamic_cast on it
 CPasteTimeWarperUnit slope but with either a jump (pasting more) or a flat interval (pasting less)
 CPaulStretchClass that helps EffectPaulStretch. It does the FFTs and inner loop of the effect
 CPCMImportFileHandleAn ImportFileHandle for PCM data
 CPCMImportPluginAn ImportPlugin for PCM data
 CPerTrackEffectBase class for many of the effects in Audacity
 CPlatformCompatibilityFilename Compatibility utilities
 CPlayableTrackAudioTrack subclass that can also be audibly replayed by the program
 CPlaybackPolicyDirects which parts of tracks to fetch for playback
 CPlaybackPrefsA PrefsPanel used to select playback options
 CPlaybackSliceDescribes an amount of contiguous (but maybe time-warped) data to be extracted from tracks to play
 CPluginHostInternal class, processes plugin validation requests from the main app. Request is a simple string formatted by detail::MakeRequestString. After connection is established host starts to wait for a request from server. Once request is successfully processed host sends a reply. Host is capable to handle only one request at a time, so it's not allowed to send another request until host hasn't finish processing previous request
 CPluginManagerPluginManager maintains a list of all plug ins. That covers modules, effects, generators, analysis-effects, commands. It also has functions for shared and private configs - which need to move out
 CPrefsDialogDialog that shows the current PrefsPanel in a tabbed divider
 CPrefsListenerA listener notified of changes in preferences
 CPrefsPanelBase class for a panel in the PrefsDialog. Classes derived from this class include BatchPrefs, DirectoriesPrefs, GUIPrefs, KeyConfigPrefs, MousePrefs, QualityPrefs, SpectrumPrefs and ThemePrefs
 CProfilerA simple profiler to measure the average time lengths that a particular task/function takes. Currently not thread-safe and not thread-smart, but it will probably work fine if you use it on a high level
 CProgressDialogProgressDialog Class
 CProgressToMessageTargetProgressToMessageTarget formats the percentage complete text as a message and sends it to that message target
 CProjectFileIOObject associated with a project that manages reading and writing of Audacity project file formats, and autosave
 CProjectFormatExtensionsRegistryThe class that allows evaluating the minimum version of Audacity required to support the project
 CProjectFormatVersionA structure that holds the project version
 CProjectManagerObject associated with a project for high-level management of the project's lifetime, including creation, destruction, opening from file, importing, pushing undo states, and reverting to saved states
 CProjectRateHolds project sample rate
 CProjectSerializerClass used to (de)serialize the project catalog
 CProjectSettingsHolds various per-project settings values, and sends events to the project when certain values change
 CProjectSnapProject snapping settings
 CProjectWindowA top-level window associated with a project, and handling scrollbars and zooming
 CProjectWindowBaseA top-level window associated with a project
 CProjectWindowDestroyedMessageMessage sent when the project window is closed
 CQualityPrefsA PrefsPanel used for setting audio quality
 CRangeValidatorParameter must lie between the two given numbers
 CRealtimeEffectManagerMessagePosted when effect is being added or removed to/from channel group or project
 CRealtimeEffectPanelUI Panel that displays realtime effects from the effect stack of an individual track, provides controls for accessing effect settings, stack manipulation (reorder, add, remove)
 CRealtimeEffectStateUIUI state for realtime effect
 CRecordingDropoutEventNotification, after recording has stopped, when dropouts have been detected
 CRecordingPrefsA PrefsPanel used to select recording options
 CRegionTimeWarperNo change before the specified region; during the region, warp according to the given warper; after the region, constant shift so as to match at the end of the warped region
 CRegistrarBase class for registration callback. Audacity will call providers RegisterNameOfThing() functions with an &Registrar as the argument. RegisterNameOfThing() is then responsible for calling the appropriate callback functions
 CRepeatDialogDialog used with EffectRepeat
 CRequestClass to construct the HTTP request
 CResampleInterface to libsoxr
 CResponseStores a command response string (and other response data if it becomes necessary)
 CResponseQueueAllow messages to be sent from the main thread to the script thread
 CResponseTargetConstructs a response (to be sent back to a script)
 CRestoreValueStructure used by ValueRestorer
 CRingBufferHolds streamed audio samples
 CRulerUsed to display a Ruler
 CRulerPanelRulerPanel class allows you to work with a Ruler like any other wxWindow
 CRulerUpdaterUsed to update a Ruler
 CSampleBlockAbstract class allows access to contents of a block of sound samples, serialization as XML, and reference count management that can suppress reclamation of its storage
 CSampleBlockFactoryAbstract base class with methods to produce SampleBlock objects
 CsampleCountPositions or offsets within audio files need a wide type
 CSampleFormatsTwo sample formats, remembering format of original source and describing stored format
 CSaveCopyCommandCommand for saving a copy of currently project
 CSaveLogCommandCommand for saving the log contents
 CSaveProjectCommandCommand for saving an Audacity project
 CScoreAlignDialogScoreAlignDialog is \TODO
 CScreenshotBigDialogScreenshotBigDialog provides an alternative Gui for ScreenshotCommand. It adds a timer that allows a delay before taking a screenshot, provides lots of one-click buttons, options to resize the screen. It forwards the actual work of doing the commands to the ScreenshotCommand
 CScreenshotCommandImplements a command for capturing various areas of the screen or project window. It's one big if-elseif switch statement with lots of small calculations of rectangles
 CScriptCommandRelayScriptCommandRelay is just a way to move some of the scripting-specific code out of ModuleManager
 CSelectCommandCommand for changing time, frequency and track selection. This class is a little baroque, as it uses the SelectTimeCommand, SelectFrequenciesCommand and SelectTracksCommand, when it could just explicitly code all three
 CSelectedRegionDefines a selected portion of a project
 CSelectFrequenciesCommandCommand for changing the frequency selection
 CSelectionBar(not quite a Toolbar) at foot of screen for setting and viewing the selection range
 CSelectionBarListenerA parent class of SelectionBar, used to forward events to do with changes in the SelectionBar
 CSelectTimeCommandCommand for changing the time selection
 CSelectTracksCommandCommand for changing the selection of tracks
 CSeqBlockData structure containing pointer to a sample block and a start time. Element of a BlockArray
 CSequenceA WaveTrack contains WaveClip(s). A WaveClip contains a Sequence. A Sequence is primarily an interface to an array of SeqBlock instances, corresponding to the audio sample blocks in the database. Contrast with RingBuffer
 CSetClipCommandCommand that sets clip information
 CSetEnvelopeCommandCommand that sets envelope information
 CSetLabelCommandCommand that sets label information
 CSetPreferenceCommandCommand for setting a preference to a given value
 CSetProjectCommandCommand that sets project information
 CSettingBaseBase class for settings objects. It holds a configuration key path
 CSettingScopeMakes temporary changes to preferences, then rolls them back at destruction
 CSettingsVisitorBaseVisitor of effect or command parameters. This is a base class with lots of virtual functions that do nothing by default. Unrelated to class Shuttle
 CSettingTransactionExtend SettingScope with Commit() which flushes updates in a batch
 CSetTrackAudioCommandA SetChannelsBase that sets pan, gain, mute and solo
 CSetTrackBaseBase class for the various track modifying command classes, that loops over selected tracks. Subclasses override ApplyInner() to change one track
 CSetTrackCommandA SetChannelsBase that combines SetTrackStatusCommand, SetTrackAudioCommand and SetTrackVisualsCommand
 CSetTrackStatusCommandA SetChannelsBase that sets name, selected and focus
 CSetTrackVisualsCommandA SetChannelsBase that sets appearance of a track
 CSharedNonInterferingWorkaround for std::make_shared not working on macOs with over-alignment
 CShiftTimeWarperBehaves like another, given TimeWarper, except shifted by a fixed amount
 CShuttleDefaultsSettingsVisitor that sets parameters to their default values
 CShuttleGetAutomationSettingsVisitor that gets parameter values into a string
 CShuttleGetDefinitionSettingsVisitor that retrieves a JSON format definition of a command's parameters
 CShuttleGuiDerived from ShuttleGuiBase, an Audacity specific class for shuttling data to and from GUI
 CShuttleGuiBaseBase class for shuttling data to and from a GUI
 CShuttlePrefsA kind of Shuttle to exchange data with preferences e.g. the registry
 CShuttleSetAutomationSettingsVisitor that sets parameters to a value (from a string)
 CSimpleEffectSettingsAccessImplementation of EffectSettings for cases where there is only one thread
 CSimpleGuardA default template parameter for GuardedCall<R>
 CSimpleGuard< bool >Specialization of SimpleGuard, also defining a default value
 CSimpleGuard< void >Specialization of SimpleGuard, also defining a default value
 CSimpleMessageBoxExceptionA MessageBoxException that shows a given, unvarying string
 CSliderDialogPop up dialog used with an LWSlider
 Csocket_guardRAII-style socket wrapper. Since socket is closed on wrapper destruction, initializing multiple guards with same(valid) socket descriptor is considered UB. For same reason wrapper isn't copyable
 CSoundActivatedRecordDialogConfigures sound activated recording
 CSourceOutputStreamHelper class based on wxOutputStream used to get a png file in text format
 CSpecPowerCalculationSpecPowerCalculation is a simple spectral power level meter
 CSpectralDataDialogProvides UI for spectral editing and parameters adjustments
 CSpectralDataManagerPerforms the calculation for spectral editing
 CSpectralSelectionBar(not quite a Toolbar) at foot of screen for setting and viewing the frequency selection range
 CSpectralSelectionBarListenerA class used to forward events to do with changes in the SpectralSelectionBar
 CSpectrogramSettingsSpectrogram settings, either for one track or as defaults
 CSpectrumAnalystUsed for finding the peaks, for snapping to peaks
 CSpectrumPrefsA PrefsPanel for spectrum settings
 CSpectrumTransformerA class that transforms a portion of a wave track (preserving duration) by applying Fourier transform, then modifying coefficients, then inverse Fourier transform and overlap-add to reconstruct
 CspinlockIntended for locking of resources that are only lightly contended and locked for very short times, can be used with std::lock_guard
 CSplashDialogThe SplashDialog shows help information for Audacity when Audacity starts up
 CSqliteSampleBlockImplementation of SampleBlock using Sqlite database
 CSqliteSampleBlockFactoryImplementation of SampleBlockFactory using Sqlite database
 CStatefulPerTrackEffectBase class for many of the effects in Audacity
 CStatelessPerTrackEffectSimply the union of PerTrackEffect and StatelessEffectUIServices
 CStatusBarTargetDisplays messages from a command in a wxStatusBar
 CStringSettingSpecialization of Setting for strings
 CSubMenuListList of SubMenuListEntry
 CSubMenuListEntrySubMenuListEntry is a structure used by CommandManager
 CSyllableUsed in LyricsPanel, a Syllable gives positional information to be used with the bouncing ball effect
 CSyncLockChangeMessageSent after sync lock setting changes, with its new state
 CTaggedIdentifierTemplate generates different TaggedIdentifier classes that don't interconvert implicitly
 CTagsID3 Tags (for MP3)
 CTagsEditorDialogDerived from ExpandingToolBar, this dialog allows editing of Tags
 CTargetFactoryTargetFactory makes Command output targets. By default, we ignore progress updates but display all other messages directly
 CTaskProfileSimple class to keep track of one task that may be called multiple times
 CTesterParameterize for the type of visitor return
 CThemeBased on ThemeBase, Theme manages image and icon resources
 CThemeBaseTheme management - Image loading and saving
 CThemePrefsA PrefsPanel that configures dynamic loading of Theme icons and colours
 CTimeDialogDialog used to request a time value
 CTimerRecordDialogDialog for Timer Record, i.e., timed or long recording
 CTimeTrackA kind of Track used to 'warp time'
 CTimeWarperTransforms one point in time to another point. For example, a time stretching effect might use one to keep track of what happens to labels and split points in the input
 CTipWindowA wxPopupWindow used to give the numerical value of an LWSlider or ASlider
 CToCharsResultResult of the conversion, similar to std::to_chars_result
 CToolBarWorks with ToolManager and ToolDock to provide a dockable window in which buttons can be placed
 CToolBarAreaAn alternative to ToolBarFrame which can contain an ExpandingToolBar. ToolBarArea is used for a 'docked' ToolBar, ToolBarFrame for a floating one
 CToolBarArrangementSmall class that holds some layout information for an ExpandingToolBar
 CToolBarDialogA dialog based container for ExpandingToolBars providing modal based operations
 CToolBarFrameA miniframe based container for ExpandingToolBars providing modeless presentation
 CToolBarGrabberDraws the grabber for an ExpandingToolBar
 CToolBarResizerWxWindow that provides the resizer for a toolbar on the right hand side. Responsible for drawing the resizer appearance, resizing mouse events and constraining the resizing
 CToolDockA dynamic panel where a ToolBar can be docked
 CToolFrameClass ToolFrame
 CToolManagerClass ToolManager
 CToolsToolBarA kind of ToolBar with Tools on it
 CTrackAbstract base class for an object holding data associated with points on a time axis
 CTrackArtistThis class handles the actual rendering of WaveTracks (both waveforms and spectra), NoteTracks, LabelTracks and TimeTracks
 CTrackIdAn in-session identifier of track objects across undo states. It does not persist between sessions
 CTrackIterIterator over only members of a TrackList of the specified subtype, optionally filtered by a predicate; past-end value dereferenceable, to nullptr
 CTrackIterRangeRange between two TrackIters, usable in range-for statements, and with Visit member functions
 CTrackListA flat linked list of tracks supporting Add, Remove, Clear, and Contains, serialization of the list of tracks, event notifications
 CTrackListEventNotification of changes in individual tracks of TrackList, or of TrackList's composition
 CTrackPanelCoordinates updates and operations on the main part of the screen which contains multiple tracks
 CTrackPanelAxHelper to TrackPanel to give accessibility
 CTrackPanelDrawableDrawing interface common to cells, groups of cells, and temporary handles in CellularPanel
 CTrackPanelNodeThe TrackPanel is built up of nodes, subtrees of the CellularPanel's area Common base class for TrackPanelCell (leaf) and TrackPanelGroup (nonleaf)
 CTrackPanelResizeHandleConstructed from one channel, but changes height of all channels in a track
 CTracksBehaviorsPrefsA PrefsPanel for Tracks Behaviors settings
 CTrackShifterAbstract base class for policies to manipulate a track type for Time Shift
 CTrackSpectrumTransformerSubclass of SpectrumTransformer that rewrites a track
 CTracksPrefsA PrefsPanel for track display and behavior properties
 CTransactionScopeRAII for a database transaction, possibly nested
 CTransactionScopeImplAbstract base class for implementation of steps of TransactionScope
 CTranscriptionToolBarA kind of ToolBar used to help with analysing voice recordings
 CTranslatableStringHolds a msgid for the translation catalog; may also bind format arguments
 CUIHandleShort-lived drawing and event-handling object associated with a TrackPanelCell
 CUndoManagerMaintain a non-persistent list of states of the project, to support undo and redo commands
 CUndoRedoMessageType of message published by UndoManager
 CUndoStackElemHolds one item with description and time range for the UndoManager
 CUndoStateExtensionBase class for extra information attached to undo/redo states
 CUniqueChannelTrackGenerates overrides of channel-related functions
 CUnusableImportPluginUsed in place of a real plug in for plug ins that have not been compiled or are not available in this version of Audacity. Has enough information to identify the file extensions that would be used, but little else
 CUnwritableLocationErrorDialogAn error dialog about unwritable location, that allows to navigate to settings quickly
 CUpdateDataParserA class that parses update server data format
 CUpdateManagerA class that managing of updates
 CUpdateNoticeDialogDialog, that notifies the users about automatic updates checking
 CUpdatePopupDialogShow dialog window with update information for the user
 CURLschemeHandlerMessageA message that is invoked when a custom-scheme URL is passed to Audacity
 CUserExceptionCan be thrown when user cancels operations, as with a progress dialog. Delayed handler does nothing
 CUuidPlatform independent class for generating and parsing UUIDs
 CValidatorA Validator is an object which checks whether a wxVariant satisfies a certain criterion. This is a base validator which allows anything
 CValueIteratorA convenience for defining iterators that return rvalue types, so that they cooperate correctly with stl algorithms and std::reverse_iterator
 CValueRestorerSet a variable temporarily in a scope
 CVectorHolds a matrix of doubles and supports arithmetic operations, including Vector-Matrix operations. Used by InterpolateAudio
 CVersionIdA class, that supports base manipulation with version number
 CVersionPatchA structure that describes patch fields
 CVetoDialogHookCall before Show-ing certain dialogs; don't show if it returns true
 CVoiceKeyThis implements a voice key, detecting either the next "ON" or "OFF" point
 CVST3EffectObjects of this class connect Audacity with VST3 effects
 CVST3EffectBaseObjects of this class connect Audacity with VST3 effects
 CVST3EffectsModuleVST3Effect factory
 CVST3ParametersWindow"Plain" plugin UI, contains a list of parameter controls and values
 CVST3UtilsProvides a set of useful functions, used across the Audacity VST3 module
 CWarningDialogGives a warning message, that can be dismissed, with crucially the ability to not see similar warnings again for this session
 CWarningsPrefsA PrefsPanel to enable/disable certain warning messages
 CWaveClipThis allows multiple clips to be a part of one WaveTrack
 CWaveformPrefsA PrefsPanel for spectrum settings
 CWaveformSettingsWaveform settings, either for one track or as defaults
 CWaveTrackA Track that contains audio waveform data
 CWaveTrackAffordanceHandleImplements some features which are specific to Wave Clips
 CWaveTrackFactoryUsed to create or clone a WaveTrack, with appropriate context from the project that will own the track
 CWavPackImportFileHandleAn ImportFileHandle for WavPack data
 CWavPackImportPluginAn ImportPlugin for WavPack data
 CWideSampleSourceAdapts WideSampleSequence to the interface AudioGraph::Source
 CWindowAccessibleAn alternative to using wxWindowAccessible, which in wxWidgets 3.1.1 contained GetParent() which was incorrect
 CWrappedTypeUsed in type conversions, this wrapper for ints, strings, doubles and enums provides conversions between all the types. Functions that work on wrapped types can quickly be reused to work on any of these types. This cuts out a lot of repetitive code
 CwxArrayStringExExtend wxArrayString with move operations and construction and insertion fromstd::initializer_list
 CwxTreebookA wxTreebook is a class like wxNotebook, but not yet supported by wxWidgets 2.6.3
 CwxTreebookItemDataOne item in a wxTreebook. (I think)
 CwxWidgetsBasicUIAn implementation of BasicUI::Services in terms of the wxWidgets toolkit
 CwxWidgetsWindowPlacementWindow placement information for wxWidgetsBasicUI can be constructed from a wxWindow pointer
 CXMLAttributeValueViewA view into an attribute value. The class does not take the ownership of the data
 CXMLFileReaderReads a file and passes the results through an XMLTagHandler
 CXMLFileWriterWrapper to output XML data to files
 CXMLMethodRegistryBaseImplementation helper for ProjectFileIORegistry
 CXMLStringWriterWrapper to output XML data to strings
 CXMLTagHandlerThis class is an interface which should be implemented by classes which wish to be able to load and save themselves using XML files
 CXMLValueCheckerXMLValueChecker implements static bool methods for checking input values from XML files
 CXMLWriterBase class for XMLFileWriter and XMLStringWriter that provides the general functionality for creating XML in UTF8 encoding