Skip to content
Snippets Groups Projects
Commit d06572e2 authored by vincent  lorrain's avatar vincent lorrain
Browse files

[graphRegex] init

parent a5eb92e1
No related branches found
No related tags found
1 merge request!29GraphRegex interface class
Pipeline #32920 failed
#ifndef AIDGE_CORE_GRAPH_REGEX_H_
#define AIDGE_CORE_GRAPH_PARSER_H_
#include <string>
#include "aidge/graphRegex/matchFsm/MatchResult.hpp"
#include "aidge/graph/GraphView.hpp"
#include "aidge/graph/Node.hpp"
namespace Aidge{
/**
* @brief class which is the hight level interface for graph matching, used to simplify match definition
*
*/
class GraphParser{
private:
public:
GraphParser();
virtual ~GraphParser() = default;
/**
* @brief add a topology query to the match
* @param query the topology query to find
**/
void addQuery(const std::string query);
/**
* @brief get all the types of a graph and set it as type key in the query
* @param Reference graph use to get all the node types
**/
void setKeyGraphOp(std::shared_ptr<GraphView> Reference);
/**
* @brief set a node test manually
* @param key the ref of this test used in the query
* @param ConditionalExpressions expression to test the node
**/
void setQueryKey(const std::string key, const std::string ConditionalExpressions );
/**
* @brief set a specific lambda that can be used in setQueryKey
* @param key ref to the lambda to use in the
* @param f expression to test the node ConditionalExpressions
**/
void setKeyLambda(const std::string key,std::function<bool(Aidge::NodePtr)> f);
/***
* @brief brief match the querys in the graph
* @param Reference the graph were the querys in search
*/
std::shared_ptr<MatchResult> match(std::shared_ptr<GraphView> Reference);
};
}
#endif //AIDGE_CORE_GRAPH_PARSER_H_
\ No newline at end of file
#include <catch2/catch_test_macros.hpp>
#include "aidge/graphRegex/GraphRegex.hpp"
using namespace Aidge;
TEST_CASE("GraphRegex") {
SECTION("Empty") {
}
}
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment