 |
Belle II Software
release-05-02-19
|
12 #include <tracking/trackFindingCDC/varsets/BaseVarSet.h>
13 #include <tracking/trackFindingCDC/varsets/UnionVarSet.h>
15 #include <tracking/trackFindingCDC/utilities/EvalVariadic.h>
16 #include <tracking/trackFindingCDC/utilities/Named.h>
17 #include <tracking/trackFindingCDC/utilities/MakeUnique.h>
18 #include <tracking/trackFindingCDC/utilities/MayBePtr.h>
29 namespace TrackFindingCDC {
38 template <
class... AVarSets>
39 class VariadicUnionVarSet :
public BaseVarSet<typename FirstType<AVarSets...>::Object> {
43 using Super = BaseVarSet<
typename FirstType<AVarSets...>
::Object>;
85 std::vector<Named<Float_t*>>
getNamedVariables(
const std::string& prefix)
override
94 MayBePtr<Float_t>
find(
const std::string& varName)
override
MayBePtr< Float_t > find(const std::string &varName) override
Pointer to the variable with the given name.
std::vector< Named< Float_t * > > getNamedVariables(const std::string &prefix) override
Getter for the named references to the individual variables Base implementaton returns empty vector.
UnionVarSet< Object > m_multiVarSet
Container for the multiple variable sets.
void initialize() final
Initialize all contained variable set before event processing.
virtual bool extract(const Object *obj __attribute__((unused)))
Main method that extracts the variable values from the complex object.
void push_back(std::unique_ptr< ContainedVarSet > varSet)
Add a variable set to the contained variable sets.
size_t size() const
Return the number of currently contained variable sets.
void addProcessingSignalListener(ProcessingSignalListener *psl)
Register a processing signal listener to be notified.
void initialize() override
Receive and dispatch signal before the start of the event processing.
bool extract(const Object *obj) final
Main method that extracts the variable values from the complex object.
std::vector< Named< Float_t * > > getNamedVariables()
Getter for the named references to the individual variables.
typename Super::Object Object
Object type from which variables shall be extracted.
Structure to serve as a placeholder for a variadic initializer list of statements to be evaluated.
bool extract(const Object *obj) final
Main method that extracts the variable values from the complex object.
Abstract base class for different kinds of events.
MayBePtr< Float_t > find(const std::string &varName) override
Pointer to the variable with the given name.
VariadicUnionVarSet()
Create the union variable set.
AObject Object
Object type from which variables shall be extracted.
BaseVarSet< typename FirstType< AVarSets... >::Object > Super
Type of the super class.