Program Listing for File SelectiveCommunityDetector.hpp

Return to documentation for file (include/networkit/scd/SelectiveCommunityDetector.hpp)

/*
 * SelectiveCommunityDetector.hpp
 *
 *  Created on: 15.05.2013
 *      Author: cls
 */

#ifndef NETWORKIT_SCD_SELECTIVE_COMMUNITY_DETECTOR_HPP_
#define NETWORKIT_SCD_SELECTIVE_COMMUNITY_DETECTOR_HPP_

#include <map>
#include <set>

#include <networkit/auxiliary/Timer.hpp>
#include <networkit/graph/Graph.hpp>

namespace NetworKit {

class SelectiveCommunityDetector {

public:
    SelectiveCommunityDetector(const Graph &g);

    virtual ~SelectiveCommunityDetector() = default;

    virtual std::map<node, std::set<node>> run(const std::set<node> &seeds);

    virtual std::set<node> expandOneCommunity(node seed);

    virtual std::set<node> expandOneCommunity(const std::set<node> &seeds) = 0;

protected:
    const Graph *g;
};

} /* namespace NetworKit */
#endif // NETWORKIT_SCD_SELECTIVE_COMMUNITY_DETECTOR_HPP_