bool GraphicEngine::initModels()
{
    ImportModelData(&(this->BLACK_PlayerData), rbw::Graphic::ModelPath + rbw::Graphic::BLACK_TANK_IMAGE_FILENAME,
                    rbw::GameParam::PLAYER_HITBOX_RADIUS);

    ImportModelData(&(this->WHITE_PlayerData), rbw::Graphic::ModelPath + rbw::Graphic::WHITE_TANK_IMAGE_FILENAME,
                    rbw::GameParam::PLAYER_HITBOX_RADIUS);

    ImportModelData(&(this->HomingMissileData), rbw::Graphic::ModelPath + rbw::Graphic::HOMING_MISSILE_IMAGE_FILENAME,
                    rbw::GameParam::HOMING_MISSILE_HITBOX_RADIUS);

    ImportModelData(&(this->BouncingBombData), rbw::Graphic::ModelPath + rbw::Graphic::BOUNCING_BOMB_IMAGE_FILENAME,
                    rbw::GameParam::BOUNCING_BOMB_HITBOX_RADIUS);

    ImportModelData(&(this->GrenadeData), rbw::Graphic::ModelPath + rbw::Graphic::GRENADE_IMAGE_FILENAME,
                    rbw::GameParam::GRENADE_HITBOX_RADIUS);
    return true;
}
Beispiel #2
0
 void GenericModel::ImportModelData(Int_t parameter_num, RooArgList* plist)
 {
    // Import all model datasets corresponding to the defined parameters, ranges & binnings
    RooArgList PLIST;
    if (plist) PLIST.addClone(*plist);
    RooRealVar* par = dynamic_cast<RooRealVar*>(fParameters.at(parameter_num));
    RooAbsBinning& bins = par->getBinning();
    Int_t N = bins.numBins();
    RooRealVar* par_in_list = (RooRealVar*)PLIST.find(par->GetName());
    if (!par_in_list) {
       PLIST.addClone(RooRealVar(par->GetName(), par->GetTitle(), 0.));
       par_in_list = (RooRealVar*)PLIST.find(par->GetName());
    }
    for (int i = 0; i < N; i++) {
       par_in_list->setMax(bins.binHigh(i));
       par_in_list->setMin(bins.binLow(i));
       par_in_list->setVal(bins.binCenter(i));
       if ((parameter_num + 1) < GetNumberOfParameters())
          ImportModelData(parameter_num + 1, &PLIST);
       else {
          AddModelData(PLIST, GetModelDataSet(PLIST));
       }
    }
 }