| The Gaudi Framework v27r1

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

Public Member Functions | Protected Attributes | List of all members
DataStoreItem Class Reference

Description of the DataStoreItem class. More...

`#include <GaudiKernel/DataStoreItem.h>`

Collaboration diagram for DataStoreItem:
[legend]

## Public Member Functions
| DataStoreItem (std::string path, int depth=1)
| Standard Constructor. More...
| DataStoreItem (const DataStoreItem &item)
| Copy constructor. More...
virtual | ~DataStoreItem ()=default
| Standard Destructor. More...
bool | operator== (const DataStoreItem &cmp) const
| Equality operator. More...
bool | operator!= (const DataStoreItem &cmp) const
| Inequality operator. More...
DataStoreItem & | operator= (const DataStoreItem &cmp)
| Equivalence operator. More...
void | analyse ()
| Interprete the load path for special options. More...
const std::string & | path () const
| Accessor: Retrieve load path. More...
int | depth () const
| Accessor: Retrieve load depth. More...

## Protected Attributes
std::string | m_path
| Path of item to be loaded. More...
int | m_depth
| Depth to be auto-loaded from the requested path onwards. More...

## Detailed Description

Description of the DataStoreItem class.

DataStoreItems describe in an abstract way an item in the data store. Items can be supplied to the services in order to e.g. trigger preloading or writing.

Author
  M.Frank

Version
  1.0

Definition at line 17 of file DataStoreItem.h.

## Constructor & Destructor Documentation

DataStoreItem::DataStoreItem | ( | std::string | path,
|  | int | depth = `1`
| ) |  |
| inline

Standard Constructor.

Definition at line 25 of file DataStoreItem.h.

26 : m_path(std::move(path)), m_depth(depth) {
27 analyse();
28 }
DataStoreItem::depth
int depth() const
Accessor: Retrieve load depth.
Definition: DataStoreItem.h:69
DataStoreItem::m_path
std::string m_path
Path of item to be loaded.
Definition: DataStoreItem.h:20
DataStoreItem::analyse
void analyse()
Interprete the load path for special options.
Definition: DataStoreItem.h:53
DataStoreItem::m_depth
int m_depth
Depth to be auto-loaded from the requested path onwards.
Definition: DataStoreItem.h:22
std::move
T move(T...args)

DataStoreItem::DataStoreItem | ( | const DataStoreItem & | item | ) |
| inline

Copy constructor.

Definition at line 30 of file DataStoreItem.h.

31 : m_path(item.m_path), m_depth(item.m_depth) {
32 analyse();
33 }
DataStoreItem::m_path
std::string m_path
Path of item to be loaded.
Definition: DataStoreItem.h:20
DataStoreItem::analyse
void analyse()
Interprete the load path for special options.
Definition: DataStoreItem.h:53
DataStoreItem::m_depth
int m_depth
Depth to be auto-loaded from the requested path onwards.
Definition: DataStoreItem.h:22

virtual DataStoreItem::~DataStoreItem | ( |  | ) |
| virtual default

Standard Destructor.

## Member Function Documentation

void DataStoreItem::analyse | ( |  | ) |
| inline

Interprete the load path for special options.

Definition at line 53 of file DataStoreItem.h.

53 {
54 int len = m_path.length()-1;
55 if ( m_path[len] == '*' ) {
56 m_depth = 99999999;
57 (m_path[len-1] == '/') ? m_path.erase(len-1, 2) : m_path.erase(len, 1);
58 }
59 else if ( m_path[len] == '+' ) {
60 (m_path[len-1] == '/') ? m_path.erase(len-1, 2) : m_path.erase(len, 1);
61 m_depth = 2;
62 }
63 }
DataStoreItem::m_path
std::string m_path
Path of item to be loaded.
Definition: DataStoreItem.h:20
std::string::erase
T erase(T...args)
DataStoreItem::m_depth
int m_depth
Depth to be auto-loaded from the requested path onwards.
Definition: DataStoreItem.h:22
std::string::length
T length(T...args)

int DataStoreItem::depth | ( |  | ) | const
| inline

Accessor: Retrieve load depth.

Definition at line 69 of file DataStoreItem.h.

69 {
70 return m_depth;
71 }
DataStoreItem::m_depth
int m_depth
Depth to be auto-loaded from the requested path onwards.
Definition: DataStoreItem.h:22

bool DataStoreItem::operator!= | ( | const DataStoreItem & | cmp | ) | const
| inline

Inequality operator.

Definition at line 42 of file DataStoreItem.h.

42 {
43 return ! ( m_path == cmp.path() && m_depth == cmp.depth() );
44 }
DataStoreItem::depth
int depth() const
Accessor: Retrieve load depth.
Definition: DataStoreItem.h:69
DataStoreItem::m_path
std::string m_path
Path of item to be loaded.
Definition: DataStoreItem.h:20
DataStoreItem::path
const std::string & path() const
Accessor: Retrieve load path.
Definition: DataStoreItem.h:65
DataStoreItem::m_depth
int m_depth
Depth to be auto-loaded from the requested path onwards.
Definition: DataStoreItem.h:22

DataStoreItem& DataStoreItem::operator= | ( | const DataStoreItem & | cmp | ) |
| inline

Equivalence operator.

Definition at line 46 of file DataStoreItem.h.

46 {
47 m_path = cmp.path();
48 m_depth = cmp.depth();
49 analyse();
50 return *this;
51 }
DataStoreItem::depth
int depth() const
Accessor: Retrieve load depth.
Definition: DataStoreItem.h:69
DataStoreItem::m_path
std::string m_path
Path of item to be loaded.
Definition: DataStoreItem.h:20
DataStoreItem::path
const std::string & path() const
Accessor: Retrieve load path.
Definition: DataStoreItem.h:65
DataStoreItem::analyse
void analyse()
Interprete the load path for special options.
Definition: DataStoreItem.h:53
DataStoreItem::m_depth
int m_depth
Depth to be auto-loaded from the requested path onwards.
Definition: DataStoreItem.h:22

bool DataStoreItem::operator== | ( | const DataStoreItem & | cmp | ) | const
| inline

Equality operator.

Definition at line 38 of file DataStoreItem.h.

38 {
39 return m_path == cmp.path() && m_depth == cmp.depth();
40 }
DataStoreItem::depth
int depth() const
Accessor: Retrieve load depth.
Definition: DataStoreItem.h:69
DataStoreItem::m_path
std::string m_path
Path of item to be loaded.
Definition: DataStoreItem.h:20
DataStoreItem::path
const std::string & path() const
Accessor: Retrieve load path.
Definition: DataStoreItem.h:65
DataStoreItem::m_depth
int m_depth
Depth to be auto-loaded from the requested path onwards.
Definition: DataStoreItem.h:22

const std::string& DataStoreItem::path | ( |  | ) | const
| inline

Accessor: Retrieve load path.

Definition at line 65 of file DataStoreItem.h.

65 {
66 return m_path;
67 }
DataStoreItem::m_path
std::string m_path
Path of item to be loaded.
Definition: DataStoreItem.h:20

## Member Data Documentation

int DataStoreItem::m_depth
| protected

Depth to be auto-loaded from the requested path onwards.

Definition at line 22 of file DataStoreItem.h.

std::string DataStoreItem::m_path
| protected

Path of item to be loaded.

Definition at line 20 of file DataStoreItem.h.

The documentation for this class was generated from the following file:

- GaudiKernel/GaudiKernel/DataStoreItem.h