MhpLoadingManager::MhpLoadingManager() : hibernatedCount(0), loadingApp(0) { preloader = new MhpCarouselPreloader(); watch = new MhpChannelWatch(preloader); selectionProvider = new MhpServiceSelectionProvider(watch); }
class MhpLoadingManager : public ApplicationInfo::cApplicationStatus { public: ~MhpLoadingManager(); static MhpLoadingManager *getManager(); static void CleanUp();  void Load(ApplicationInfo::cApplication *a); void Stop(ApplicationInfo::cApplication *a); LoadingState getState(ApplicationInfo::cApplication *a); SmartPtr<Cache::Cache> getCache(ApplicationInfo::cApplication *a);  void OnceASecond(ProgressIndicator *pi); protected: MhpLoadingManager();  virtual void NewApplication(ApplicationInfo::cApplication *app); virtual void ApplicationRemoved(ApplicationInfo::cApplication *app); private:  static MhpLoadingManager *s_self; typedef std::map<ApplicationInfo::cApplication *, MhpCarouselLoader *> AppMap; AppMap apps; MhpChannelWatch *watch; MhpCarouselPreloader *preloader; int hibernatedCount; cMutex mutex; MhpCarouselLoader *loadingApp; };
MhpLoadingManager::MhpLoadingManager() : hibernatedCount(0), loadingApp(0) {   preloader = new MhpCarouselPreloader();   watch = new MhpChannelWatch(preloader);   selectionProvider = new MhpServiceSelectionProvider(watch);}