@Override public void visit(Design design) { preFilter(design); // initialize a design's gate depth designMaxGateDepth = 0; unbreakableGateDepth = 0; traverse(design); // set a design's max gate depth design.setMaxGateDepth(designMaxGateDepth); if (_schedule.db) _schedule.ln(_schedule.GDA, design + ", maximum gate depth: " + design.getMaxGateDepth()); design.setUnbreakableGateDepth(unbreakableGateDepth); if (_schedule.db) _schedule.ln( _schedule.GDA, design + ", maximum unbreakable gate depth: " + design.getUnbreakableGateDepth()); postFilter(design); }