UIDownloaderExtensionPack::UIDownloaderExtensionPack() { /* Prepare instance: */ if (!m_spInstance) m_spInstance = this; /* Prepare source/target: */ QString strExtPackUnderscoredName(QString(GUI_ExtPackName).replace(' ', '_')); QString strTemplateSourcePath("http://download.virtualbox.org/virtualbox/%1/"); QString strTemplateSourceName(QString("%1-%2.vbox-extpack").arg(strExtPackUnderscoredName)); QString strSourcePath(strTemplateSourcePath.arg(vboxGlobal().vboxVersionStringNormalized())); QString strSourceName(strTemplateSourceName.arg(vboxGlobal().vboxVersionStringNormalized())); QString strSource(strSourcePath + strSourceName); QString strTargetPath(vboxGlobal().homeFolder()); QString strTargetName(strSourceName); QString strTarget(QDir(strTargetPath).absoluteFilePath(strTargetName)); /* Set source/target: */ setSource(strSource); setTarget(strTarget); }
// // ======================================================================================================================= // Map_ImportFile Timo 09/01/99:: called by CXYWnd::Paste & Map_ImportFile if Map_ImportFile ( prefab ), the buffer // may contain brushes in old format ( conversion needed ) // ======================================================================================================================= // void Map_ImportBuffer(char *buf, bool renameEntities) { entity_t *ent; brush_t *b = NULL; CPtrArray ptrs; Select_Deselect(); Undo_Start("import buffer"); g_qeglobals.d_parsed_brushes = 0; if (buf) { CMapStringToString mapStr; StartTokenParsing(buf); g_qeglobals.d_num_entities = 0; // // Timo will be used in Entity_Parse to detect if a conversion between brush // formats is needed // g_qeglobals.bNeedConvert = false; g_qeglobals.bOldBrushes = false; g_qeglobals.bPrimitBrushes = false; g_qeglobals.mapVersion = 1.0; if (GetToken(true)) { if (stricmp(token, "Version") == 0) { GetToken(false); g_qeglobals.mapVersion = atof(token); common->Printf("Map version: %1.2f\n", g_qeglobals.mapVersion); } else { UngetToken(); } } idDict RemappedNames; // since I can't use "map <string, string>"... sigh. So much for STL... while (1) { // // use the selected brushes list as it's handy ent = Entity_Parse (false, // &selected_brushes); // ent = Entity_Parse(false, &active_brushes); if (!ent) { break; } // end entity for undo Undo_EndEntity(ent); // end brushes for undo for (b = ent->brushes.onext; b && b != &ent->brushes; b = b->onext) { Undo_EndBrush(b); } if (!strcmp(ValueForKey(ent, "classname"), "worldspawn")) { // world brushes need to be added to the current world entity b = ent->brushes.onext; while (b && b != &ent->brushes) { brush_t *bNext = b->onext; Entity_UnlinkBrush(b); Entity_LinkBrush(world_entity, b); ptrs.Add(b); b = bNext; } } else { // the following bit remaps conflicting target/targetname key/value pairs CString str = ValueForKey(ent, "target"); CString strKey; CString strTarget(""); if (str.GetLength() > 0) { if (FindEntity("target", str.GetBuffer(0))) { if (!mapStr.Lookup(str, strKey)) { idStr key; UniqueTargetName(key); strKey = key; mapStr.SetAt(str, strKey); } strTarget = strKey; SetKeyValue(ent, "target", strTarget.GetBuffer(0)); } } /* * str = ValueForKey(ent, "name"); if (str.GetLength() > 0) { if * (FindEntity("name", str.GetBuffer(0))) { if (!mapStr.Lookup(str, strKey)) { * UniqueTargetName(strKey); mapStr.SetAt(str, strKey); } Entity_SetName(ent, * strKey.GetBuffer(0)); } } */ CString cstrNameOld = ValueForKey(ent, "name"); Entity_Name(ent, renameEntities); CString cstrNameNew = ValueForKey(ent, "name"); if (cstrNameOld != cstrNameNew) { RemappedNames.Set(cstrNameOld, cstrNameNew); } // // if (strTarget.GetLength() > 0) SetKeyValue(ent, "target", // strTarget.GetBuffer(0)); // add the entity to the end of the entity list // ent->next = &entities; ent->prev = entities.prev; entities.prev->next = ent; entities.prev = ent; g_qeglobals.d_num_entities++; for (b = ent->brushes.onext; b != &ent->brushes; b = b->onext) { ptrs.Add(b); } } } // now iterate through the remapped names, and see if there are any target-connections that need remaking... // // (I could probably write this in half the size with STL, but WTF, work with what we have...) // int iNumKeyVals = RemappedNames.GetNumKeyVals(); for (int iKeyVal=0; iKeyVal < iNumKeyVals; iKeyVal++) { const idKeyValue *pKeyVal = RemappedNames.GetKeyVal( iKeyVal ); LPCSTR psOldName = pKeyVal->GetKey().c_str(); LPCSTR psNewName = pKeyVal->GetValue().c_str(); entity_t *pEntOld = FindEntity("name", psOldName); // original ent we cloned from entity_t *pEntNew = FindEntity("name", psNewName); // cloned ent if (pEntOld && pEntNew) { CString cstrTargetNameOld = ValueForKey(pEntOld, "target"); if (!cstrTargetNameOld.IsEmpty()) { // ok, this ent was targeted at another ent, so it's clone needs updating to point to // the clone of that target, so... // entity_t *pEntOldTarget = FindEntity("name", cstrTargetNameOld); if ( pEntOldTarget ) { LPCSTR psNewTargetName = RemappedNames.GetString( cstrTargetNameOld ); if (psNewTargetName && psNewTargetName[0]) { SetKeyValue(pEntNew, "target", psNewTargetName); } } } } } } // // ::ShowWindow(g_qeglobals.d_hwndEntity, FALSE); // ::LockWindowUpdate(g_qeglobals.d_hwndEntity); // g_bScreenUpdates = false; for (int i = 0; i < ptrs.GetSize(); i++) { Brush_Build(reinterpret_cast < brush_t * > (ptrs[i]), true, false); Select_Brush(reinterpret_cast < brush_t * > (ptrs[i]), true, false); } // ::LockWindowUpdate(NULL); g_bScreenUpdates = true; ptrs.RemoveAll(); // // reset the "need conversion" flag conversion to the good format done in // Map_BuildBrushData // g_qeglobals.bNeedConvert = false; Sys_UpdateWindows(W_ALL); // Sys_MarkMapModified(); mapModified = 1; Undo_End(); }
void HHRImpl::populateResultVector() { char line[500]; int counter = 0; string inFilename(inputFileLocation); inFilename += "/"; inFilename += rootName; inFilename += "/"; inFilename += "/query.hhr"; //cout << inFilename << endl; FILE* inputFile = fopen((char*) inFilename.c_str(), "r"); if (inputFile == NULL) { cout << "input file: " << inFilename << " can't open" << endl; } HHRResult result; while (fgets(line, 500, inputFile) != NULL) { if (strstr(line, ">") != NULL && !result.isFirstStateReached()) { //set first block information char proteinName[7]; char* pos1 = strstr(line, ">"); sscanf(pos1 + 1, "%s", proteinName); string proteinNameStr(proteinName); result.setProteinName(proteinNameStr); while (strstr(line, "Probab=") == NULL) { fgets(line, 500, inputFile); //skip long name } //get probab, E-value, Score, Aligned_cols, Identities, Similarity, Sum_probs pos1 = strstr(line, "="); float probab; sscanf(pos1 + 1, "%f", &probab); result.setProbab(probab); char* pos2 = strstr(pos1 + 1, "="); float eValue; sscanf(pos2 + 1, "%f", &eValue); result.setExpect(eValue); char* pos3 = strstr(pos2 + 1, "="); float score; sscanf(pos3 + 1, "%f", &score); result.setScore(score); char* pos4 = strstr(pos3 + 1, "="); int alignedCols; sscanf(pos4 + 1, "%d", &alignedCols); result.setAlignedCols(alignedCols); char* pos5 = strstr(pos4 + 1, "="); float identities; sscanf(pos5 + 1, "%f", &identities); result.setIdentities(identities); result.setFirstStateReached(true); } if ((strstr(line, "Q ref|") != NULL) && !result.isSecondStateReached()) { //set second block information //get the query int queryStart; char query[100]; int queryEnd; sscanf(line + 17, "%d %s %d", &queryStart, query, &queryEnd); result.setQueryStart(queryStart); string strQuery(query); result.setQuery(strQuery); result.setQueryEnd(queryEnd); //get the Q Consensus fgets(line, 200, inputFile); int QConsensusStart; char QConsensus[100]; int QConsensusEnd; sscanf(line + 17, "%d %s %d", &QConsensusStart, QConsensus, &QConsensusEnd); string strQConsensus(QConsensus); result.setQueryConsensus(strQConsensus); //get alignment fgets(line, 200, inputFile); char alignment[100]; sscanf(line + 17, "%s", alignment); string strAlignment(alignment); result.setAlignment(strAlignment); //get the T Consensus fgets(line, 200, inputFile); int targetStart; char targetConsensus[100]; int targetEnd; sscanf(line + 17, "%d %s %d", &targetStart, targetConsensus, &targetEnd); result.setTargetStart(targetStart); string strTargetConsensus(targetConsensus); result.setTargetConsensus(strTargetConsensus); result.setTargetEnd(targetEnd); //get the Target fgets(line, 200, inputFile); char target[100]; sscanf(line + 17, "%d %s %d", &targetStart, target, &targetEnd); string strTarget(target); result.setTarget(strTarget); //get the TPred fgets(line, 200, inputFile); char tPred[100]; sscanf(line + 17, "%s", tPred); string strTPred(tPred); result.setTargetSsPred(strTPred); //get the TConf fgets(line, 200, inputFile); char tConf[100]; sscanf(line + 17, "%s", tConf); string strTConf(tConf); result.setConfidence(strTConf); result.setSecondStateReached(true); } if ((strstr(line, "Q ref|") != NULL) && result.isSecondStateReached()) { //update second block information, so in this case //quert, alignment and target should be long string //the queryEnd and targetEnd should also be updated //get the query int queryStart; char query[100]; int queryEnd; sscanf(line + 17, "%d %s %d", &queryStart, query, &queryEnd); string additionalQuery(query); string newQuery = result.getQuery(); newQuery += additionalQuery; result.setQuery(newQuery); result.setQueryEnd(queryEnd); //get the Q Consensus fgets(line, 200, inputFile); int QConsensusStart; char QConsensus[100]; int QConsensusEnd; sscanf(line + 17, "%d %s %d", &QConsensusStart, QConsensus, &QConsensusEnd); string additionalQConsensus(QConsensus); string newQConsesus = result.getQueryConsensus(); newQConsesus += additionalQConsensus; result.setQueryConsensus(newQConsesus); //get alignment fgets(line, 200, inputFile); char alignment[100]; sscanf(line + 17, "%s", alignment); string additionalAlignment(alignment); string newAlignment = result.getAlignment(); newAlignment += additionalAlignment; result.setAlignment(newAlignment); //get the T Consensus fgets(line, 200, inputFile); int targetStart; char targetConsensus[100]; int targetEnd; sscanf(line + 17, "%d %s %d", &targetStart, targetConsensus, &targetEnd); string additionalTargetConsensus(targetConsensus); string newTargetConsensus = result.getTargetConsensus(); newTargetConsensus += additionalTargetConsensus; result.setTargetConsensus(newTargetConsensus); result.setTargetEnd(targetEnd); //get the Target fgets(line, 200, inputFile); char target[100]; sscanf(line + 17, "%d %s %d", &targetStart, target, &targetEnd); string additionalTarget(target); string newTarget = result.getTarget(); newTarget += additionalTarget; result.setTarget(newTarget); //get the TPred fgets(line, 200, inputFile); char tPred[100]; sscanf(line + 17, "%s", tPred); string additionalTPred(tPred); string newTPred = result.getTargetSsPred(); newTPred += additionalTPred; result.setTargetSsPred(newTPred); //get the TConf fgets(line, 200, inputFile); char tConf[100]; sscanf(line + 17, "%s", tConf); string additionalTConf(tConf); string newTConf = result.getConfidence(); newTConf += additionalTConf; result.setConfidence(newTConf); } if ((strstr(line, ">") != NULL) && result.isFirstStateReached()) { //first push the result to the vector hhrResultVector.push_back(result); //then update the information set the first state flag //set first block information char proteinName[7]; char* pos1 = strstr(line, ">"); sscanf(pos1 + 1, "%s", proteinName); string proteinNameStr(proteinName); result.setProteinName(proteinNameStr); while (strstr(line, "Probab=") == NULL) { fgets(line, 500, inputFile); //skip long name } //get probab, E-value, Score, Aligned_cols, Identities, Similarity, Sum_probs pos1 = strstr(line, "="); float probab; sscanf(pos1 + 1, "%f", &probab); result.setProbab(probab); char* pos2 = strstr(pos1 + 1, "="); float eValue; sscanf(pos2 + 1, "%f", &eValue); result.setExpect(eValue); char* pos3 = strstr(pos2 + 1, "="); float score; sscanf(pos3 + 1, "%f", &score); result.setScore(score); char* pos4 = strstr(pos3 + 1, "="); int alignedCols; sscanf(pos4 + 1, "%d", &alignedCols); result.setAlignedCols(alignedCols); char* pos5 = strstr(pos4 + 1, "="); float identities; sscanf(pos5 + 1, "%f", &identities); result.setIdentities(identities); result.setFirstStateReached(true); result.setSecondStateReached(false); } } hhrResultVector.push_back(result); fclose(inputFile); }
void HHRNR2Json::convert() { char line[500]; int counter = 0; string inFilename(inputFileLocation); inFilename += inputFilename; FILE* inputFile = fopen((char*) inFilename.c_str(), "r"); if (inputFile == NULL) { cout << "input file: " << inFilename << " can't open" << endl; } HHRNRResult result; while (fgets(line, 200, inputFile) != NULL) { if (strstr(line, ">") != NULL) { counter++; char proteinName[7]; char* pos1 = strstr(line, ">"); sscanf(pos1 + 1, "%s", proteinName); string proteinNameStr(proteinName); result.setProteinName(proteinNameStr); while (strstr(line, "Probab=") == NULL) { fgets(line, 500, inputFile); //skip long name } //get probab, E-value, Score, Aligned_cols, Identities, Similarity, Sum_probs pos1 = strstr(line, "="); float probab; sscanf(pos1 + 1, "%f", &probab); result.setProbab(probab); char* pos2 = strstr(pos1 + 1, "="); float eValue; sscanf(pos2 + 1, "%f", &eValue); result.setExpect(eValue); char* pos3 = strstr(pos2 + 1, "="); float score; sscanf(pos3 + 1, "%f", &score); result.setScore(score); char* pos4 = strstr(pos3 + 1, "="); int alignedCols; sscanf(pos4 + 1, "%d", &alignedCols); result.setAlignedCols(alignedCols); char* pos5 = strstr(pos4 + 1, "="); float identities; sscanf(pos5 + 1, "%f", &identities); result.setIdentities(identities); char* pos6 = strstr(pos5 + 1, "="); float similarity; sscanf(pos6 + 1, "%f", &similarity); result.setSimilarities(similarity); char* pos7 = strstr(pos6 + 1, "="); float sumProbs; sscanf(pos7 + 1, "%f", &sumProbs); result.setSumProbs(sumProbs); fgets(line, 200, inputFile); //blank //get the query fgets(line, 200, inputFile); char query_ss_pred[100]; sscanf(line + 17, "%s", query_ss_pred); string strQuery_ss_pred(query_ss_pred); result.setQuerySsPred(strQuery_ss_pred); fgets(line, 200, inputFile); int queryStart; char query[100]; int queryEnd; sscanf(line + 17, "%d %s %d", &queryStart, query, &queryEnd); result.setQueryStart(queryStart); string strQuery(query); result.setQuery(strQuery); result.setQueryEnd(queryEnd); //get the Q Consensus fgets(line, 200, inputFile); int QConsensusStart; char QConsensus[100]; int QConsensusEnd; sscanf(line + 17, "%d %s %d", &QConsensusStart, QConsensus, &QConsensusEnd); string strQConsensus(QConsensus); result.setQueryConsensus(strQConsensus); //get alignment fgets(line, 200, inputFile); char alignment[100]; sscanf(line + 17, "%s", alignment); string strAlignment(alignment); result.setAlignment(strAlignment); //get the T Consensus fgets(line, 200, inputFile); int targetStart; char targetConsensus[100]; int targetEnd; sscanf(line + 17, "%d %s %d", &targetStart, targetConsensus, &targetEnd); result.setTargetStart(targetStart); string strTargetConsensus(targetConsensus); result.setTargetConsensus(strTargetConsensus); result.setTargetEnd(targetEnd); //get the Target fgets(line, 200, inputFile); char target[100]; sscanf(line + 17, "%d %s %d", &targetStart, target, &targetEnd); string strTarget(target); result.setTarget(strTarget); //get the TDssp fgets(line, 200, inputFile); char tDssp[100]; sscanf(line + 17, "%s", tDssp); string strTDssp(tDssp); result.setTargetSsDssp(strTDssp); //get the TPred fgets(line, 200, inputFile); char tPred[100]; sscanf(line + 17, "%s", tPred); string strTPred(tPred); result.setTargetSsPred(strTPred); counter++; HHRNRResultVector.push_back(result); } } fclose(inputFile); }
// //================ //Map_ImportFile // Timo 09/01/99 : called by CXYWnd::Paste & Map_ImportFile // if Map_ImportFile ( prefab ), the buffer may contain brushes in old format ( conversion needed ) //================ // void Map_ImportBuffer (char* buf) { entity_t* ent; brush_t* b = NULL; CPtrArray ptrs; Select_Deselect(); Undo_Start("import buffer"); g_qeglobals.d_parsed_brushes = 0; if (buf) { CMapStringToString mapStr; StartTokenParsing (buf); g_qeglobals.d_num_entities = 0; // Timo // will be used in Entity_Parse to detect if a conversion between brush formats is needed g_qeglobals.bNeedConvert = false; g_qeglobals.bOldBrushes = false; g_qeglobals.bPrimitBrushes = false; while (1) { // use the selected brushes list as it's handy //ent = Entity_Parse (false, &selected_brushes); ent = Entity_Parse (false, &active_brushes); if (!ent) break; //end entity for undo Undo_EndEntity(ent); //end brushes for undo for(b = ent->brushes.onext; b && b != &ent->brushes; b = b->onext) { Undo_EndBrush(b); } if (!strcmp(ValueForKey (ent, "classname"), "worldspawn")) { // world brushes need to be added to the current world entity b=ent->brushes.onext; while (b && b != &ent->brushes) { brush_t* bNext = b->onext; Entity_UnlinkBrush(b); Entity_LinkBrush(world_entity, b); ptrs.Add(b); b = bNext; } } else { // the following bit remaps conflicting target/targetname key/value pairs CString str = ValueForKey(ent, "target"); CString strKey; CString strTarget(""); if (str.GetLength() > 0) { if (FindEntity("target", str.GetBuffer(0))) { if (!mapStr.Lookup(str, strKey)) { UniqueTargetName(strKey); mapStr.SetAt(str, strKey); } strTarget = strKey; SetKeyValue(ent, "target", strTarget.GetBuffer(0)); } } str = ValueForKey(ent, "targetname"); if (str.GetLength() > 0) { if (FindEntity("targetname", str.GetBuffer(0))) { if (!mapStr.Lookup(str, strKey)) { UniqueTargetName(strKey); mapStr.SetAt(str, strKey); } SetKeyValue(ent, "targetname", strKey.GetBuffer(0)); } } //if (strTarget.GetLength() > 0) // SetKeyValue(ent, "target", strTarget.GetBuffer(0)); // add the entity to the end of the entity list ent->next = &entities; ent->prev = entities.prev; entities.prev->next = ent; entities.prev = ent; g_qeglobals.d_num_entities++; for (b=ent->brushes.onext ; b != &ent->brushes ; b=b->onext) { ptrs.Add(b); } } } } //::ShowWindow(g_qeglobals.d_hwndEntity, FALSE); //::LockWindowUpdate(g_qeglobals.d_hwndEntity); g_bScreenUpdates = false; for (int i = 0; i < ptrs.GetSize(); i++) { Brush_Build(reinterpret_cast<brush_t*>(ptrs[i]), true, false); Select_Brush(reinterpret_cast<brush_t*>(ptrs[i]), true, false); } //::LockWindowUpdate(NULL); g_bScreenUpdates = true; ptrs.RemoveAll(); // reset the "need conversion" flag // conversion to the good format done in Map_BuildBrushData g_qeglobals.bNeedConvert=false; Sys_UpdateWindows (W_ALL); //Sys_MarkMapModified(); modified = true; Undo_End(); }