code: protected function GenerateWindowsPinicon(SiteConfig $config, SiteTree $owner, &$metadata, Image $WindowsPinicon) {
  
          // header
          $metadata .= $owner->MarkupComment('Windows Pinned Icon');
  
          // application name
          $appName = $config->fetchPiniconTitle();
          if (!$appName) {
              $appName = $config->Title;
          }
          $metadata .= $owner->MarkupMeta('application-name', $appName);
  
          // tile background color
          if ($config->fetchWindowsPiniconBackgroundColor()) {
              $metadata .= $owner->MarkupMeta('msapplication-TileColor', $config->fetchWindowsPiniconBackgroundColor());
          }
  
          // small tile
          $metadata .= $owner->MarkupMeta('msapplication-square70x70logo', $WindowsPinicon->Fill(70, 70)->getAbsoluteURL());
  
          // medium tile
          $metadata .= $owner->MarkupMeta('msapplication-square150x150logo', $WindowsPinicon->Fill(150, 150)->getAbsoluteURL());
  
          // @todo: Implement wide & tall tiles
  
          // wide tile
  //			$metadata .= $owner->MarkupMeta('msapplication-square310x150logo', $WindowsPinicon->Fill(310,150)->getAbsoluteURL());
  
          // large tile
  //			$metadata .= $owner->MarkupMeta('msapplication-square310x310logo', $WindowsPinicon->Fill(310,310)->getAbsoluteURL());
  
      }
docs: Generates markup for the Windows pinicon
  
  @param SiteConfig $config
  @param SiteTree $owner
  @param $metadata
  @param Image $WindowsPinicon
  
  @return void