9#include "MantidGeometry/DllConfig.h"
32 static const std::string expectedExtension();
53 std::filesystem::path getParentDirectory()
const override;
54 const std::filesystem::path &getFileFullPath()
const override;
55 const std::string &getFileFullPathStr()
const override;
56 std::string getFileNameOnly()
const override;
57 std::string getExtension()
const override;
58 std::string getMangledName()
const override;
59 bool exists()
const override;
81 throw std::runtime_error(
"Not implemented on NullIDFObject");
84 throw std::runtime_error(
"Not implemented on NullIDFObject");
88 std::string
getExtension()
const override {
return m_emptyResponse; }
89 std::string
getMangledName()
const override {
throw std::runtime_error(
"Not implemented on NullIDFObject"); }
90 bool exists()
const override {
return false; }
IDFObject : File object wrapper over an IDF file.
virtual std::filesystem::path getParentDirectory() const =0
virtual ~AbstractIDFObject()=default
virtual const std::filesystem::path & getFileFullPath() const =0
virtual std::string getFileNameOnly() const =0
AbstractIDFObject()=default
AbstractIDFObject(const AbstractIDFObject &)
AbstractIDFObject & operator=(const AbstractIDFObject &)
virtual const std::string & getFileFullPathStr() const =0
virtual std::string getMangledName() const =0
virtual std::string getExtension() const =0
virtual bool exists() const =0
IDFObject & operator=(const IDFObject &)
const std::filesystem::path m_cacheParentDirectory
const std::string m_cachePathStr
IDFObject(const IDFObject &)
const std::filesystem::path m_cachePath
bool exists() const override
std::filesystem::path m_emptyPath
std::filesystem::path getParentDirectory() const override
const std::string & getFileFullPathStr() const override
std::string getMangledName() const override
std::string getExtension() const override
std::string m_emptyResponse
const std::filesystem::path & getFileFullPath() const override
std::string getFileNameOnly() const override
bool exists(Nexus::File &file, const std::string &name)
std::shared_ptr< AbstractIDFObject > IDFObject_sptr
std::shared_ptr< const AbstractIDFObject > IDFObject_const_sptr
Helper class which provides the Collimation Length for SANS instruments.