9#include "Acts/Utilities/Enumerate.hpp"
22 m_connector = std::make_unique<NodeConnector>(conName, evalFunc);
32 if (
m_features[f]->name() != other.m_features[f]->name()) {
44 std::vector<std::string> names{};
45 std::ranges::transform(
m_features,std::back_inserter(names),
46 [](
const Feature_t& ft){
return ft->name();});
56 msg<<MSG::ERROR<<
"No feature has been parsed. "<<
endmsg;
60 return known == newFeat ||
known->name() == newFeat->name();
62 msg<<MSG::ERROR<<
" The feature "<<newFeat->name()<<
" has already been added & "
63 <<
" cannot be added again. "<<
endmsg;
66 if (
msg.level() <= MSG::DEBUG) {
67 msg<<MSG::DEBUG<<__FILE__<<
":"<<__LINE__<<
" - Add new feature "<< newFeat->name()<<
endmsg;
75 for (
size_t sp = 0 ;
sp < bucket.size(); ++
sp) {
81 for (
size_t ot = 0; ot <
sp; ++ot) {
86 prepGraph.
srcEdges.emplace_back(from);
90 prepGraph.
desEdges.emplace_back(from);
std::function< bool(const Bucket_t &, size_t, size_t)> Evaluator_t
Function type to connect two space points in a bucket.
bool operator==(const NodeFeatureList &other) const
Returns true if the features have pairwise the same name.
std::shared_ptr< const NodeFeature > Feature_t
size_t numFeatures() const
Returns the number of features in the list.
bool setConnector(const std::string &conName, MsgStream &msg)
Tries to set the graph connector based on the connector name.
std::vector< Feature_t > m_features
NodeFeature::Bucket_t Bucket_t
bool isValid() const
Returns whether the NodeFeatureList is complete, i.e.
std::vector< std::string > featureNames() const
Returns the name of the features in the list.
NodeFeatureList()=default
Empty standard constructor.
void fillInData(const Bucket_t &bucket, GraphRawData &graphData) const
bool addFeature(const std::string &featName, MsgStream &msg)
Tries to add a new feature to the list using the predefined list of features in the GraphFeatureFacto...
NodeFeatureList::Connector_t makeConnector(const std::string &connName, MsgStream &log)
Factory function that builds a connector relation between two edges in the bucket.
NodeFeatureList::Feature_t makeFeature(const std::string &featName, MsgStream &log)
Factory function that builds a NodeFeature from a predefined list of features.
This header ties the generic definitions in this package.
Helper struct to ship the Graph from the space point buckets to ONNX.
FeatureVec_t featureLeaves
Vector containing all features.
unsigned int nodeIndex
Number of the already filled nodes.
std::vector< float >::iterator currLeave
The following variables are needed to fill the consistently the raw data for the Graph Building.
EdgeCounterVec_t srcEdges
Vector encoding the source index of the.
EdgeCounterVec_t desEdges
Vect.