X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=engine.cpp;h=48f782ab2a590d71a292e7b83125ba8ce0f3fffe;hb=dc383fb61b6d165a8d36e6108df8bc7129243ae6;hp=24adcb53b59f39f049269d74b4da953a5f387262;hpb=f55cf350ca6643f8eb070d8336e1957699a3f109;p=mothur.git diff --git a/engine.cpp b/engine.cpp index 24adcb5..48f782a 100644 --- a/engine.cpp +++ b/engine.cpp @@ -26,71 +26,7 @@ Engine::Engine(){ } } /***********************************************************************/ -string Engine::findMothursPath(){ - try { - - string envPath = getenv("PATH"); - string mothurPath = ""; - - //delimiting path char - char delim; - #if defined (__APPLE__) || (__MACH__) || (linux) || (__linux) || (__linux__) || (__unix__) || (__unix) - delim = ':'; - #else - delim = ';'; - #endif - - //break apart path variable by ':' - vector dirs; - mout->splitAtChar(envPath, dirs, delim); - - //get path related to mothur - for (int i = 0; i < dirs.size(); i++) { - //to lower so we can find it - string tempLower = ""; - for (int j = 0; j < dirs[i].length(); j++) { tempLower += tolower(dirs[i][j]); } - - //is this mothurs path? - if (tempLower.find("mothur") != -1) { mothurPath = dirs[i]; break; } - } - - if (mothurPath != "") { - //add mothur so it looks like what argv would look like - #if defined (__APPLE__) || (__MACH__) || (linux) || (__linux) || (__linux__) || (__unix__) || (__unix) - mothurPath += "/mothur"; - #else - mothurPath += "\\mothur"; - #endif - }else { - //okay mothur is not in the path, so the folder mothur is in must be in the path - //lets find out which one - - //get path related to mothur - for (int i = 0; i < dirs.size(); i++) { - - //is this mothurs path? - ifstream in; - string tempIn = dirs[i]; - #if defined (__APPLE__) || (__MACH__) || (linux) || (__linux) || (__linux__) || (__unix__) || (__unix) - tempIn += "/mothur"; - #else - tempIn += "\\mothur"; - #endif - mout->openInputFile(tempIn, in, ""); - - //if this file exists - if (in) { in.close(); mothurPath = tempIn; break; } - } - } - - return mothurPath; - - } - catch(exception& e) { - mout->errorOut(e, "Engine", "findMothursPath"); - exit(1); - } -} + /***********************************************************************/ InteractEngine::InteractEngine(string path){ @@ -99,7 +35,7 @@ InteractEngine::InteractEngine(string path){ string temppath = path.substr(0, (path.find_last_of("othur")-5)); //this will happen if you set the path variable to contain mothur's exe location - if (temppath == "") { path = findMothursPath(); } + if (temppath == "") { path = mout->findProgramPath("mothur"); } mout->argv = path; } @@ -266,7 +202,7 @@ BatchEngine::BatchEngine(string path, string batchFileName){ string temppath = path.substr(0, (path.find_last_of("othur")-5)); //this will happen if you set the path variable to contain mothur's exe location - if (temppath == "") { path = findMothursPath(); } + if (temppath == "") { path = mout->findProgramPath("mothur"); } mout->argv = path; @@ -434,7 +370,7 @@ ScriptEngine::ScriptEngine(string path, string commandString){ string temppath = path.substr(0, (path.find_last_of("othur")-5)); //this will happen if you set the path variable to contain mothur's exe location - if (temppath == "") { path = findMothursPath(); } + if (temppath == "") { path = mout->findProgramPath("mothur"); } mout->argv = path;