38 const String& namePrefix =
"#");
65 bool addKwidget(
Kwidget* kwidget,
bool useEndParams =
false,
bool isChildKwidget =
false);
78 void addConnection(
const String& sourceID,
const String& destinationID);
108 ValueTree
addModulation(
const String& sourceID,
int modulatorIdx,
const String& destinationID,
119 void removeModulation(
const String& sourceID,
int modulatorIdx,
const String& destinationID,
120 const String& paramID);
133 void setModulationDepth(
const String& sourceID,
int modulatorIdx,
const String& destinationID,
134 const String& paramID,
float depth);
144 void setModulationPolarity(
const String& src,
int modulatorIdx,
const String& dest,
const String& paramID,
269 String
generateKwidgetID(
const String& kwidgetType,
const String& idModifier =
"",
int typeInstanceLimit = 0);
272 UndoManager* undoManager =
nullptr);
287 bool registerKwidget(juce::ValueTree& kwidget, StringArray& kwidgetIDArray,
bool repairEnabled);
302 ValueTree
getModulationTree(
const String& sourceID,
int modulatorIdx,
const String& destinationID,
303 const String& paramID);
Polarity
Definition KAttachment.h:120
@ Bipolar
Definition KAttachment.h:121
Holds the overall state of a plugin that uses Kwidgets, including parameters, custom parameters,...
Definition ParameterManager.h:25
bool flagUsedIndexes(juce::ValueTree &kwidget, bool repairEnabled)
Definition ParameterManager.cpp:530
void removeModulationInvolving(const String &kwidgetID)
Definition ParameterManager.cpp:221
void setGenericParameterValue(ValueTree ¶mTreeGeneric, int index, var newValue)
Definition ParameterManager.cpp:609
ValueTree m_kwidgetTree
Definition ParameterManager.h:314
bool registerKwidget(juce::ValueTree &kwidget, StringArray &kwidgetIDArray, bool repairEnabled)
Definition ParameterManager.cpp:482
int m_numDigitsInGenericParamName
Definition ParameterManager.h:324
const ValueTree & getConnectionTree()
Definition ParameterManager.h:163
const ValueTree & getKwidgetsTree()
Definition ParameterManager.cpp:260
void clearModulation()
Definition ParameterManager.cpp:233
ValueTree m_processorTree
Definition ParameterManager.h:313
std::vector< GenericParameter * > m_genericParameters
Definition ParameterManager.h:310
void detachParameters(Kwidget *kwidget, const ValueTree &kwidgetTree)
Definition ParameterManager.cpp:774
bool validateKwidgetState(ValueTree &kwidgetTree, ValueTree ¶mTree, bool repairEnabled)
Definition ParameterManager.cpp:618
Kwidget * getKwidget(const String &kwidgetID)
Definition ParameterManager.cpp:35
void removeKwidget(const String &kwidgetID)
Definition ParameterManager.cpp:82
void resetUndoManager()
Definition ParameterManager.cpp:309
void setCurrentState(const ValueTree &newState)
Definition ParameterManager.cpp:265
std::vector< bool > m_linkIndexAllocation
Definition ParameterManager.h:281
ValueTree m_parentTree
Definition ParameterManager.h:312
AudioProcessor & m_processor
Definition ParameterManager.h:307
static const StringArray StaticConnectionDestinations
Contains a list of the names of all the static connection destinations.
Definition ParameterManager.h:278
void clearConnections()
Definition ParameterManager.cpp:144
bool initialiseLinkIndexUsageTable(const ValueTree &state, bool repairEnabled)
Definition ParameterManager.cpp:570
const String m_parameterNamePrefix
Definition ParameterManager.h:323
int getUnusedLinkIndex()
Definition ParameterManager.cpp:595
void setModulationDepth(const String &sourceID, int modulatorIdx, const String &destinationID, const String ¶mID, float depth)
Definition ParameterManager.cpp:209
void attachParameters(Kwidget *kwidget, const ValueTree &kwidgetTree)
Definition ParameterManager.cpp:761
UndoManager m_undoManager
Definition ParameterManager.h:308
ValueTree m_connectionTree
Definition ParameterManager.h:315
ValueTree & getState()
Definition ParameterManager.cpp:256
String generateKwidgetID(const String &kwidgetType, const String &idModifier="", int typeInstanceLimit=0)
Definition ParameterManager.cpp:452
std::map< String, Kwidget * > m_activeKwidgets
Definition ParameterManager.h:320
const int m_numGenericParameters
Definition ParameterManager.h:322
void clearModulationExcept(const String &allowedSource)
Definition ParameterManager.cpp:235
void addNonStaticConnections(juce::ValueTree &newConnectionTree)
Definition ParameterManager.cpp:285
void clearKwidgets()
Definition ParameterManager.cpp:97
void addConnection(const String &sourceID, const String &destinationID)
Definition ParameterManager.cpp:107
ValueTree m_modulationTree
Definition ParameterManager.h:316
void removeModulation(const String &sourceID, int modulatorIdx, const String &destinationID, const String ¶mID)
Definition ParameterManager.cpp:194
void copyModulationTree(ValueTree modTree)
Definition ParameterManager.cpp:803
void addCustomDataNode(const ValueTree &customDataNode)
Definition ParameterManager.cpp:324
void debugState() const
Definition ParameterManager.cpp:322
ValueTree createKwidgetTree(Kwidget *k, bool useEndParams=false)
Definition ParameterManager.cpp:423
void setModulationPolarity(const String &src, int modulatorIdx, const String &dest, const String ¶mID, KAttachment::Polarity polarity)
Definition ParameterManager.cpp:215
AudioProcessor & getProcessor()
Definition ParameterManager.cpp:303
void addGenericParameters()
Definition ParameterManager.cpp:331
bool connectionExists(const String &sourceID, const String &destID)
Definition ParameterManager.cpp:146
std::vector< int > findGenericParameters(int numParametersToLink, bool useEndParams)
Definition ParameterManager.cpp:345
ValueTree addModulation(const String &sourceID, int modulatorIdx, const String &destinationID, const String ¶mID, float depth=DefaultModDepth, KAttachment::Polarity=KAttachment::Polarity::Bipolar)
Definition ParameterManager.cpp:159
bool addKwidget(Kwidget *kwidget, bool useEndParams=false, bool isChildKwidget=false)
Add a new Kwidget to the state. This will add the kwidget to the internal state ValueTree and it's pa...
Definition ParameterManager.cpp:51
const ValueTree & getModulationTree()
Definition ParameterManager.cpp:258
bool initialiseKwidgetIDUsageTable(const ValueTree &state, bool repairEnabled)
Definition ParameterManager.cpp:508
const bool isAStaticConnectionDestination(const String &destName)
Returns true if the destName you supplied is the name of a static connection destination.
Definition ParameterManager.h:170
UndoManager * getUndoManager()
Definition ParameterManager.cpp:307
void removeConnection(const String &sourceID, const String &destinationID)
Definition ParameterManager.cpp:116
ValueTree m_customDataTree
Definition ParameterManager.h:317
void removeConnectionsInvolving(const String &kwidgetID)
Definition ParameterManager.cpp:132
AudioProcessorValueTreeState & getProcessorState()
Definition ParameterManager.cpp:305
std::map< Kwidget *, ValueTree > m_kwidgetData
Definition ParameterManager.h:319
static const float OnOffThreshold
The threshold at which a toggle, or "on/off" parameter should change from on to off stage.
Definition ParameterManager.h:45
ValueTree & getCustomDataTree()
Definition ParameterManager.cpp:329
static Result rewriteCustomParameterValue(ValueTree &kwidgetTree, const var ¶meterID, const var &newValue, UndoManager *undoManager=nullptr)
AudioProcessorValueTreeState m_vts
Definition ParameterManager.h:309
static const float DefaultModDepth
Definition ParameterManager.h:40
ParameterManager(AudioProcessor &processor, int numParams=1000, const String &namePrefix="#")
Definition ParameterManager.cpp:6
Definition AirAbsorptionFilter.cpp:2