| The Gaudi Framework v29r0 (ff2e7097)

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

- File List
- File Members

PropertyName.h
Go to the documentation of this file.
1 #ifndef JOBOPTIONSVC_PROPERTY_NAME_H_
2 #define JOBOPTIONSVC_PROPERTY_NAME_H_
3 // ============================================================================
4 // Includes:
5 // ============================================================================
6 // STD & STL:
7 // ============================================================================
8 #include "Position.h"
9 #include <string>
10 // ============================================================================
11 namespace Gaudi
12 {
13 namespace Parsers
14 {
15 // ============================================================================
16 class Position;
17 // ============================================================================
18 class PropertyName final
19 {
20 public:
21 // ----------------------------------------------------------------------------
22 explicit PropertyName( std::string property ) : property_( std::move( property ) ) {}
23 PropertyName( std::string property, const Position& pos ) : property_( std::move( property ) ), position_( pos )
24 {
25 }
26 PropertyName( std::string client, std::string property )
27 : client_( std::move( client ) ), property_( std::move( property ) )
28 {
29 }
30 PropertyName( std::string client, std::string property, Position pos )
31 : client_( std::move( client ) ), property_( std::move( property ) ), position_( std::move( pos ) )
32 {
33 }
34 const std::string& client() const { return client_; }
35 const std::string& property() const { return property_; }
36 const Position& position() const { return position_; }
37 std::string FullName() const;
38 std::string ToString() const;
39 bool HasClient() const { return !client_.empty(); }
40 bool HasPosition() const { return position_.Exists(); }
41
42 private:
43 std::string client_;
44 std::string property_;
45 Position position_;
46 };
47 // ============================================================================
48 } /* Gaudi */
49 } /* Parsers */
50 // ============================================================================
51 #endif // JOBOPTIONSVC_PROPERTY_NAME_H_
Gaudi::Parsers::PropertyName::property
const std::string & property() const
Definition: PropertyName.h:35
Gaudi::Parsers::PropertyName::position_
Position position_
Definition: PropertyName.h:45
std::string::empty
T empty(T...args)
Gaudi::Parsers::PropertyName::ToString
std::string ToString() const
Definition: PropertyName.cpp:8
Gaudi::Parsers::PropertyName::position
const Position & position() const
Definition: PropertyName.h:36
Gaudi::Parsers::PropertyName::HasPosition
bool HasPosition() const
Definition: PropertyName.h:40
Gaudi::Parsers::PropertyName::PropertyName
PropertyName(std::string client, std::string property, Position pos)
Definition: PropertyName.h:30
std
STL namespace.
Gaudi::Parsers::PropertyName::property_
std::string property_
Definition: PropertyName.h:44
Gaudi::Parsers::PropertyName::client
const std::string & client() const
Definition: PropertyName.h:34
std::string
STL class.
Gaudi::Parsers::PropertyName::FullName
std::string FullName() const
Definition: PropertyName.cpp:6
Gaudi::Parsers::Position
Definition: Position.h:15
Gaudi::Parsers::PropertyName
Definition: PropertyName.h:18
Gaudi::Parsers::PropertyName::PropertyName
PropertyName(std::string property, const Position &pos)
Definition: PropertyName.h:23
Gaudi::Parsers::PropertyName::PropertyName
PropertyName(std::string client, std::string property)
Definition: PropertyName.h:26
Gaudi::Parsers::Position::Exists
bool Exists() const
Definition: Position.h:28
Position.h
Gaudi::Parsers::PropertyName::PropertyName
PropertyName(std::string property)
Definition: PropertyName.h:22
Gaudi::Parsers::PropertyName::HasClient
bool HasClient() const
Definition: PropertyName.h:39
Gaudi::Parsers::PropertyName::client_
std::string client_
Definition: PropertyName.h:43
Gaudi
Helper functions to set/get the application return code.
Definition: __init__.py:1