void writeDiaGraphFromFile(const char *inFile,const char *outDir, const char *outFile,DiaOutputFormat format) { QCString absOutFile = outDir; absOutFile+=portable_pathSeparator(); absOutFile+=outFile; // chdir to the output dir, so dot can find the font file. QCString oldDir = QDir::currentDirPath().utf8(); // go to the html output directory (i.e. path) QDir::setCurrent(outDir); //printf("Going to dir %s\n",QDir::currentDirPath().data()); QCString diaExe = Config_getString(DIA_PATH)+"dia"+portable_commandExtension(); QCString diaArgs; QCString extension; diaArgs+="-n "; if (format==DIA_BITMAP) { diaArgs+="-t png-libart"; extension=".png"; } else if (format==DIA_EPS) { diaArgs+="-t eps"; extension=".eps"; } diaArgs+=" -e \""; diaArgs+=outFile; diaArgs+=extension+"\""; diaArgs+=" \""; diaArgs+=inFile; diaArgs+="\""; int exitCode; //printf("*** running: %s %s outDir:%s %s\n",diaExe.data(),diaArgs.data(),outDir,outFile); portable_sysTimerStart(); if ((exitCode=portable_system(diaExe,diaArgs,FALSE))!=0) { portable_sysTimerStop(); goto error; } portable_sysTimerStop(); if ( (format==DIA_EPS) && (Config_getBool(USE_PDFLATEX)) ) { QCString epstopdfArgs(maxCmdLine); epstopdfArgs.sprintf("\"%s.eps\" --outfile=\"%s.pdf\"", outFile,outFile); portable_sysTimerStart(); if (portable_system("epstopdf",epstopdfArgs)!=0) { err("Problems running epstopdf. Check your TeX installation!\n"); } portable_sysTimerStop(); } error: QDir::setCurrent(oldDir); }
void writeMscGraphFromFile(const char *inFile,const char *outDir, const char *outFile,MscOutputFormat format) { QCString absOutFile = outDir; absOutFile+=portable_pathSeparator(); absOutFile+=outFile; // chdir to the output dir, so dot can find the font file. QCString oldDir = convertToQCString(QDir::currentDirPath()); // go to the html output directory (i.e. path) QDir::setCurrent(outDir); //printf("Going to dir %s\n",QDir::currentDirPath().data()); QCString mscExe = Config_getString("MSCGEN_PATH")+"mscgen"+portable_commandExtension(); QCString mscArgs; QCString extension; if (format==MSC_BITMAP) { mscArgs+="-T png"; extension=".png"; } else if (format==MSC_EPS) { mscArgs+="-T eps"; extension=".eps"; } mscArgs+=" -i \""; mscArgs+=inFile; mscArgs+=".msc\" -o \""; mscArgs+=outFile; mscArgs+=extension+"\""; int exitCode; //printf("*** running: %s %s\n",mscExe.data(),mscArgs.data()); portable_sysTimerStart(); if ((exitCode=portable_system(mscExe,mscArgs,FALSE))!=0) { portable_sysTimerStop(); goto error; } portable_sysTimerStop(); if ( (format==MSC_EPS) && (Config_getBool("USE_PDFLATEX")) ) { QCString epstopdfArgs(maxCmdLine); epstopdfArgs.sprintf("\"%s.eps\" --outfile=\"%s.pdf\"", outFile,outFile); portable_sysTimerStart(); if (portable_system("epstopdf",epstopdfArgs)!=0) { err("error: Problems running epstopdf. Check your TeX installation!\n"); } portable_sysTimerStop(); } error: QDir::setCurrent(oldDir); }
void writeMscGraphFromFile(const char *inFile,const char *outDir, const char *outFile,MscOutputFormat format) { QCString absOutFile = outDir; absOutFile+=portable_pathSeparator(); absOutFile+=outFile; // chdir to the output dir, so dot can find the font file. QCString oldDir = QDir::currentDirPath().utf8(); // go to the html output directory (i.e. path) QDir::setCurrent(outDir); //printf("Going to dir %s\n",QDir::currentDirPath().data()); QCString mscExe = Config_getString(MSCGEN_PATH)+"mscgen"+portable_commandExtension(); QCString mscArgs; QCString imgName = outFile; switch (format) { case MSC_BITMAP: mscArgs+="-T png"; imgName+=".png"; break; case MSC_EPS: mscArgs+="-T eps"; imgName+=".eps"; break; case MSC_SVG: mscArgs+="-T svg"; imgName+=".svg"; break; default: goto error; // I am not very fond of goto statements, but when in Rome... } mscArgs+=" -i \""; mscArgs+=inFile; mscArgs+="\" -o \""; mscArgs+=imgName+"\""; int exitCode; // printf("*** running: %s %s outDir:%s %s\n",mscExe.data(),mscArgs.data(),outDir,outFile); portable_sysTimerStart(); if ((exitCode=portable_system(mscExe,mscArgs,FALSE))!=0) { portable_sysTimerStop(); goto error; } portable_sysTimerStop(); if ( (format==MSC_EPS) && (Config_getBool(USE_PDFLATEX)) ) { QCString epstopdfArgs(maxCmdLine); epstopdfArgs.sprintf("\"%s.eps\" --outfile=\"%s.pdf\"", outFile,outFile); portable_sysTimerStart(); if (portable_system("epstopdf",epstopdfArgs)!=0) { err("Problems running epstopdf. Check your TeX installation!\n"); } portable_sysTimerStop(); } Doxygen::indexList->addImageFile(imgName); error: QDir::setCurrent(oldDir); }