diff --git a/Framework/DataHandling/src/LoadHelper.cpp b/Framework/DataHandling/src/LoadHelper.cpp index 41d090fcee30cce8844a13d5418a559cdde19641..1f68e561fdb55d1773fc3503ed6ee982e8c16b40 100644 --- a/Framework/DataHandling/src/LoadHelper.cpp +++ b/Framework/DataHandling/src/LoadHelper.cpp @@ -11,6 +11,7 @@ #include <nexus/napi.h> +#include <boost/algorithm/string.hpp> #include <boost/algorithm/string/predicate.hpp> //assert(boost::algorithm::ends_with("mystring", "ing")); namespace Mantid { @@ -210,7 +211,7 @@ void LoadHelper::recurseAndAddNexusFieldsToWsRun(NXhandle nxfileID, if ((opengroup_status = NXopengroup(nxfileID, nxname, nxclass)) == NX_OK) { - if (!std::string(nxclass).empty()) { + if (!boost::algorithm::contains(std::string(nxclass), "ILL")) { // Go down to one level, if the group is known to nexus std::string p_nxname( diff --git a/Framework/Kernel/src/NexusDescriptor.cpp b/Framework/Kernel/src/NexusDescriptor.cpp index 59f55997f07277d719c94baed102ce730c57158d..cb3b9489f9260627fc86a490504b8cdbe4d35840 100644 --- a/Framework/Kernel/src/NexusDescriptor.cpp +++ b/Framework/Kernel/src/NexusDescriptor.cpp @@ -1,5 +1,7 @@ #include "MantidKernel/NexusDescriptor.h" +#include <boost/algorithm/string.hpp> + #include <nexus/NeXusFile.hpp> #include <nexus/NeXusException.hpp> @@ -245,8 +247,9 @@ void NexusDescriptor::walkFile(::NeXus::File &file, const std::string &rootPath, for (auto it = dirents.begin(); it != itend; ++it) { const std::string &entryName = it->first; const std::string &entryClass = it->second; - const std::string entryPath = rootPath + "/" + entryName; - if (entryClass == "SDS" || entryClass.empty()) { + const std::string entryPath = + std::string(rootPath).append("/").append(entryName); + if (entryClass == "SDS" || boost::algorithm::contains(entryClass, "ILL")) { pmap.emplace(entryPath, entryClass); } else if (entryClass == "CDF0.0") { // Do nothing with this