The Gaudi Framework
master (6507eef1)
Toggle main menu visibility
Loading...
Searching...
No Matches
DataHandleProperty.h
Go to the documentation of this file.
1
/***********************************************************************************\
2
* (c) Copyright 1998-2026 CERN for the benefit of the LHCb and ATLAS collaborations *
3
* *
4
* This software is distributed under the terms of the Apache version 2 licence, *
5
* copied verbatim in the file "LICENSE". *
6
* *
7
* In applying this licence, CERN does not waive the privileges and immunities *
8
* granted to it by virtue of its status as an Intergovernmental Organization *
9
* or submit itself to any jurisdiction. *
10
\***********************************************************************************/
11
#pragma once
12
13
#include <
Gaudi/Property.h
>
14
#include <
GaudiKernel/StatusCode.h
>
15
16
#include <iostream>
17
18
namespace
Gaudi
{
19
class
DataHandle
;
20
class
DataHandleVectorBase
;
21
}
// namespace Gaudi
22
23
//---------------------------------------------------------------------------
24
32
33
//---------------------------------------------------------------------------
34
35
class
GAUDI_API
DataHandleVectorProperty
:
public
PropertyWithHandlers
<> {
36
public
:
37
DataHandleVectorProperty
(
const
std::string&
name
,
Gaudi::DataHandleVectorBase
& ref );
38
DataHandleVectorProperty
&
operator=
(
const
Gaudi::DataHandleVectorBase
&
value
);
39
40
DataHandleVectorProperty
*
clone
()
const override
;
41
bool
load
(
Gaudi::Details::PropertyBase
& destination )
const override
;
42
bool
assign
(
const
Gaudi::Details::PropertyBase
& source )
override
;
43
std::string
toString
()
const override
;
44
void
toStream
( std::ostream& out )
const override
;
45
StatusCode
fromString
(
const
std::string& s )
override
;
46
const
Gaudi::DataHandleVectorBase
&
value
()
const
;
47
bool
setValue
(
const
Gaudi::DataHandleVectorBase
&
value
);
48
49
protected
:
53
Gaudi::DataHandleVectorBase
*
m_pValue
=
nullptr
;
54
};
55
56
class
GAUDI_API
DataHandleProperty
:
public
PropertyWithHandlers
<> {
57
public
:
58
DataHandleProperty
(
const
std::string&
name
,
Gaudi::DataHandle
& ref );
59
DataHandleProperty
&
operator=
(
const
Gaudi::DataHandle
&
value
);
60
61
DataHandleProperty
*
clone
()
const override
;
62
bool
load
(
Gaudi::Details::PropertyBase
& destination )
const override
;
63
bool
assign
(
const
Gaudi::Details::PropertyBase
& source )
override
;
64
std::string
toString
()
const override
;
65
void
toStream
( std::ostream& out )
const override
;
66
StatusCode
fromString
(
const
std::string& s )
override
;
67
const
Gaudi::DataHandle
&
value
()
const
;
68
bool
setValue
(
const
Gaudi::DataHandle
&
value
);
69
70
protected
:
74
Gaudi::DataHandle
*
m_pValue
=
nullptr
;
75
};
Property.h
GAUDI_API
#define GAUDI_API
Definition
Kernel.h:49
StatusCode.h
DataHandleProperty::DataHandleProperty
DataHandleProperty(const std::string &name, Gaudi::DataHandle &ref)
Definition
DataHandleProperty.cpp:102
DataHandleProperty::m_pValue
Gaudi::DataHandle * m_pValue
Pointer to the real property.
Definition
DataHandleProperty.h:74
DataHandleProperty::value
const Gaudi::DataHandle & value() const
Definition
DataHandleProperty.cpp:155
DataHandleProperty::setValue
bool setValue(const Gaudi::DataHandle &value)
Definition
DataHandleProperty.cpp:114
DataHandleVectorProperty::DataHandleVectorProperty
DataHandleVectorProperty(const std::string &name, Gaudi::DataHandleVectorBase &ref)
Definition
DataHandleProperty.cpp:36
DataHandleVectorProperty::m_pValue
Gaudi::DataHandleVectorBase * m_pValue
Pointer to the real property.
Definition
DataHandleProperty.h:53
DataHandleVectorProperty::setValue
bool setValue(const Gaudi::DataHandleVectorBase &value)
Definition
DataHandleProperty.cpp:52
DataHandleVectorProperty::value
const Gaudi::DataHandleVectorBase & value() const
Definition
DataHandleProperty.cpp:95
Gaudi::DataHandle
Definition
DataHandle.h:43
Gaudi::DataHandleVectorBase
Type-erased interface for a configurable sequence of data handles.
Definition
DataHandle.h:100
Gaudi::Details::PropertyBase
PropertyBase base class allowing PropertyBase* collections to be "homogeneous".
Definition
PropertyBase.h:34
Gaudi::Details::PropertyBase::clone
virtual PropertyBase * clone() const =0
clones the current property
Gaudi::Details::PropertyBase::load
virtual bool load(PropertyBase &dest) const =0
export the property value to the destination
Gaudi::Details::PropertyBase::toString
virtual std::string toString() const =0
value -> string
Gaudi::Details::PropertyBase::toStream
virtual void toStream(std::ostream &out) const =0
value -> stream
Gaudi::Details::PropertyBase::assign
virtual bool assign(const PropertyBase &source)=0
import the property value form the source
Gaudi::Details::PropertyBase::fromString
virtual StatusCode fromString(const std::string &value)=0
string -> value
Gaudi::Details::PropertyBase::operator=
PropertyBase & operator=(const PropertyBase &)=default
assignment operator
Gaudi::Details::PropertyBase::name
const std::string name() const
property name
Definition
PropertyBase.h:38
PropertyWithHandlers
Helper class to simplify the migration old properties deriving directly from PropertyBase.
Definition
Property.h:582
StatusCode
This class is used for returning status codes from appropriate routines.
Definition
StatusCode.h:64
Gaudi
This file provides a Grammar for the type Gaudi::Accumulators::Axis It allows to use that type from p...
Definition
__init__.py:1
GaudiKernel
include
GaudiKernel
DataHandleProperty.h
Generated on
for The Gaudi Framework by
1.17.0