51 inline bool containsAnyMainParamCollections() {
return expressionParamSetOffset; }
53 inline bool containsAnyParamCollectionsIncludingExpression() {
return summaries[0].paramCollection; }
55 Error setupWithPatching();
56 Error setupUnpatched();
59 void stealParamCollectionsFrom(ParamManager* other,
bool stealExpressionParams =
false);
60 Error cloneParamCollectionsFrom(ParamManager
const* other,
bool copyAutomation,
bool cloneExpressionParams =
false,
61 int32_t reverseDirectionWithLength = 0);
62 Error beenCloned(int32_t reverseDirectionWithLength = 0);
63 void forgetParamCollections();
64 void destructAndForgetParamCollections();
65 void destructAndForgetMainParamCollections();
66 bool ensureExpressionParamSetExists(
bool forDrum =
false);
68 inline int32_t getExpressionParamSetOffset() {
return expressionParamSetOffset; }
73 return &summaries[getExpressionParamSetOffset()];
81 if (!summaries[0].paramCollection) {
82 FREEZE_WITH_ERROR(
"E409");
88 if (!summaries[0].paramCollection) {
89 FREEZE_WITH_ERROR(
"E409");
95 if (!summaries[0].paramCollection) {
96 FREEZE_WITH_ERROR(
"E410");
102 if (!summaries[0].paramCollection) {
103 FREEZE_WITH_ERROR(
"E410");
105 return &summaries[0];
109 if (!summaries[1].paramCollection) {
110 FREEZE_WITH_ERROR(
"E411");
116 if (!summaries[1].paramCollection) {
117 FREEZE_WITH_ERROR(
"E411");
119 return &summaries[1];
123 if (!summaries[2].paramCollection) {
124 FREEZE_WITH_ERROR(
"E412");
126 return &summaries[2];
130 if (!summaries[2].paramCollection) {
131 FREEZE_WITH_ERROR(
"E412");
143 bool automationChanged,
bool paramAutomatedNow);
147 bool resonanceBackwardsCompatibilityProcessed;
148 uint8_t expressionParamSetOffset;
155class ParamManagerForTimeline final :
public ParamManager {
157 ParamManagerForTimeline();
164 bool shouldPingpong);
166 int32_t oldLength, int32_t reverseThisRepeatWithLength,
bool pingpongingGenerally);
168 bool maySetupPatching =
true);
171 bool didPingpong =
false,
bool mayInterpolate =
true);
175 void nudgeAutomationHorizontallyAtPos(int32_t pos, int32_t offset, int32_t lengthBeforeLoop,
Action* action,
177 bool nudgeMPE, int32_t moveMPEDataWithinRegionLength = 0);
180 void ensureSomeParamCollections();
181 bool mightContainAutomation();
183 ParamManagerForTimeline* toForTimeline()
override;
185 int32_t ticksTilNextEvent;
186 int32_t ticksSkipped;
Definition model_stack.h:227