code: func NewNodeInfo(pods ...*v1.Pod) *NodeInfo {
  	ni := &NodeInfo{
  		requestedResource:   &Resource{},
  		nonzeroRequest:      &Resource{},
  		allocatableResource: &Resource{},
  		TransientInfo:       NewTransientSchedulerInfo(),
  		generation:          nextGeneration(),
  		usedPorts:           make(HostPortInfo),
  		imageStates:         make(map[string]*ImageStateSummary),
  	}
  	for _, pod := range pods {
  		ni.AddPod(pod)
  	}
  	return ni
  }
docs: // NewNodeInfo returns a ready to use empty NodeInfo object.
  // If any pods are given in arguments, their information will be aggregated in
  // the returned object.