The Gaudi Framework  master (37c0b60a)
NTupleWriterImpls.cpp
Go to the documentation of this file.
1 /***********************************************************************************\
2 * (c) Copyright 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 #include <Gaudi/NTuple/Writer.h>
12 #include <numeric>
13 #include <tuple>
14 
15 namespace Gaudi::TestSuite::NTuple {
16  struct NTupleWriter_V : Gaudi::NTuple::Writer<std::tuple<int, size_t, float>( const std::vector<int>& )> {
18  : Writer( name, svcLoc, { KeyValue( "InputLocation", { "MyVector" } ) } ) {}
19 
21  return std::make_tuple( std::accumulate( vector.begin(), vector.end(), 0 ), vector.size(), std::rand() % 20 );
22  }
23  };
24 
25  DECLARE_COMPONENT( NTupleWriter_V )
26 } // namespace Gaudi::TestSuite::NTuple
Gaudi::TestSuite::NTuple::NTupleWriter_V::transform
std::tuple< int, size_t, float > transform(const std::vector< int > &vector) const override
Definition: NTupleWriterImpls.cpp:20
std::make_tuple
T make_tuple(T... args)
std::string
STL class.
std::vector< int >
Gaudi::TestSuite::NTuple::NTupleWriter_V::NTupleWriter_V
NTupleWriter_V(const std::string &name, ISvcLocator *svcLoc)
Definition: NTupleWriterImpls.cpp:17
ISvcLocator
Definition: ISvcLocator.h:46
std::tuple
Gaudi::TestSuite::NTuple
Definition: MyStruct.h:15
std::accumulate
T accumulate(T... args)
Gaudi::NTuple::Writer< std::tuple< int, size_t, float >(const std::vector< int > &)>::Writer
Writer()=0
std::rand
T rand(T... args)
Writer.h
Containers::vector
struct GAUDI_API vector
Parametrisation class for vector-like implementation.
Definition: KeyedObjectManager.h:39
ConditionsStallTest.name
name
Definition: ConditionsStallTest.py:77
DECLARE_COMPONENT
#define DECLARE_COMPONENT(type)
Definition: PluginServiceV1.h:46
Gaudi::NTuple::Writer
Base template for NTuple::Writer. Actual specializations of this template provide the functionality.
Definition: Writer.h:111
Gaudi::TestSuite::NTuple::NTupleWriter_V
Definition: NTupleWriterImpls.cpp:16