↰ Return to documentation for file (include/networkit/dynamics/GraphEvent.hpp
)
/*
* GraphEvent.hpp
*
* Created on: 02.04.2013
* Author: cls
*/
#ifndef NETWORKIT_DYNAMICS_GRAPH_EVENT_HPP_
#define NETWORKIT_DYNAMICS_GRAPH_EVENT_HPP_
#include <networkit/graph/Graph.hpp>
namespace NetworKit {
class GraphEvent final {
public:
enum Type {
NODE_ADDITION,
NODE_REMOVAL,
NODE_RESTORATION,
EDGE_ADDITION,
EDGE_REMOVAL,
EDGE_WEIGHT_UPDATE,
EDGE_WEIGHT_INCREMENT,
TIME_STEP
};
Type type;
node u;
node v;
edgeweight w;
GraphEvent() = default;
GraphEvent(Type type, node u = none, node v = none, edgeweight w = defaultEdgeWeight);
bool operator==(const GraphEvent &rhs) const noexcept;
bool operator!=(const GraphEvent &rhs) const noexcept;
friend bool operator<(const GraphEvent &a, const GraphEvent &b) noexcept;
friend bool operator>(const GraphEvent &a, const GraphEvent &b) noexcept;
bool operator<=(const GraphEvent &rhs) const noexcept;
bool operator>=(const GraphEvent &rhs) const noexcept;
std::string toString() const;
};
} /* namespace NetworKit */
#endif // NETWORKIT_DYNAMICS_GRAPH_EVENT_HPP_