VCV Rack API v2
Loading...
Searching...
No Matches
rack::Model Struct Reference

Type information for a module. More...

#include <Model.hpp>

Collaboration diagram for rack::Model:
[legend]

Public Member Functions

virtual ~Model ()
virtual engine::ModulecreateModule ()
 Creates a Module.
virtual app::ModuleWidgetcreateModuleWidget (engine::Module *m)
 Creates a ModuleWidget with a Module attached.
void fromJson (json_t *rootJ)
std::string getFullName ()
 Returns the branded name of the model, e.g.
std::string getFactoryPresetDirectory ()
std::string getUserPresetDirectory ()
std::string getManualUrl ()
 Returns the module or plugin manual URL, whichever exists.
void appendContextMenu (ui::Menu *menu, bool inBrowser=false)
 Appends items to menu with useful Model information.
bool isFavorite ()
void setFavorite (bool favorite)

Public Attributes

Pluginplugin = NULL
std::string slug
 Must be unique.
std::string name
 Human readable name for your model, e.g.
std::list< int > tagIds
 List of tag IDs representing the function(s) of the module.
std::string description
 A one-line summary of the module's purpose.
std::string manualUrl
 The manual of the module.
std::string modularGridUrl
bool hidden = false
 Hides model from the Module Browser but able to be loaded from a patch file.

Detailed Description

Type information for a module.

Factory for Module and ModuleWidget.

Constructor & Destructor Documentation

◆ ~Model()

virtual rack::plugin::Model::~Model ( )
inlinevirtual

Member Function Documentation

◆ createModule()

Creates a Module.

◆ createModuleWidget()

Creates a ModuleWidget with a Module attached.

Module may be NULL.

◆ fromJson()

void rack::plugin::Model::fromJson ( json_t * rootJ)

◆ getFullName()

Returns the branded name of the model, e.g.

VCV VCO-1.

◆ getFactoryPresetDirectory()

◆ getUserPresetDirectory()

◆ getManualUrl()

Returns the module or plugin manual URL, whichever exists.

◆ appendContextMenu()

void rack::plugin::Model::appendContextMenu ( ui::Menu * menu,
bool inBrowser = false )

Appends items to menu with useful Model information.

Enable inBrowser to show Module Browser key commands.

◆ isFavorite()

◆ setFavorite()

void rack::plugin::Model::setFavorite ( bool favorite)

Member Data Documentation

◆ plugin

◆ slug

Must be unique.

Used for saving patches. Never change this after releasing your module. The model slug must be unique within your plugin, but it doesn't need to be unique among different plugins.

◆ name

Human readable name for your model, e.g.

"Voltage Controlled Oscillator"

◆ tagIds

List of tag IDs representing the function(s) of the module.

Tag IDs are not part of the ABI and may change at any time.

◆ description

A one-line summary of the module's purpose.

◆ manualUrl

The manual of the module.

HTML, PDF, or GitHub readme/wiki are fine.

◆ modularGridUrl

◆ hidden

Hides model from the Module Browser but able to be loaded from a patch file.

Useful for deprecating modules without breaking old patches.


The documentation for this struct was generated from the following file:
  • /home/vortico/src/vcv/Rack2/include/plugin/Model.hpp