@@ -72,6 +72,98 @@ bool Generator::GeneratorImpl::untrackVariable(const AnalyserVariablePtr &variab
7272 return doTrackVariable (variable, false );
7373}
7474
75+ bool Generator::GeneratorImpl::doTrackAllConstants (const AnalyserModelPtr &model, bool tracked)
76+ {
77+ if (model == nullptr ) {
78+ return false ;
79+ }
80+
81+ for (const auto &constant : model->constants ()) {
82+ doTrackVariable (constant, tracked);
83+ }
84+
85+ return true ;
86+ }
87+
88+ bool Generator::GeneratorImpl::trackAllConstants (const AnalyserModelPtr &model)
89+ {
90+ return doTrackAllConstants (model, true );
91+ }
92+
93+ bool Generator::GeneratorImpl::untrackAllConstants (const AnalyserModelPtr &model)
94+ {
95+ return doTrackAllConstants (model, false );
96+ }
97+
98+ bool Generator::GeneratorImpl::doTrackAllComputedConstants (const AnalyserModelPtr &model, bool tracked)
99+ {
100+ if (model == nullptr ) {
101+ return false ;
102+ }
103+
104+ for (const auto &computedConstant : model->computedConstants ()) {
105+ doTrackVariable (computedConstant, tracked);
106+ }
107+
108+ return true ;
109+ }
110+
111+ bool Generator::GeneratorImpl::trackAllComputedConstants (const AnalyserModelPtr &model)
112+ {
113+ return doTrackAllComputedConstants (model, true );
114+ }
115+
116+ bool Generator::GeneratorImpl::untrackAllComputedConstants (const AnalyserModelPtr &model)
117+ {
118+ return doTrackAllComputedConstants (model, false );
119+ }
120+
121+ bool Generator::GeneratorImpl::doTrackAllAlgebraic (const AnalyserModelPtr &model, bool tracked)
122+ {
123+ if (model == nullptr ) {
124+ return false ;
125+ }
126+
127+ for (const auto &algebraic : model->algebraic ()) {
128+ doTrackVariable (algebraic, tracked);
129+ }
130+
131+ return true ;
132+ }
133+
134+ bool Generator::GeneratorImpl::trackAllAlgebraic (const AnalyserModelPtr &model)
135+ {
136+ return doTrackAllAlgebraic (model, true );
137+ }
138+
139+ bool Generator::GeneratorImpl::untrackAllAlgebraic (const AnalyserModelPtr &model)
140+ {
141+ return doTrackAllAlgebraic (model, false );
142+ }
143+
144+ bool Generator::GeneratorImpl::doTrackAllExternals (const AnalyserModelPtr &model, bool tracked)
145+ {
146+ if (model == nullptr ) {
147+ return false ;
148+ }
149+
150+ for (const auto &external : model->externals ()) {
151+ doTrackVariable (external, tracked);
152+ }
153+
154+ return true ;
155+ }
156+
157+ bool Generator::GeneratorImpl::trackAllExternals (const AnalyserModelPtr &model)
158+ {
159+ return doTrackAllExternals (model, true );
160+ }
161+
162+ bool Generator::GeneratorImpl::untrackAllExternals (const AnalyserModelPtr &model)
163+ {
164+ return doTrackAllExternals (model, false );
165+ }
166+
75167bool Generator::GeneratorImpl::doTrackAllVariables (const AnalyserModelPtr &model, bool tracked)
76168{
77169 if (model == nullptr ) {
@@ -2116,6 +2208,46 @@ bool Generator::untrackVariable(const AnalyserVariablePtr &variable)
21162208 return mPimpl ->untrackVariable (variable);
21172209}
21182210
2211+ bool Generator::trackAllConstants (const AnalyserModelPtr &model)
2212+ {
2213+ return mPimpl ->trackAllConstants (model);
2214+ }
2215+
2216+ bool Generator::untrackAllConstants (const AnalyserModelPtr &model)
2217+ {
2218+ return mPimpl ->untrackAllConstants (model);
2219+ }
2220+
2221+ bool Generator::trackAllComputedConstants (const AnalyserModelPtr &model)
2222+ {
2223+ return mPimpl ->trackAllComputedConstants (model);
2224+ }
2225+
2226+ bool Generator::untrackAllComputedConstants (const AnalyserModelPtr &model)
2227+ {
2228+ return mPimpl ->untrackAllComputedConstants (model);
2229+ }
2230+
2231+ bool Generator::trackAllAlgebraic (const AnalyserModelPtr &model)
2232+ {
2233+ return mPimpl ->trackAllAlgebraic (model);
2234+ }
2235+
2236+ bool Generator::untrackAllAlgebraic (const AnalyserModelPtr &model)
2237+ {
2238+ return mPimpl ->untrackAllAlgebraic (model);
2239+ }
2240+
2241+ bool Generator::trackAllExternals (const AnalyserModelPtr &model)
2242+ {
2243+ return mPimpl ->trackAllExternals (model);
2244+ }
2245+
2246+ bool Generator::untrackAllExternals (const AnalyserModelPtr &model)
2247+ {
2248+ return mPimpl ->untrackAllExternals (model);
2249+ }
2250+
21192251bool Generator::trackAllVariables (const AnalyserModelPtr &model)
21202252{
21212253 return mPimpl ->trackAllVariables (model);
0 commit comments