13#ifndef GEOMODELUTILITIES_GEOGETIDS_H
14#define GEOMODELUTILITIES_GEOGETIDS_H
19#include "GeoModelKernel/GeoNodeAction.h"
40 :
public GeoNodeAction
58template <
class FUNCTION>
81template <
class FUNCTION>
82void geoGetIds (FUNCTION f,
const GeoGraphNode*
node,
int depthLimit = 1)
86 node->exec (&visitor);
void geoGetIds(FUNCTION f, const GeoGraphNode *node, int depthLimit=1)
Template helper for running the visitor.
Callback object calling a templated functional.
virtual void operator()(int id) override
GeoGetIdsAction(FUNCTION f)
Visitor to traverse a GeoModel graph and make a callback for each identifier found.
virtual void handleIdentifierTag(const GeoIdentifierTag *idTag) override
virtual void handleSerialIdentifier(const GeoSerialIdentifier *sI) override
IGeoGetIdsAction & m_action
virtual void handleSerialTransformer(const GeoSerialTransformer *sT) override
GeoGetIds(IGeoGetIdsAction &action, int depthLimit=1)
const GeoSerialIdentifier * m_serialIdentifier
Ensure that the extensions for the Vector3D are properly loaded.
virtual void operator()(int id)=0
virtual ~IGeoGetIdsAction()=default