commandFactory = CommandFactory::getInstance();
+ string tag = "";
+#ifdef USE_MPI
+ int pid;
+ MPI_Comm_rank(MPI_COMM_WORLD, &pid); //find out who we are
+
+ tag = toString(pid);
+#endif
+
m->mothurOut("Mothur's directories:"); m->mothurOutEndLine();
//redirect output
}else {
//add / to name if needed
string lastChar = output.substr(output.length()-1);
- #if defined (__APPLE__) || (__MACH__) || (linux) || (__linux)
+ #if defined (__APPLE__) || (__MACH__) || (linux) || (__linux) || (__linux__) || (__unix__) || (__unix)
if (lastChar != "/") { output += "/"; }
#else
if (lastChar != "\\") { output += "\\"; }
//test to make sure directory exists
output = m->getFullPathName(output);
- string outTemp = output + "temp";
+ string outTemp = output + tag + "temp";
ofstream out;
out.open(outTemp.c_str(), ios::trunc);
if(!out) {
}else {
//add / to name if needed
string lastChar = input.substr(input.length()-1);
- #if defined (__APPLE__) || (__MACH__) || (linux) || (__linux)
+ #if defined (__APPLE__) || (__MACH__) || (linux) || (__linux) || (__linux__) || (__unix__) || (__unix)
if (lastChar != "/") { input += "/"; }
#else
if (lastChar != "\\") { input += "\\"; }
//test to make sure directory exists
input = m->getFullPathName(input);
- string inTemp = input + "temp";
+ string inTemp = input + tag + "temp";
ofstream in;
in.open(inTemp.c_str(), ios::trunc);
if(!in) {
}else {
//add / to name if needed
string lastChar = tempdefault.substr(tempdefault.length()-1);
- #if defined (__APPLE__) || (__MACH__) || (linux) || (__linux)
+ #if defined (__APPLE__) || (__MACH__) || (linux) || (__linux) || (__linux__) || (__unix__) || (__unix)
if (lastChar != "/") { tempdefault += "/"; }
#else
if (lastChar != "\\") { tempdefault += "\\"; }
#endif
- m->mothurOut("tempDefault=" + tempdefault); m->mothurOutEndLine();
- m->setDefaultPath(tempdefault);
+ //test to make sure directory exists
+ tempdefault = m->getFullPathName(tempdefault);
+ string inTemp = tempdefault + tag + "temp";
+ ofstream in;
+ in.open(inTemp.c_str(), ios::trunc);
+ if(!in) {
+ m->mothurOut(tempdefault + " directory does not exist or is not writable."); m->mothurOutEndLine();
+ }else{
+ in.close();
+ m->mothurRemove(inTemp);
+ m->mothurOut("tempDefault=" + tempdefault); m->mothurOutEndLine();
+ m->setDefaultPath(tempdefault);
+ }
}
return 0;