bool MetaKeyManager::handleEvent(QEvent* event) { if (QEvent::KeyPress != event->type() && QEvent::KeyRelease != event->type()) return false; QKeyEvent *keyEvent = static_cast<QKeyEvent*> (event); // Preprocess the event to handle clipboard operations. // Filter c, x, v keys from ever getting into webkit so cut/copy/paste work // for non-frameworked text edit fields. // QT5_TODO: Qt::ExternalKeyboardModifier not present in Qt5 #if (QT_VERSION < QT_VERSION_CHECK(5, 0, 0)) static Qt::KeyboardModifiers commandModifier = (Qt::ControlModifier|Qt::ExternalKeyboardModifier); #else static Qt::KeyboardModifiers commandModifier = (Qt::ControlModifier); #endif if (keyEvent->modifiers() & Qt::MetaModifier || (keyEvent->modifiers() & commandModifier) == commandModifier) { if (keyEvent->key() == Qt::Key_C) { if (keyEvent->type() == QEvent::KeyPress) { Q_EMIT signalCopy(); } return true; } else if (keyEvent->key() == Qt::Key_X) { if (keyEvent->type() == QEvent::KeyPress) { Q_EMIT signalCut(); } return true; } else if (keyEvent->key() == Qt::Key_V) { if (keyEvent->type() == QEvent::KeyPress) { Q_EMIT signalPaste(); } return true; } else if (keyEvent->key() == Qt::Key_A) { // NOTE: SelectAll should be detected and triggered by webkit, // This is a workaround until we move to QtWebKit if (keyEvent->type() == QEvent::KeyPress) { Q_EMIT signalSelectAll(); } return true; } } return false; }
void trainBDT(void) { // Open input file and get tree TFile *infile = new TFile("l3bdt.root"); TTree *l3tree = (TTree*)infile->Get("l3tree"); if(l3tree == NULL){ cout << "Couldn't open \"l3bdt.root\"!" << endl; return; } // Open output root file (for TMVA) TFile *outfile = new TFile("l3BDT_out.root", "RECREATE"); TMVA::Factory *fac = new TMVA::Factory("L3",outfile,""); // Specify input tree that contains both signal and background TCut signalCut("is_good==1"); TCut backgroundCut("is_good==0"); fac->SetInputTrees(l3tree, signalCut, backgroundCut); // Add variables fac->AddVariable("Nstart_counter", 'I'); fac->AddVariable("Ntof", 'I'); fac->AddVariable("Nbcal_points", 'I'); fac->AddVariable("Nbcal_clusters", 'I'); fac->AddVariable("Ebcal_points", 'F'); fac->AddVariable("Ebcal_clusters", 'F'); fac->AddVariable("Nfcal_clusters", 'I'); fac->AddVariable("Efcal_clusters", 'F'); fac->AddVariable("Ntrack_candidates", 'I'); fac->AddVariable("Ptot_candidates", 'F'); TCut preSelectCut(""); fac->PrepareTrainingAndTestTree(preSelectCut,""); fac->BookMethod(TMVA::Types::kBDT, "BDT", ""); fac->TrainAllMethods(); fac->TestAllMethods(); fac->EvaluateAllMethods(); delete fac; outfile->Close(); delete outfile; }