2 #ifndef GAUDIKERNEL_DATASTOREITEM_H
3 #define GAUDIKERNEL_DATASTOREITEM_H
27 : m_path(path), m_depth(
depth) {
32 : m_path(item.m_path), m_depth(item.m_depth) {
40 return m_path == cmp.
path() && m_depth == cmp.
depth();
44 return ! ( m_path == cmp.
path() && m_depth == cmp.
depth() );
49 m_depth = cmp.
depth();
55 int len = m_path.length()-1;
56 if ( m_path[len] ==
'*' ) {
58 (m_path[len-1] ==
'/') ? m_path.erase(len-1, 2) : m_path.erase(len, 1);
60 else if ( m_path[len] ==
'+' ) {
61 (m_path[len-1] ==
'/') ? m_path.erase(len-1, 2) : m_path.erase(len, 1);
66 const std::string&
path()
const {
74 #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.
DataStoreItem(const std::string &path, int depth=1)
Standard Constructor.
Description of the DataStoreItem class.
virtual ~DataStoreItem()
Standard Destructor.
const std::string & path() const
Accessor: Retrieve load path.
void analyse()
Interprete the load path for special options.
int m_depth
Depth to be auto-loaded from the requested path onwards.
bool operator==(const DataStoreItem &cmp) const
Equality operator.
DataStoreItem & operator=(const DataStoreItem &cmp)
Equivalence operator.
DataStoreItem(const DataStoreItem &item)
Copy constructor.