The Gaudi Framework
master (37c0b60a)
HistoProperty.h
Go to the documentation of this file.
1
/***********************************************************************************\
2
* (c) Copyright 1998-2024 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
#ifndef GAUDIKERNEL_HISTOPROPERTY_H
12
#define GAUDIKERNEL_HISTOPROPERTY_H 1
13
// ============================================================================
14
// Include files
15
// ============================================================================
16
// GaudiKernel
17
// ============================================================================
18
#include <
Gaudi/Property.h
>
19
#include <
GaudiKernel/HistoDef.h
>
20
namespace
Gaudi
{
21
namespace
Details {
22
namespace
Property {
23
// ============================================================================
29
template
<>
30
inline
void
BoundedVerifier<Gaudi::Histo1DDef>::operator()
(
const
Gaudi::Histo1DDef
& value )
const
{
31
if
( !value.
ok
() || ( m_hasLowerBound && ( value < m_lowerBound ) ) ||
32
( m_hasUpperBound && ( m_upperBound < value ) ) )
33
throw
std::out_of_range
(
"value "
+
Gaudi::Utils::toString
( value ) +
" outside range"
);
34
}
35
// ============================================================================
40
template
<>
41
inline
void
NullVerifier::operator()<
Gaudi::Histo1DDef
>(
const
Gaudi::Histo1DDef
& value )
const
{
42
if
( !value.ok() )
throw
std::invalid_argument
(
"bad value "
+
Gaudi::Utils::toString
( value ) );
43
}
44
// ============================================================================
45
}
// namespace Property
46
}
// namespace Details
47
}
// namespace Gaudi
48
// ============================================================================
50
typedef
Gaudi::Property<Gaudi::Histo1DDef>
Histo1DProperty
;
51
// ============================================================================
53
typedef
Gaudi::Property<Gaudi::Histo1DDef&>
Histo1DPropertyRef
;
54
// ============================================================================
55
56
// ============================================================================
57
// The END
58
// ============================================================================
59
#endif // GAUDIKERNEL_HISTOPROPERTY_H
Histo1DPropertyRef
Gaudi::Property< Gaudi::Histo1DDef & > Histo1DPropertyRef
the actual type of "histogram property reference"
Definition:
HistoProperty.h:53
HistoDef.h
Histo1DProperty
Gaudi::Property< Gaudi::Histo1DDef > Histo1DProperty
the actual type of "histogram property"
Definition:
HistoProperty.h:50
Gaudi::Histo1DDef
Definition:
HistoDef.h:41
Gaudi::Histo1DDef::ok
bool ok() const
check if all fields are "reasonable"
Definition:
HistoDef.h:98
std::invalid_argument
STL class.
Gaudi
This file provides a Grammar for the type Gaudi::Accumulators::Axis It allows to use that type from p...
Definition:
__init__.py:1
Gaudi::Utils::toString
std::string toString(const TYPE &obj)
the generic implementation of the type conversion to the string
Definition:
ToStream.h:353
Gaudi::Details::Property::BoundedVerifier::operator()
void operator()(const TYPE &value) const
Definition:
Property.h:112
std::out_of_range
STL class.
Gaudi::Property< Gaudi::Histo1DDef >
Property.h
GaudiKernel
include
GaudiKernel
HistoProperty.h
Generated on Thu Dec 19 2024 15:35:01 for The Gaudi Framework by
1.8.18