@@ -40,6 +40,8 @@ using odb::dbSigType;
4040using odb::Point;
4141
4242class dbNetwork ;
43+ class dbEditHierarchy ;
44+
4345// This class handles callbacks from the network to the listeners
4446class dbNetworkObserver
4547{
@@ -58,6 +60,8 @@ class dbNetworkObserver
5860// ConcreteNetwork is used for library/cell/port functions only.
5961class dbNetwork : public ConcreteNetwork
6062{
63+ friend class dbEditHierarchy ;
64+
6165 public:
6266 dbNetwork ();
6367 ~dbNetwork () override ;
@@ -168,20 +172,10 @@ class dbNetwork : public ConcreteNetwork
168172 bool hier = false );
169173 Instance* getOwningInstanceParent (Pin* pin);
170174
171- bool ConnectionToModuleExists (dbITerm* source_pin,
172- dbModule* dest_module,
173- dbModBTerm*& dest_modbterm,
174- dbModITerm*& dest_moditerm);
175-
176175 bool connected (Pin* source_pin, Pin* dest_pin);
177176 void hierarchicalConnect (dbITerm* source_pin,
178177 dbITerm* dest_pin,
179- const char * connection_name);
180-
181- void getParentHierarchy (dbModule* start_module,
182- std::vector<dbModule*>& parent_hierarchy) const ;
183- dbModule* findHighestCommonModule (std::vector<dbModule*>& itree1,
184- std::vector<dbModule*>& itree2);
178+ const char * connection_name = " net" );
185179 Instance* findHierInstance (const char * name);
186180 void replaceHierModule (dbModInst* mod_inst, dbModule* module );
187181 void removeUnusedPortsAndPinsOnModuleInstances ();
@@ -418,6 +412,7 @@ class dbNetwork : public ConcreteNetwork
418412 bool hierarchy_ = false ;
419413 std::set<const Cell*> concrete_cells_;
420414 std::set<const Port*> concrete_ports_;
415+ std::unique_ptr<dbEditHierarchy> hierarchy_editor_;
421416};
422417
423418} // namespace sta
0 commit comments