File topo_cache.hpp

namespace busclique
template<typename topo_spec>
class topo_cache
#include <topo_cache.hpp>

Public Functions

topo_cache(const topo_cache&) = delete
topo_cache(topo_cache&&) = delete
inline ~topo_cache()
inline topo_cache(const pegasus_spec t, const vector<size_t> &nodes, const vector<pair<size_t, size_t>> &edges)
inline topo_cache(const chimera_spec t, const vector<size_t> &nodes, const vector<pair<size_t, size_t>> &edges)
inline void reset()
inline bool next()

Public Members

const topo_spec topo
const cell_cache<topo_spec> cells

Private Functions

inline _initializer_tag _initialize(const vector<size_t> &nodes, const vector<pair<size_t, size_t>> &edges)
inline void compute_bad_edges()

Private Members

uint8_t *nodemask
uint8_t *edgemask
uint8_t *badmask
vector<pair<size_t, size_t>> bad_edges
uint8_t mask_num
_initializer_tag _init
uint8_t *child_nodemask
uint8_t *child_edgemask
class _initializer_tag