MCPcopy Create free account
hub / github.com/DreamSourceLab/DSView / default_factor

Method default_factor

DSView/pv/data/mathstack.cpp:203–231  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

201}
202
203uint64_t MathStack::default_factor()
204{
205 uint64_t value = 0;
206 const uint64_t factor1 = _dsoSig1->get_vDial()->get_factor();
207 const uint64_t factor2 = _dsoSig2->get_vDial()->get_factor();
208 assert(factor1 > 0);
209 assert(factor2 > 0);
210 const uint64_t v1 = _dsoSig1->get_vDial()->get_value() * factor1;
211 const uint64_t v2 = _dsoSig2->get_vDial()->get_value() * factor2;
212
213 switch(_type) {
214 case MATH_ADD:
215 case MATH_SUB:
216 value = v1 > v2 ? factor1 : factor2;
217 break;
218 case MATH_MUL:
219 value = factor1 * factor2;
220 break;
221 case MATH_DIV:
222 value = factor1 / factor2;
223 break;
224 }
225
226 if (value == 0){
227 value = 1;
228 }
229
230 return value;
231}
232
233view::dslDial* MathStack::get_vDial()
234{

Callers 1

update_vDialMethod · 0.80

Calls 3

get_factorMethod · 0.45
get_vDialMethod · 0.45
get_valueMethod · 0.45

Tested by

no test coverage detected