X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=kernel%2Fsrc%2FbbtkConfigurationFile.cxx;h=1d8c302753c6bc8b91836de1fe06e243c5d858a5;hb=5f49dad37400bf38b313463dd56455ea91086f5f;hp=d7806817f50d6c0e4bcc3f4230df76ea5adce7f1;hpb=63005ec659612d567c00bfbb9ecbd62566a3217d;p=bbtk.git diff --git a/kernel/src/bbtkConfigurationFile.cxx b/kernel/src/bbtkConfigurationFile.cxx index d780681..1d8c302 100644 --- a/kernel/src/bbtkConfigurationFile.cxx +++ b/kernel/src/bbtkConfigurationFile.cxx @@ -3,8 +3,8 @@ Program: bbtk Module: $RCSfile: bbtkConfigurationFile.cxx,v $ Language: C++ - Date: $Date: 2008/02/21 09:37:23 $ - Version: $Revision: 1.10 $ + Date: $Date: 2008/03/17 10:51:35 $ + Version: $Revision: 1.14 $ Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de l'Image). All rights reserved. See doc/license.txt or @@ -29,6 +29,8 @@ #include // for getcwd #endif + + namespace bbtk { @@ -36,25 +38,23 @@ namespace bbtk /// Constructor ConfigurationFile::ConfigurationFile() { - // file separator -#if defined(_WIN32) - mFile_separator = "\\"; -#else - mFile_separator = "/"; -#endif + + mFile_separator = VALID_FILE_SEPARATOR; // ==> Set system paths mBin_path = GetExecutablePath(); - mInstall_path = mBin_path + mFile_separator + ".."; +//EED mInstall_path = mBin_path + mFile_separator + ".."; + mInstall_path = mBin_path + "/.."; // The relative path to the doc folder (=BBTK_DOC_REL_PATH) mDoc_rel_path = BBTK_STRINGIFY_SYMBOL(BBTK_DOC_REL_PATH); - mDoc_rel_path = BBTK_STRINGIFY_SYMBOL(doc); // The path to the doc folder (=mInstall_path+"/"+mDoc_rel_path) - mDoc_path = mInstall_path + mFile_separator + mDoc_rel_path; +//EED mDoc_path = mInstall_path + mFile_separator + mDoc_rel_path; + mDoc_path = mInstall_path + "/" + mDoc_rel_path; // The relative path to the doc folder (=BBTK_BBS_REL_PATH) mBbs_rel_path = BBTK_STRINGIFY_SYMBOL(BBTK_BBS_REL_PATH); // The path to the bbs folder (=mInstall_path+"/"+mBbs_rel_path) - mBbs_path = mInstall_path + mFile_separator + mBbs_rel_path; +//EED mBbs_path = mInstall_path + mFile_separator + mBbs_rel_path; + mBbs_path = mInstall_path + "/" + mBbs_rel_path; // The relative path to the rsc folder (=BBTK_RSC_REL_PATH) // mRsc_rel_path = BBTK_STRINGIFY_SYMBOL(BBTK_RSC_REL_PATH); // The path to the rsc folder (=mInstall_path+"/"+mRsc_rel_path) @@ -62,25 +62,47 @@ namespace bbtk // The path to the bbtk data folder // Initialized to mInstall_path+"/"+BBTK_DATA_REL_PATH // But can be overriden by value read from bbtk_config.xml - mData_path = mInstall_path + mFile_separator + BBTK_STRINGIFY_SYMBOL(BBTK_DATA_REL_PATH); +//EED mData_path = mInstall_path + mFile_separator + BBTK_STRINGIFY_SYMBOL(BBTK_DATA_REL_PATH); + mData_path = mInstall_path + "/" + BBTK_STRINGIFY_SYMBOL(BBTK_DATA_REL_PATH); + + Utilities::replace( mBin_path , INVALID_FILE_SEPARATOR , VALID_FILE_SEPARATOR); + Utilities::replace( mInstall_path , INVALID_FILE_SEPARATOR , VALID_FILE_SEPARATOR); + Utilities::replace( mDoc_rel_path , INVALID_FILE_SEPARATOR , VALID_FILE_SEPARATOR); + Utilities::replace( mDoc_path , INVALID_FILE_SEPARATOR , VALID_FILE_SEPARATOR); + Utilities::replace( mBbs_path , INVALID_FILE_SEPARATOR , VALID_FILE_SEPARATOR); + Utilities::replace( mData_path , INVALID_FILE_SEPARATOR , VALID_FILE_SEPARATOR); bbtkMessage("Config",1," ==> bin : '"< prefix : '"< doc : '"< bbs : '"< rsc : '"< data : '"< First we look for bbtk_config.xml in "." @@ -109,8 +141,11 @@ namespace bbtk // LG : throw an exception } - std::string configXmlFullPathName = currentDir + mFile_separator + "bbtk_config.xml"; - +// std::string configXmlFullPathName = currentDir + mFile_separator + "bbtk_config.xml"; + std::string configXmlFullPathName = currentDir ; + configXmlFullPathName += "/bbtk_config.xml"; + Utilities::replace( configXmlFullPathName , INVALID_FILE_SEPARATOR , VALID_FILE_SEPARATOR); + if ( Utilities::FileExists( configXmlFullPathName )) { bbtkMessage("Config",1, "ConfigurationFile : [" << configXmlFullPathName << @@ -127,7 +162,10 @@ namespace bbtk #elif defined(_WIN32) std::string str_home(getenv("USERPROFILE")); #endif - configXmlFullPathName = str_home + mFile_separator + ".bbtk/bbtk_config.xml"; +//EED configXmlFullPathName = str_home + mFile_separator + ".bbtk/bbtk_config.xml"; + configXmlFullPathName = str_home + "/.bbtk/bbtk_config.xml"; + Utilities::replace( configXmlFullPathName , INVALID_FILE_SEPARATOR , VALID_FILE_SEPARATOR); + if (!Utilities::FileExists( configXmlFullPathName )) { // ==> Nothing found, we create bbtk_config.xml in ".bbtk"