code: public function updateMetadata(SiteConfig $config, SiteTree $owner, &$metadata)
      {
  
          //// HTML4 Favicon
  
          // @todo Perhaps create dynamic image, but just use favicon.ico for now
  
          //// Create Favicons
  
          $HTML5Favicon = $config->HTML5Favicon();
          $IOSPinicon = $config->IOSPinicon();
          $AndroidPinicon = $config->AndroidPinicon();
          $WindowsPinicon = $config->WindowsPinicon();
  
          //// iOS Pinicon
  
          if ($IOSPinicon->exists()) {
              $this->GenerateIOSPinicon($config, $owner, $metadata, $IOSPinicon);
          }
  
          //// HTML5 Favicon
  
          if ($HTML5Favicon->exists()) {
              $this->GenerateHTML5Favicon($owner, $metadata, $HTML5Favicon);
          }
  
          //// Android Pinicon Manifest
  
          if ($AndroidPinicon->exists()) {
              $this->GenerateAndroidPinicon($config, $owner, $metadata);
          }
  
          //// Windows Pinicon Manifest
  
          if ($WindowsPinicon->exists()) {
              $this->GenerateWindowsPinicon($config, $owner, $metadata, $WindowsPinicon);
          }
  
      }
docs: Updates metadata with icons.
  
  @param SiteConfig $config
  @param SiteTree $owner
  @param $metadata
  
  @return void