from FrontendHeap.hpp:55
class FrontendHeap : public MVPHeap
{
public:
typedef meta::TypeList< MainMenuCarouselView,
meta::TypeList<MainMenuAnimatingButtonsView,
meta::TypeList<ProductPresenterView,
meta::TypeList<Game2048View,
meta::TypeList<Game2DView,
meta::TypeList<CustomControlsView,
meta::TypeList<GraphView,
meta::Nil
> > > > > > > ViewTypes;
typedef meta::select_type_maxsize< ViewTypes >::type MaxViewType;
typedef meta::TypeList< MainMenuPresenter,
meta::TypeList<ProductPresenterPresenter,
meta::TypeList<Game2048Presenter,
meta::TypeList<Game2DPresenter,
meta::TypeList<CustomControlsPresenter,
meta::TypeList<GraphPresenter,
meta::Nil
> > > > > > PresenterTypes;
typedef meta::select_type_maxsize< PresenterTypes >::type MaxPresenterType;
typedef meta::TypeList< NoTransition,
meta::Nil
> TransitionTypes;
typedef meta::select_type_maxsize< TransitionTypes >::type MaxTransitionType;
static FrontendHeap& getInstance()
{
static FrontendHeap instance;
return instance;
}
Partition< PresenterTypes, 1 > presenters;
Partition< ViewTypes, 1 > views;
Partition< TransitionTypes, 1 > transitions;
FrontendApplication app;
Model model;
private:
FrontendHeap()
: MVPHeap(presenters, views, transitions, app),
presenters(),
views(),
transitions(),
app(model, *this)
{
app.gotoMainMenuCarouselScreen();
}
};