1 #ifndef GAUDIKERNEL_DATASTOREITEM_H 2 #define GAUDIKERNEL_DATASTOREITEM_H 26 : m_path(
std::move(path)), m_depth(
depth) {
31 : m_path(item.m_path), m_depth(item.m_depth) {
39 return m_path == cmp.
path() && m_depth == cmp.
depth();
43 return ! ( m_path == cmp.
path() && m_depth == cmp.
depth() );
48 m_depth = cmp.
depth();
54 int len = m_path.
length()-1;
55 if ( m_path[len] ==
'*' ) {
57 (m_path[len-1] ==
'/') ? m_path.
erase(len-1, 2) : m_path.
erase(len, 1);
59 else if ( m_path[len] ==
'+' ) {
60 (m_path[len-1] ==
'/') ? m_path.
erase(len-1, 2) : m_path.
erase(len, 1);
73 #endif // GAUDIKERNEL_DATASTOREITEM_H int depth() const
Accessor: Retrieve load depth.
std::string m_path
Path of item to be loaded.
bool operator!=(const DataStoreItem &cmp) const
Inequality operator.
Description of the DataStoreItem class.
const std::string & path() const
Accessor: Retrieve load path.
void analyse()
Interprete the load path for special options.
DataStoreItem(std::string path, int depth=1)
Standard Constructor.
int m_depth
Depth to be auto-loaded from the requested path onwards.
bool operator==(const DataStoreItem &cmp) const
Equality operator.
virtual ~DataStoreItem()=default
Standard Destructor.
DataStoreItem & operator=(const DataStoreItem &cmp)
Equivalence operator.
DataStoreItem(const DataStoreItem &item)
Copy constructor.