public function __construct($report_definition)
 {
     parent::__construct($report_definition);
     $this->reportType = 'CAMPAIGN_PERFORMANCE_REPORT';
     $this->selector = new \Selector();
     $this->selector->fields = array('Id', 'CampaignName', 'Impressions', 'Clicks', 'Ctr', 'AverageCpc', 'Cost', 'AveragePosition', 'ConversionRate', 'Conversions', 'CostPerConversion', 'ViewThroughConversions', 'ConversionRateManyPerClick', 'ConversionsManyPerClick', 'CostPerConversionManyPerClick');
     $this->field_types = array('campaignID' => 'string', 'campaign' => 'string', 'impressions' => 'int', 'clicks' => 'int', 'ctr' => 'float', 'avgCPC' => 'micro', 'cost' => 'micro', 'avgPosition' => 'float', 'clickConversionRate' => 'float', 'convertedClicks' => 'int', 'costConvertedClick' => 'micro', 'viewThroughConv' => 'int', 'convRate' => 'float', 'conversions' => 'int', 'costConv' => 'micro');
 }
 public function __construct($report_definition)
 {
     parent::__construct($report_definition);
     $this->reportType = 'PLACEMENT_PERFORMANCE_REPORT';
     $this->selector = new \Selector();
     $this->selector->fields = array('Id', 'DisplayName', 'CampaignName', 'CampaignId', 'AdGroupName', 'AdGroupId', 'PlacementUrl', 'Impressions', 'Clicks', 'Ctr', 'AverageCpc', 'Cost', 'ConversionRate', 'Conversions', 'CostPerConversion', 'ViewThroughConversions', 'ConversionRateManyPerClick', 'ConversionsManyPerClick', 'CostPerConversionManyPerClick');
     $this->field_types = array('criterionID' => 'string', 'criteriaDisplayName' => 'string', 'campaign' => 'string', 'campaignID' => 'string', 'adGroup' => 'string', 'adGroupID' => 'string', 'placement' => 'string', 'impressions' => 'int', 'clicks' => 'int', 'ctr' => 'float', 'avgCPC' => 'micro', 'cost' => 'micro', 'clickConversionRate' => 'float', 'convertedClicks' => 'int', 'costConvertedClick' => 'micro', 'viewThroughConv' => 'int', 'convRate' => 'float', 'conversions' => 'int', 'costConv' => 'micro');
 }
 public function __construct($report_definition)
 {
     parent::__construct($report_definition);
     $this->reportType = 'AD_PERFORMANCE_REPORT';
     $this->selector = new \Selector();
     $this->selector->fields = array('CampaignName', 'CampaignId', 'AdGroupName', 'Headline', 'Description1', 'Description2', 'Url', 'Impressions', 'Clicks', 'Ctr', 'AverageCpc', 'Cost', 'AveragePosition', 'DisplayUrl', 'ImageAdUrl', 'AdType', 'ConversionRate', 'Conversions', 'CostPerConversion', 'ViewThroughConversions', 'ConversionRateManyPerClick', 'ConversionsManyPerClick', 'CostPerConversionManyPerClick');
     $this->field_types = array('campaign' => 'string', 'campaignID' => 'string', 'adGroup' => 'string', 'ad' => 'string', 'descriptionLine1' => 'string', 'descriptionLine2' => 'string', 'destinationURL' => 'string', 'impressions' => 'int', 'clicks' => 'int', 'ctr' => 'float', 'avgCPC' => 'micro', 'cost' => 'micro', 'avgPosition' => 'float', 'displayURL' => 'string', 'imageAdURL' => 'string', 'adType' => 'string', 'clickConversionRate' => 'float', 'convertedClicks' => 'int', 'costConvertedClick' => 'micro', 'viewThroughConv' => 'int', 'convRate' => 'float', 'conversions' => 'int', 'costConv' => 'micro');
 }
 public function __construct(\ReportDefinition $report_definition)
 {
     parent::__construct($report_definition);
     $this->reportType = 'CAMPAIGN_PERFORMANCE_REPORT';
     $this->selector = new \Selector();
     $this->selector->fields = array('Amount', 'AverageCpc', 'AveragePosition', 'CampaignName', 'Clicks');
 }