Program Listing for File Matcher.hpp

Return to documentation for file (include/networkit/matching/Matcher.hpp)

/*
 * Matcher.hpp
 *
 *  Created on: 30.10.2012
 *      Author: Christian Staudt
 */

#ifndef NETWORKIT_MATCHING_MATCHER_HPP_
#define NETWORKIT_MATCHING_MATCHER_HPP_

#include <networkit/base/Algorithm.hpp>
#include <networkit/matching/Matching.hpp>

namespace NetworKit {

class Matcher : public Algorithm {
protected:
    const Graph *G;
    Matching M;
    bool edgeScoresAsWeights; //<! if true, algorithm should use edge scores instead of edge weights
    const std::vector<double>
        edgeScores; //<! optional edge scores to be used instead of edge weight

public:
    Matcher(const Graph &G);

    Matcher(const Graph &G, const std::vector<double> &edgeScores);

    ~Matcher() override = default;

    void run() override = 0;

    Matching getMatching() const;
};

} /* namespace NetworKit */
#endif // NETWORKIT_MATCHING_MATCHER_HPP_