#pragma once #include #include #include #include // [[Rcpp::plugins(cpp11)]] // [[Rcpp::depends(RcppParallel,RcppThread)]] #include #include namespace deduplicate { typedef std::pair str_pair; struct str_pair_hash { std::size_t operator() (const std::pair &pair) const { return std::hash () (pair.first) ^ std::hash () (pair.second); } }; typedef std::unordered_map EdgeMapType; void update_dupl_edge_map (deduplicate::EdgeMapType &edge_map, const str_pair &this_pair, const double &val); } // end namespace deduplicate Rcpp::DataFrame rcpp_deduplicate (const Rcpp::DataFrame &graph, const std::string fr_col, const std::string to_col, const std::string d_col, const std::string t_col);