code: func (t *ProgressEmitter) Register(s *sharedPullerState) {
  	t.mut.Lock()
  	defer t.mut.Unlock()
  	if t.disabled {
  		l.Debugln("progress emitter: disabled, skip registering")
  		return
  	}
  	l.Debugln("progress emitter: registering", s.folder, s.file.Name)
  	if t.emptyLocked() {
  		t.timer.Reset(t.interval)
  	}
  	if _, ok := t.registry[s.folder]; !ok {
  		t.registry[s.folder] = make(map[string]*sharedPullerState)
  	}
  	t.registry[s.folder][s.file.Name] = s
  }
docs: // Register a puller with the emitter which will start broadcasting pullers
  // progress.