public void read_activated(Pipe pipe_) 
    {
        // Skip activating if we're detaching this pipe
        if (pipe != pipe_) {
            assert (terminating_pipes.contains (pipe_));
            return;
        }
        
        if (engine != null)
            engine.activate_out ();
        else
            pipe.check_read ();
    }