The Gaudi Framework  v40r6 (777c37dd)
Loading...
Searching...
No Matches
details.h File Reference
#include <Gaudi/Algorithm.h>
#include <GaudiKernel/Algorithm.h>
#include <GaudiKernel/DataObjectHandle.h>
#include <GaudiKernel/GaudiException.h>
#include <GaudiKernel/IBinder.h>
#include <GaudiKernel/ThreadLocalContext.h>
#include <algorithm>
#include <array>
#include <cassert>
#include <functional>
#include <iterator>
#include <memory>
#include <optional>
#include <source_location>
#include <sstream>
#include <tuple>
#include <type_traits>
#include <utility>
#include <vector>
#include "deprecated.h"
#include "zip.h"
Include dependency graph for details.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  Gaudi::Functional::details::details2::value_type_of< T >
 
struct  Gaudi::Functional::details::details2::value_type_of< T >
 
struct  Gaudi::Functional::details::invoke_optionally_t
 
struct  Gaudi::Functional::details::insert_t
 
struct  Gaudi::Functional::details::deref_t
 
struct  Gaudi::Functional::details::details2::get_from_handle< In >
 
class  Gaudi::Functional::details::details2::indirect_iterator< Iterator >
 
class  Gaudi::Functional::details::vector_of_const_< Container >
 
class  Gaudi::Functional::details::HandleVector< Handle, I >
 
struct  Gaudi::Functional::details::HandleVector< Handle, I >::Payload
 
struct  Gaudi::Functional::details::detail2::BaseClass< Tr, Default >
 
struct  Gaudi::Functional::details::detail2::BaseClass< Tr, Default >
 
struct  Gaudi::Functional::details::detail2::OutputHandle< T, Tr, Default >
 
struct  Gaudi::Functional::details::detail2::OutputHandle< T, Tr, Default >
 
struct  Gaudi::Functional::details::detail2::InputHandle< T, Tr, Default >
 
struct  Gaudi::Functional::details::detail2::InputHandle< T, Tr, Default >
 
struct  Gaudi::Functional::details::filter_evtcontext_t< In >
 
struct  Gaudi::Functional::details::filter_evtcontext_t< EventContext, In... >
 
class  Gaudi::Functional::details::DataHandleMixin< std::tuple< Out... >, std::tuple< In... >, Traits_ >
 
class  Gaudi::Functional::details::DataHandleMixin< std::tuple< void >, std::tuple<>, Traits_ >
 

Namespaces

namespace  Gaudi
 This file provides a Grammar for the type Gaudi::Accumulators::Axis It allows to use that type from python with a format liks : ( nbins, min, max, title ) where title can be ommited.
 
namespace  Gaudi::Functional
 
namespace  Gaudi::Functional::details
 
namespace  Gaudi::Functional::details::details2
 
namespace  Gaudi::Functional::details::detail2
 

Concepts

concept  Gaudi::Functional::details::is_optional
 

Typedefs

template<typename T>
using Gaudi::Functional::details::remove_optional_t = typename details2::value_type_of<T>::type
 
template<typename Value, auto N>
using Gaudi::Functional::details::RepeatValues_ = decltype( get_values_helper<Value>( std::make_index_sequence<N>() ) )
 
template<typename Tr>
using Gaudi::Functional::details::detail2::BaseClass_t = typename Tr::BaseClass
 
template<typename T>
using Gaudi::Functional::details::detail2::DefaultInputHandle
 
template<typename Tr, typename Default = Gaudi::Algorithm>
using Gaudi::Functional::details::BaseClass_t = detail2::BaseClass<Tr, Default>::type
 
template<typename Tr, typename T>
using Gaudi::Functional::details::OutputHandle_t = typename detail2::OutputHandle<T, Tr, DataObjectWriteHandle>::type
 
template<typename Tr, typename T>
using Gaudi::Functional::details::InputHandle_t = typename detail2::InputHandle<T, Tr, detail2::DefaultInputHandle>::type
 
template<typename... In>
using Gaudi::Functional::details::filter_evtcontext = typename filter_evtcontext_t<In...>::type
 

Functions

std::vector< DataObjID > Gaudi::Functional::details::to_DataObjID (const std::vector< std::string > &in)
 
template<typename Value, std::size_t... I>
auto Gaudi::Functional::details::get_values_helper (std::index_sequence< I... >)
 
template<std::derived_from< DataObject > Out1, std::convertible_to< Out1 > Out2>
auto Gaudi::Functional::details::put (const DataObjectHandle< Out1 > &out_handle, Out2 &&out)
 
template<typename Out1, std::convertible_to< Out1 > Out2>
auto Gaudi::Functional::details::put (const DataObjectHandle< AnyDataWrapper< Out1 > > &out_handle, Out2 &&out)
 
template<typename OutHandle, typename OptOut>
requires ( is_optional<OptOut> )
void Gaudi::Functional::details::put (const OutHandle &out_handle, OptOut &&out)
 
template<template< typename > class Handle, typename... I, typename Algorithm, typename InKeys>
auto Gaudi::Functional::details::make_HandleVectorTuple (Algorithm *parent, InKeys const &keys)
 
template<template< typename > class Handle, typename... I>
decltype(auto) Gaudi::Functional::details::getLocations (std::tuple< HandleVector< Handle, I >... > const &vectors, unsigned int i)
 
template<typename F>
StatusCode Gaudi::Functional::details::execute (CommonMessagingBase const &alg, F &&f)
 
template<typename Handle, typename Algo>
auto Gaudi::Functional::details::get (const Handle &handle, const Algo &, const EventContext &) -> decltype(details::deref(handle.get()))
 
template<typename IFace, typename Algo>
auto Gaudi::Functional::details::get (const ToolHandle< Gaudi::Interface::Bind::IBinder< IFace > > &handle, const Algo &, const EventContext &ctx)
 
template<typename Handle>
auto Gaudi::Functional::details::getKey (const Handle &h) -> decltype(h.objKey())
 

Variables

constexpr struct Gaudi::Functional::details::invoke_optionally_t Gaudi::Functional::details::invoke_optionally
 
constexpr struct Gaudi::Functional::details::insert_t Gaudi::Functional::details::insert
 
constexpr struct Gaudi::Functional::details::deref_t Gaudi::Functional::details::deref
 
template<typename Traits>
constexpr bool Gaudi::Functional::details::isLegacy