Remove backedges from cyclegraph
authorbdemsky <bdemsky@uci.edu>
Wed, 12 Jun 2019 20:38:39 +0000 (13:38 -0700)
committerbdemsky <bdemsky@uci.edu>
Wed, 12 Jun 2019 20:38:39 +0000 (13:38 -0700)
cyclegraph.cc
cyclegraph.h

index 8acbb4edcfd5db2f719fb5f2c9d85422047b3a10..36f64a43a16885217d1b4d75cfa5e281e43d3d19 100644 (file)
@@ -342,21 +342,6 @@ unsigned int CycleNode::getNumEdges() const
        return edges.size();
 }
 
-/**
- * @param i The index of the back edge to return
- * @returns The CycleNode back-edge indexed by i
- */
-CycleNode * CycleNode::getBackEdge(unsigned int i) const
-{
-       return back_edges[i];
-}
-
-/** @returns The number of edges entering this CycleNode */
-unsigned int CycleNode::getNumBackEdges() const
-{
-       return back_edges.size();
-}
-
 /**
  * @brief Remove an element from a vector
  * @param v The vector
@@ -386,22 +371,6 @@ CycleNode * CycleNode::removeEdge()
 
        CycleNode *ret = edges.back();
        edges.pop_back();
-       vector_remove_node(ret->back_edges, this);
-       return ret;
-}
-
-/**
- * @brief Remove a (back) edge from this CycleNode
- * @return The CycleNode which was popped, if one exists; otherwise NULL
- */
-CycleNode * CycleNode::removeBackEdge()
-{
-       if (back_edges.empty())
-               return NULL;
-
-       CycleNode *ret = back_edges.back();
-       back_edges.pop_back();
-       vector_remove_node(ret->edges, this);
        return ret;
 }
 
@@ -416,7 +385,6 @@ bool CycleNode::addEdge(CycleNode *node)
                if (edges[i] == node)
                        return false;
        edges.push_back(node);
-       node->back_edges.push_back(this);
        return true;
 }
 
index 7a90f5cf3318ec039c8fc2f14fc8469dfe57d50d..fefe34401c15038484bd44389b4da44a80cc56ec 100644 (file)
@@ -86,10 +86,7 @@ public:
        bool addEdge(CycleNode *node);
        CycleNode * getEdge(unsigned int i) const;
        unsigned int getNumEdges() const;
-       CycleNode * getBackEdge(unsigned int i) const;
-       unsigned int getNumBackEdges() const;
        CycleNode * removeEdge();
-       CycleNode * removeBackEdge();
 
        bool setRMW(CycleNode *);
        CycleNode * getRMW() const;
@@ -104,9 +101,6 @@ private:
        /** @brief The edges leading out from this node */
        SnapVector<CycleNode *> edges;
 
-       /** @brief The edges leading into this node */
-       SnapVector<CycleNode *> back_edges;
-
        /** Pointer to a RMW node that reads from this node, or NULL, if none
         * exists */
        CycleNode *hasRMW;