[apps/probability] Make law model an abstract class with inheritance for

all specific laws (binomial...)

Change-Id: Ida6d5bfb7a3fbfc288393cd2f7e9e9b934798073
This commit is contained in:
Émilie Feral
2016-12-14 11:16:11 +01:00
parent 8c284ba34f
commit 2a79d8bfd9
29 changed files with 885 additions and 472 deletions

View File

@@ -11,8 +11,8 @@ ParametersController::ContentView::ContentView(Responder * parentResponder, Sele
ParametersController * parameterController = (ParametersController *) context;
CalculationController * calculationController = parameterController->calculationController();
calculationController->selectSubview(1);
Law * law = calculationController->law();
law->setCalculationType(Law::CalculationType::LeftIntegral);
Calculation * calculation = calculationController->calculation();
calculation->setType(Calculation::Type::LeftIntegral);
StackViewController * stack = parameterController->stackController();
stack->updateTitle();
stack->push(calculationController);
@@ -68,12 +68,12 @@ void ParametersController::ContentView::layoutSubviews() {
/* Parameters Controller */
ParametersController::ParametersController(Responder * parentResponder, Law * law) :
ParametersController::ParametersController(Responder * parentResponder) :
FloatParameterController(parentResponder),
m_contentView(ContentView(this, &m_selectableTableView)),
m_law(law),
m_law(nullptr),
m_buttonSelected(false),
m_calculationController(CalculationController(nullptr, law))
m_calculationController(CalculationController(nullptr))
{
for (int k = 0; k < k_maxNumberOfCells; k++) {
m_menuListCell[k].setParentResponder(&m_selectableTableView);
@@ -97,6 +97,11 @@ const char * ParametersController::title() const {
return m_titleBuffer;
}
void ParametersController::setLaw(Law * law) {
m_law = law;
m_calculationController.setLaw(law);
}
void ParametersController::updateTitle() {
int currentChar = 0;
for (int index = 0; index < m_law->numberOfParameter(); index++) {