<?php
# Generated by the protocol buffer compiler.  DO NOT EDIT!
# NO CHECKED-IN PROTOBUF GENCODE
# source: proApiV1Status.proto

namespace Rv\Data;

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

/**
 * Generated from protobuf message <code>rv.data.API_v1_Status_Request</code>
 */
class API_v1_Status_Request extends \Google\Protobuf\Internal\Message
{
    protected $Request;

    /**
     * Constructor.
     *
     * @param array $data {
     *     Optional. Data for populating the Message object.
     *
     *     @type \Rv\Data\API_v1_Status_Request\GetLayers $get_layers
     *     @type \Rv\Data\API_v1_Status_Request\GetStageScreens $get_stage_screens
     *     @type \Rv\Data\API_v1_Status_Request\PutStageScreens $put_stage_screens
     *     @type \Rv\Data\API_v1_Status_Request\GetAudienceScreens $get_audience_screens
     *     @type \Rv\Data\API_v1_Status_Request\PutAudienceScreens $put_audience_screens
     *     @type \Rv\Data\API_v1_Status_Request\GetScreens $get_screens
     *     @type \Rv\Data\API_v1_Status_Request\GetSlide $get_slide
     * }
     */
    public function __construct($data = NULL) {
        \GPBMetadata\ProApiV1Status::initOnce();
        parent::__construct($data);
    }

    /**
     * Generated from protobuf field <code>.rv.data.API_v1_Status_Request.GetLayers get_layers = 1;</code>
     * @return \Rv\Data\API_v1_Status_Request\GetLayers|null
     */
    public function getGetLayers()
    {
        return $this->readOneof(1);
    }

    public function hasGetLayers()
    {
        return $this->hasOneof(1);
    }

    /**
     * Generated from protobuf field <code>.rv.data.API_v1_Status_Request.GetLayers get_layers = 1;</code>
     * @param \Rv\Data\API_v1_Status_Request\GetLayers $var
     * @return $this
     */
    public function setGetLayers($var)
    {
        GPBUtil::checkMessage($var, \Rv\Data\API_v1_Status_Request\GetLayers::class);
        $this->writeOneof(1, $var);

        return $this;
    }

    /**
     * Generated from protobuf field <code>.rv.data.API_v1_Status_Request.GetStageScreens get_stage_screens = 2;</code>
     * @return \Rv\Data\API_v1_Status_Request\GetStageScreens|null
     */
    public function getGetStageScreens()
    {
        return $this->readOneof(2);
    }

    public function hasGetStageScreens()
    {
        return $this->hasOneof(2);
    }

    /**
     * Generated from protobuf field <code>.rv.data.API_v1_Status_Request.GetStageScreens get_stage_screens = 2;</code>
     * @param \Rv\Data\API_v1_Status_Request\GetStageScreens $var
     * @return $this
     */
    public function setGetStageScreens($var)
    {
        GPBUtil::checkMessage($var, \Rv\Data\API_v1_Status_Request\GetStageScreens::class);
        $this->writeOneof(2, $var);

        return $this;
    }

    /**
     * Generated from protobuf field <code>.rv.data.API_v1_Status_Request.PutStageScreens put_stage_screens = 3;</code>
     * @return \Rv\Data\API_v1_Status_Request\PutStageScreens|null
     */
    public function getPutStageScreens()
    {
        return $this->readOneof(3);
    }

    public function hasPutStageScreens()
    {
        return $this->hasOneof(3);
    }

    /**
     * Generated from protobuf field <code>.rv.data.API_v1_Status_Request.PutStageScreens put_stage_screens = 3;</code>
     * @param \Rv\Data\API_v1_Status_Request\PutStageScreens $var
     * @return $this
     */
    public function setPutStageScreens($var)
    {
        GPBUtil::checkMessage($var, \Rv\Data\API_v1_Status_Request\PutStageScreens::class);
        $this->writeOneof(3, $var);

        return $this;
    }

    /**
     * Generated from protobuf field <code>.rv.data.API_v1_Status_Request.GetAudienceScreens get_audience_screens = 4;</code>
     * @return \Rv\Data\API_v1_Status_Request\GetAudienceScreens|null
     */
    public function getGetAudienceScreens()
    {
        return $this->readOneof(4);
    }

    public function hasGetAudienceScreens()
    {
        return $this->hasOneof(4);
    }

    /**
     * Generated from protobuf field <code>.rv.data.API_v1_Status_Request.GetAudienceScreens get_audience_screens = 4;</code>
     * @param \Rv\Data\API_v1_Status_Request\GetAudienceScreens $var
     * @return $this
     */
    public function setGetAudienceScreens($var)
    {
        GPBUtil::checkMessage($var, \Rv\Data\API_v1_Status_Request\GetAudienceScreens::class);
        $this->writeOneof(4, $var);

        return $this;
    }

    /**
     * Generated from protobuf field <code>.rv.data.API_v1_Status_Request.PutAudienceScreens put_audience_screens = 5;</code>
     * @return \Rv\Data\API_v1_Status_Request\PutAudienceScreens|null
     */
    public function getPutAudienceScreens()
    {
        return $this->readOneof(5);
    }

    public function hasPutAudienceScreens()
    {
        return $this->hasOneof(5);
    }

    /**
     * Generated from protobuf field <code>.rv.data.API_v1_Status_Request.PutAudienceScreens put_audience_screens = 5;</code>
     * @param \Rv\Data\API_v1_Status_Request\PutAudienceScreens $var
     * @return $this
     */
    public function setPutAudienceScreens($var)
    {
        GPBUtil::checkMessage($var, \Rv\Data\API_v1_Status_Request\PutAudienceScreens::class);
        $this->writeOneof(5, $var);

        return $this;
    }

    /**
     * Generated from protobuf field <code>.rv.data.API_v1_Status_Request.GetScreens get_screens = 6;</code>
     * @return \Rv\Data\API_v1_Status_Request\GetScreens|null
     */
    public function getGetScreens()
    {
        return $this->readOneof(6);
    }

    public function hasGetScreens()
    {
        return $this->hasOneof(6);
    }

    /**
     * Generated from protobuf field <code>.rv.data.API_v1_Status_Request.GetScreens get_screens = 6;</code>
     * @param \Rv\Data\API_v1_Status_Request\GetScreens $var
     * @return $this
     */
    public function setGetScreens($var)
    {
        GPBUtil::checkMessage($var, \Rv\Data\API_v1_Status_Request\GetScreens::class);
        $this->writeOneof(6, $var);

        return $this;
    }

    /**
     * Generated from protobuf field <code>.rv.data.API_v1_Status_Request.GetSlide get_slide = 7;</code>
     * @return \Rv\Data\API_v1_Status_Request\GetSlide|null
     */
    public function getGetSlide()
    {
        return $this->readOneof(7);
    }

    public function hasGetSlide()
    {
        return $this->hasOneof(7);
    }

    /**
     * Generated from protobuf field <code>.rv.data.API_v1_Status_Request.GetSlide get_slide = 7;</code>
     * @param \Rv\Data\API_v1_Status_Request\GetSlide $var
     * @return $this
     */
    public function setGetSlide($var)
    {
        GPBUtil::checkMessage($var, \Rv\Data\API_v1_Status_Request\GetSlide::class);
        $this->writeOneof(7, $var);

        return $this;
    }

    /**
     * @return string
     */
    public function getRequest()
    {
        return $this->whichOneof("Request");
    }

}

