+++ /dev/null
-/**
- * Author: Mark Larkin
- *
- * Copyright (c) 2007 Des Higgins, Julie Thompson and Toby Gibson.
- */
-#ifdef HAVE_CONFIG_H
- #include "config.h"
-#endif
-#include "OutputFile.h"
-#include "utils.h"
-#include "userparams.h"
-
-namespace clustalw
-{
-
-OutputFile::OutputFile()
-{
-
-}
-
-OutputFile::~OutputFile()
-{
- // If it is open, close it and say that a file has been created!!!!!
- if(file.get())
- {
- file->close();
- utilityObject->info("%s file created: [%s]\n", typeOfFileMsg.c_str(),
- name.c_str());
- }
-}
-
-bool OutputFile::openFile(std::string* fileName, const std::string msg, const std::string* path,
- const std::string ext, const std::string fileType)
-{
- if (fileName->empty())
- {
- *fileName = getOutputFileName(msg, *path, ext);
-
- if(fileName->empty())
- {
- return false;
- }
- }
-
- file.reset(new std::ofstream(fileName->c_str(), std::ofstream::trunc));
-
- if(!file->is_open())
- {
- utilityObject->error("Cannot open output file [%s]\n", fileName->c_str());
- return false;
- }
- name = *fileName;
- typeOfFileMsg = fileType;
-
- return true;
-}
-
-bool OutputFile::isOpen()
-{
- return file->is_open();
-}
-
-std::ofstream* OutputFile::getPtrToFile()
-{
- return file.get();
-}
-
-std::string OutputFile::getOutputFileName(const std::string prompt, std::string path,
- const std::string fileExtension)
-{
- std::string temp;
- std::string _fileName; // Will return this name.
- std::string message;
- _fileName = path + fileExtension;
-
- if(_fileName.compare(userParameters->getSeqName()) == 0)
- {
- cerr << "WARNING: Output file name is the same as input file.\n";
- if (userParameters->getMenuFlag())
- {
- message = "\n\nEnter new name to avoid overwriting [" + _fileName + "]: ";
- utilityObject->getStr(message, temp);
- if(temp != "")
- {
- _fileName = temp;
- }
- }
- }
- else if (userParameters->getMenuFlag())
- {
-
- message = prompt + " [" + _fileName + "]";
- utilityObject->getStr(message, temp);
- if(temp != "")
- {
- _fileName = temp;
- }
- }
- return _fileName;
-
-}
-
-}
-
-