Ignore:
Timestamp:
12/07/21 12:00:23 (3 years ago)
Author:
ymipsl
Message:
  • Solve memory leak from remapper.
  • shared_ptr add add for manage nodes.

YM

File:
1 edited

Legend:

Unmodified
Added
Removed
  • XIOS/dev/dev_ym/XIOS_COUPLING/extern/remap/src/tree.hpp

    r923 r2269  
    2020        int ri; /** this is set to one by a node in case of reinsertion */ 
    2121        vector<int> levelSize; /** e.g. levelSize[0] == leafs.size() */ 
    22         vector<Node> leafs; /** leafs are stored in vector for easy access and rest of the tree nodes as separate allocations, only reachable through tree traversal */ 
     22        vector<NodePtr> leafs; /** leafs are stored in vector for easy access and rest of the tree nodes as separate allocations, only reachable through tree traversal */ 
    2323 
    2424        CBasicTree() : ri(0), levelSize(MAX_LEVEL_SIZE), root(NULL), isAssignedLevel(false), okSplit(true), isActiveOkSplit(false) {}  
    2525        ~CBasicTree();  
    26         void build(vector<Node>& nodes); 
     26        void build(vector<NodePtr>& nodes); 
    2727        void slim(int nbIts = 1); 
    28         virtual void insertNodes(vector<Node>& node) = 0; 
     28        virtual void insertNodes(vector<NodePtr>& node) = 0; 
    2929 
    30         void routeNodes(vector<int>& route, vector<Node>& nodes, int assignLevel); 
    31         void routeIntersections(vector<vector<int> >& route, vector<Node>& nodes); 
     30        void routeNodes(vector<int>& route, vector<NodePtr>& nodes, int assignLevel); 
     31        void routeIntersections(vector<vector<int> >& route, vector<NodePtr>& nodes); 
    3232 
    3333        void push_back(NodePtr node); 
     
    6363{ 
    6464public: 
    65         void insertNodes(vector<Node>& nodes); 
     65        void insertNodes(vector<NodePtr>& nodes); 
    6666}; 
    6767 
     
    7373  void slimAssignedLevel() ; 
    7474  void removeExtraNode(void) ; 
    75         void insertNodes(vector<Node>& nodes); 
     75        void insertNodes(vector<NodePtr>& nodes); 
    7676}; 
    7777 
Note: See TracChangeset for help on using the changeset viewer.