<?php
# Generated by the protocol buffer compiler.  DO NOT EDIT!
# source: google/ads/googleads/v25/services/benchmarks_service.proto

namespace Google\Ads\GoogleAds\V25\Services;

use Google\Protobuf\Internal\GPBType;
use Google\Protobuf\Internal\GPBUtil;
use Google\Protobuf\RepeatedField;

/**
 * Metrics representing the customer’s competitive standing among advertisers
 * scoped by the analysis.
 * Percentile tier values classify the customer's percentile rank among other
 * advertisers scoped by the analysis. For example, EMERGING_PLAYER indicates
 * the customer ranks between the 25th and 50th percentiles, while MARKET_LEADER
 * indicates they rank in the top 10%.
 *
 * Generated from protobuf message <code>google.ads.googleads.v25.services.PercentileMetrics</code>
 */
class PercentileMetrics extends \Google\Protobuf\Internal\Message
{
    /**
     * The customer's cost percentile tier.
     *
     * Generated from protobuf field <code>.google.ads.googleads.v25.enums.BenchmarksCustomerPercentileTierEnum.BenchmarksCustomerPercentileTier cost_percentile_tier = 1;</code>
     */
    protected $cost_percentile_tier = 0;
    /**
     * The customer's video TrueView views percentile tier.
     *
     * Generated from protobuf field <code>.google.ads.googleads.v25.enums.BenchmarksCustomerPercentileTierEnum.BenchmarksCustomerPercentileTier video_trueview_views_percentile_tier = 2;</code>
     */
    protected $video_trueview_views_percentile_tier = 0;
    /**
     * The customer's impressions percentile tier.
     *
     * Generated from protobuf field <code>.google.ads.googleads.v25.enums.BenchmarksCustomerPercentileTierEnum.BenchmarksCustomerPercentileTier impressions_percentile_tier = 3;</code>
     */
    protected $impressions_percentile_tier = 0;
    /**
     * The customer's viewable impressions percentile tier.
     *
     * Generated from protobuf field <code>.google.ads.googleads.v25.enums.BenchmarksCustomerPercentileTierEnum.BenchmarksCustomerPercentileTier viewable_impressions_percentile_tier = 4;</code>
     */
    protected $viewable_impressions_percentile_tier = 0;
    /**
     * The customer's clicks percentile tier.
     *
     * Generated from protobuf field <code>.google.ads.googleads.v25.enums.BenchmarksCustomerPercentileTierEnum.BenchmarksCustomerPercentileTier clicks_percentile_tier = 5;</code>
     */
    protected $clicks_percentile_tier = 0;
    /**
     * The customer's interactions percentile tier.
     *
     * Generated from protobuf field <code>.google.ads.googleads.v25.enums.BenchmarksCustomerPercentileTierEnum.BenchmarksCustomerPercentileTier interactions_percentile_tier = 6;</code>
     */
    protected $interactions_percentile_tier = 0;
    /**
     * The customer's engagements percentile tier.
     *
     * Generated from protobuf field <code>.google.ads.googleads.v25.enums.BenchmarksCustomerPercentileTierEnum.BenchmarksCustomerPercentileTier engagements_percentile_tier = 7;</code>
     */
    protected $engagements_percentile_tier = 0;

    /**
     * Constructor.
     *
     * @param array $data {
     *     Optional. Data for populating the Message object.
     *
     *     @type int $cost_percentile_tier
     *           The customer's cost percentile tier.
     *     @type int $video_trueview_views_percentile_tier
     *           The customer's video TrueView views percentile tier.
     *     @type int $impressions_percentile_tier
     *           The customer's impressions percentile tier.
     *     @type int $viewable_impressions_percentile_tier
     *           The customer's viewable impressions percentile tier.
     *     @type int $clicks_percentile_tier
     *           The customer's clicks percentile tier.
     *     @type int $interactions_percentile_tier
     *           The customer's interactions percentile tier.
     *     @type int $engagements_percentile_tier
     *           The customer's engagements percentile tier.
     * }
     */
    public function __construct($data = NULL) {
        \GPBMetadata\Google\Ads\GoogleAds\V25\Services\BenchmarksService::initOnce();
        parent::__construct($data);
    }

    /**
     * The customer's cost percentile tier.
     *
     * Generated from protobuf field <code>.google.ads.googleads.v25.enums.BenchmarksCustomerPercentileTierEnum.BenchmarksCustomerPercentileTier cost_percentile_tier = 1;</code>
     * @return int
     */
    public function getCostPercentileTier()
    {
        return $this->cost_percentile_tier;
    }

    /**
     * The customer's cost percentile tier.
     *
     * Generated from protobuf field <code>.google.ads.googleads.v25.enums.BenchmarksCustomerPercentileTierEnum.BenchmarksCustomerPercentileTier cost_percentile_tier = 1;</code>
     * @param int $var
     * @return $this
     */
    public function setCostPercentileTier($var)
    {
        GPBUtil::checkEnum($var, \Google\Ads\GoogleAds\V25\Enums\BenchmarksCustomerPercentileTierEnum\BenchmarksCustomerPercentileTier::class);
        $this->cost_percentile_tier = $var;

        return $this;
    }

    /**
     * The customer's video TrueView views percentile tier.
     *
     * Generated from protobuf field <code>.google.ads.googleads.v25.enums.BenchmarksCustomerPercentileTierEnum.BenchmarksCustomerPercentileTier video_trueview_views_percentile_tier = 2;</code>
     * @return int
     */
    public function getVideoTrueviewViewsPercentileTier()
    {
        return $this->video_trueview_views_percentile_tier;
    }

    /**
     * The customer's video TrueView views percentile tier.
     *
     * Generated from protobuf field <code>.google.ads.googleads.v25.enums.BenchmarksCustomerPercentileTierEnum.BenchmarksCustomerPercentileTier video_trueview_views_percentile_tier = 2;</code>
     * @param int $var
     * @return $this
     */
    public function setVideoTrueviewViewsPercentileTier($var)
    {
        GPBUtil::checkEnum($var, \Google\Ads\GoogleAds\V25\Enums\BenchmarksCustomerPercentileTierEnum\BenchmarksCustomerPercentileTier::class);
        $this->video_trueview_views_percentile_tier = $var;

        return $this;
    }

    /**
     * The customer's impressions percentile tier.
     *
     * Generated from protobuf field <code>.google.ads.googleads.v25.enums.BenchmarksCustomerPercentileTierEnum.BenchmarksCustomerPercentileTier impressions_percentile_tier = 3;</code>
     * @return int
     */
    public function getImpressionsPercentileTier()
    {
        return $this->impressions_percentile_tier;
    }

    /**
     * The customer's impressions percentile tier.
     *
     * Generated from protobuf field <code>.google.ads.googleads.v25.enums.BenchmarksCustomerPercentileTierEnum.BenchmarksCustomerPercentileTier impressions_percentile_tier = 3;</code>
     * @param int $var
     * @return $this
     */
    public function setImpressionsPercentileTier($var)
    {
        GPBUtil::checkEnum($var, \Google\Ads\GoogleAds\V25\Enums\BenchmarksCustomerPercentileTierEnum\BenchmarksCustomerPercentileTier::class);
        $this->impressions_percentile_tier = $var;

        return $this;
    }

    /**
     * The customer's viewable impressions percentile tier.
     *
     * Generated from protobuf field <code>.google.ads.googleads.v25.enums.BenchmarksCustomerPercentileTierEnum.BenchmarksCustomerPercentileTier viewable_impressions_percentile_tier = 4;</code>
     * @return int
     */
    public function getViewableImpressionsPercentileTier()
    {
        return $this->viewable_impressions_percentile_tier;
    }

    /**
     * The customer's viewable impressions percentile tier.
     *
     * Generated from protobuf field <code>.google.ads.googleads.v25.enums.BenchmarksCustomerPercentileTierEnum.BenchmarksCustomerPercentileTier viewable_impressions_percentile_tier = 4;</code>
     * @param int $var
     * @return $this
     */
    public function setViewableImpressionsPercentileTier($var)
    {
        GPBUtil::checkEnum($var, \Google\Ads\GoogleAds\V25\Enums\BenchmarksCustomerPercentileTierEnum\BenchmarksCustomerPercentileTier::class);
        $this->viewable_impressions_percentile_tier = $var;

        return $this;
    }

    /**
     * The customer's clicks percentile tier.
     *
     * Generated from protobuf field <code>.google.ads.googleads.v25.enums.BenchmarksCustomerPercentileTierEnum.BenchmarksCustomerPercentileTier clicks_percentile_tier = 5;</code>
     * @return int
     */
    public function getClicksPercentileTier()
    {
        return $this->clicks_percentile_tier;
    }

    /**
     * The customer's clicks percentile tier.
     *
     * Generated from protobuf field <code>.google.ads.googleads.v25.enums.BenchmarksCustomerPercentileTierEnum.BenchmarksCustomerPercentileTier clicks_percentile_tier = 5;</code>
     * @param int $var
     * @return $this
     */
    public function setClicksPercentileTier($var)
    {
        GPBUtil::checkEnum($var, \Google\Ads\GoogleAds\V25\Enums\BenchmarksCustomerPercentileTierEnum\BenchmarksCustomerPercentileTier::class);
        $this->clicks_percentile_tier = $var;

        return $this;
    }

    /**
     * The customer's interactions percentile tier.
     *
     * Generated from protobuf field <code>.google.ads.googleads.v25.enums.BenchmarksCustomerPercentileTierEnum.BenchmarksCustomerPercentileTier interactions_percentile_tier = 6;</code>
     * @return int
     */
    public function getInteractionsPercentileTier()
    {
        return $this->interactions_percentile_tier;
    }

    /**
     * The customer's interactions percentile tier.
     *
     * Generated from protobuf field <code>.google.ads.googleads.v25.enums.BenchmarksCustomerPercentileTierEnum.BenchmarksCustomerPercentileTier interactions_percentile_tier = 6;</code>
     * @param int $var
     * @return $this
     */
    public function setInteractionsPercentileTier($var)
    {
        GPBUtil::checkEnum($var, \Google\Ads\GoogleAds\V25\Enums\BenchmarksCustomerPercentileTierEnum\BenchmarksCustomerPercentileTier::class);
        $this->interactions_percentile_tier = $var;

        return $this;
    }

    /**
     * The customer's engagements percentile tier.
     *
     * Generated from protobuf field <code>.google.ads.googleads.v25.enums.BenchmarksCustomerPercentileTierEnum.BenchmarksCustomerPercentileTier engagements_percentile_tier = 7;</code>
     * @return int
     */
    public function getEngagementsPercentileTier()
    {
        return $this->engagements_percentile_tier;
    }

    /**
     * The customer's engagements percentile tier.
     *
     * Generated from protobuf field <code>.google.ads.googleads.v25.enums.BenchmarksCustomerPercentileTierEnum.BenchmarksCustomerPercentileTier engagements_percentile_tier = 7;</code>
     * @param int $var
     * @return $this
     */
    public function setEngagementsPercentileTier($var)
    {
        GPBUtil::checkEnum($var, \Google\Ads\GoogleAds\V25\Enums\BenchmarksCustomerPercentileTierEnum\BenchmarksCustomerPercentileTier::class);
        $this->engagements_percentile_tier = $var;

        return $this;
    }

}

