| Nmostly_harmless | The top-level namespace, contains all things plugin-related |
| Ncore | Contains core functionality of the framework |
| CISharedState | Base class for the plugin's shared state |
| CInitContext | Container for context passed to IEngine::initialise |
| CProcessContext | Container for context passed to IEngine::process |
| CIEngine | Interface for the plugin's audio processing functionality |
| CIEditor | Interface for the plugin's gui functionality |
| CIPluginEntry | Interface for registering the user's subclasses with the framework |
| Ninternal | Framework-Developer-Only documentation, for specific mechanisms within the framework |
| CPluginBase | The internal representation of a Plugin, more akin to JUCE's Processor |
| Nevents | Contains classes and functions related to events |
| Nmidi | |
| CNoteOn | |
| CNoteOff | |
| CPolyAftertouch | |
| CControlChange | |
| CProgramChange | |
| CChannelAftertouch | |
| CPitchWheel | |
| CInputEventContext | Trivially copyable wrapper around the clap-api provided clap_input_events queue, for easier iterating |
| CWebEvent | An convenience wrapper around an event to send to a webview |
| CProcToGuiParamEvent | POD type representing a param change event from the host, to be passed to the gui |
| CGuiToProcParamEvent | POD type representing a param change event from the gui, to be passed to the audio thread |
| Ngui | Contains GUI related classes & functions |
| CWebviewBase | Convenience wrapper layer implementing the creation and management of a choc::ui::WebView. Still abstract, as setParams is left up to the user to implement in a way they see fit |
| CResource | Tiny container struct for web resources |
| COptions | Contains a set of options to construct the internal webview with |
| CWebviewEditor | An opinionated subclass of WebviewBase, providing default impls for bidirectional comms |
| CColour | Convenience struct representing a colour |
| Nutils | Contains general purpose utility classes & functions |
| CTaskThread | |
| CTimer | |
| COnScopeExit | Functor to run some code when this variable goes out of scope |
| CProxy | Helper class for managing lifetimes of captured references in a lambda |
| CNoDenormals | RAII mechanism to disable denormals while an instance of this class is alive. Supports SSE or NEON instruction sets, will have no effect if neither of those are present. Goes without saying, but doesn't allocate (I deliberately didn't use pImpl for this reason) |
| CLogging | |
| CVisitor | Util for use with std::visit to avoid a bunch of if constexpr(...)s |
| CHostInfoView | Contains some strings to help identify the host currently running your plugin |
| Ndata | Contains classes and functions related to data management |
| CDatabasePropertyWatcher | A convenience class for responding to changes in a databaseState, potentially fired from other processes. Watches a given property's field corresponding to type T for changes, and fires a callback on change. Note that callback will run on a background timer thread, so if you need thread safety, be sure to utilise ISharedState::callOnMessageThread from your callback lambda |
| CTimeSignature | Convenience struct holding the numerator and denominator of a time signature. Two ints in a trenchcoat |
| CLoopInfo | Convenience struct holding relevant positional info about a loop the host may currently be running |
| CTransportState | Contains info from the host about the current transport state |
| CParameterID | Convenience class for generating a parameter id |
| CParameter | Container class for a single parameter |