X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;ds=sidebyside;f=kernel%2Fsrc%2FbbtkConfigurationFile.cxx;h=1d8c302753c6bc8b91836de1fe06e243c5d858a5;hb=8a15ae69662abfba701a970f9efee218e0b126d3;hp=811bccbfdca9d6e31dff502cdc27fcd7dcc8f7db;hpb=027bd220c2819146658da884f08b10ffc40545e3;p=bbtk.git diff --git a/kernel/src/bbtkConfigurationFile.cxx b/kernel/src/bbtkConfigurationFile.cxx index 811bccb..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/18 10:41:02 $ - Version: $Revision: 1.9 $ + 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,24 +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 + // ==> 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); // 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) @@ -61,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 "." @@ -108,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 << @@ -126,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"