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

namespace Rv\Analytics\UI;

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

/**
 * Generated from protobuf message <code>rv.analytics.UI.MainView</code>
 */
class MainView extends \Google\Protobuf\Internal\Message
{
    protected $Component;

    /**
     * Constructor.
     *
     * @param array $data {
     *     Optional. Data for populating the Message object.
     *
     *     @type \Rv\Analytics\UI\MainView\Show $show
     *     @type \Rv\Analytics\UI\MainView\PresentationEditor $presentation_editor
     *     @type \Rv\Analytics\UI\MainView\ReflowEditor $reflow_editor
     *     @type \Rv\Analytics\UI\MainView\Bible $bible
     *     @type \Rv\Analytics\UI\MainView\StageEditor $stage_editor
     *     @type \Rv\Analytics\UI\MainView\ThemeEditor $theme_editor
     *     @type \Rv\Analytics\UI\MainView\CopyrightEditor $copyright_editor
     *     @type \Rv\Analytics\UI\MainView\PropsEditor $props_editor
     *     @type \Rv\Analytics\UI\MainView\MaskEditor $mask_editor
     * }
     */
    public function __construct($data = NULL) {
        \GPBMetadata\AnalyticsUI::initOnce();
        parent::__construct($data);
    }

    /**
     * Generated from protobuf field <code>.rv.analytics.UI.MainView.Show show = 1;</code>
     * @return \Rv\Analytics\UI\MainView\Show|null
     */
    public function getShow()
    {
        return $this->readOneof(1);
    }

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

    /**
     * Generated from protobuf field <code>.rv.analytics.UI.MainView.Show show = 1;</code>
     * @param \Rv\Analytics\UI\MainView\Show $var
     * @return $this
     */
    public function setShow($var)
    {
        GPBUtil::checkMessage($var, \Rv\Analytics\UI\MainView\Show::class);
        $this->writeOneof(1, $var);

        return $this;
    }

    /**
     * Generated from protobuf field <code>.rv.analytics.UI.MainView.PresentationEditor presentation_editor = 2;</code>
     * @return \Rv\Analytics\UI\MainView\PresentationEditor|null
     */
    public function getPresentationEditor()
    {
        return $this->readOneof(2);
    }

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

    /**
     * Generated from protobuf field <code>.rv.analytics.UI.MainView.PresentationEditor presentation_editor = 2;</code>
     * @param \Rv\Analytics\UI\MainView\PresentationEditor $var
     * @return $this
     */
    public function setPresentationEditor($var)
    {
        GPBUtil::checkMessage($var, \Rv\Analytics\UI\MainView\PresentationEditor::class);
        $this->writeOneof(2, $var);

        return $this;
    }

    /**
     * Generated from protobuf field <code>.rv.analytics.UI.MainView.ReflowEditor reflow_editor = 3;</code>
     * @return \Rv\Analytics\UI\MainView\ReflowEditor|null
     */
    public function getReflowEditor()
    {
        return $this->readOneof(3);
    }

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

    /**
     * Generated from protobuf field <code>.rv.analytics.UI.MainView.ReflowEditor reflow_editor = 3;</code>
     * @param \Rv\Analytics\UI\MainView\ReflowEditor $var
     * @return $this
     */
    public function setReflowEditor($var)
    {
        GPBUtil::checkMessage($var, \Rv\Analytics\UI\MainView\ReflowEditor::class);
        $this->writeOneof(3, $var);

        return $this;
    }

    /**
     * Generated from protobuf field <code>.rv.analytics.UI.MainView.Bible bible = 4;</code>
     * @return \Rv\Analytics\UI\MainView\Bible|null
     */
    public function getBible()
    {
        return $this->readOneof(4);
    }

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

    /**
     * Generated from protobuf field <code>.rv.analytics.UI.MainView.Bible bible = 4;</code>
     * @param \Rv\Analytics\UI\MainView\Bible $var
     * @return $this
     */
    public function setBible($var)
    {
        GPBUtil::checkMessage($var, \Rv\Analytics\UI\MainView\Bible::class);
        $this->writeOneof(4, $var);

        return $this;
    }

    /**
     * Generated from protobuf field <code>.rv.analytics.UI.MainView.StageEditor stage_editor = 5;</code>
     * @return \Rv\Analytics\UI\MainView\StageEditor|null
     */
    public function getStageEditor()
    {
        return $this->readOneof(5);
    }

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

    /**
     * Generated from protobuf field <code>.rv.analytics.UI.MainView.StageEditor stage_editor = 5;</code>
     * @param \Rv\Analytics\UI\MainView\StageEditor $var
     * @return $this
     */
    public function setStageEditor($var)
    {
        GPBUtil::checkMessage($var, \Rv\Analytics\UI\MainView\StageEditor::class);
        $this->writeOneof(5, $var);

        return $this;
    }

    /**
     * Generated from protobuf field <code>.rv.analytics.UI.MainView.ThemeEditor theme_editor = 6;</code>
     * @return \Rv\Analytics\UI\MainView\ThemeEditor|null
     */
    public function getThemeEditor()
    {
        return $this->readOneof(6);
    }

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

    /**
     * Generated from protobuf field <code>.rv.analytics.UI.MainView.ThemeEditor theme_editor = 6;</code>
     * @param \Rv\Analytics\UI\MainView\ThemeEditor $var
     * @return $this
     */
    public function setThemeEditor($var)
    {
        GPBUtil::checkMessage($var, \Rv\Analytics\UI\MainView\ThemeEditor::class);
        $this->writeOneof(6, $var);

        return $this;
    }

    /**
     * Generated from protobuf field <code>.rv.analytics.UI.MainView.CopyrightEditor copyright_editor = 7;</code>
     * @return \Rv\Analytics\UI\MainView\CopyrightEditor|null
     */
    public function getCopyrightEditor()
    {
        return $this->readOneof(7);
    }

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

    /**
     * Generated from protobuf field <code>.rv.analytics.UI.MainView.CopyrightEditor copyright_editor = 7;</code>
     * @param \Rv\Analytics\UI\MainView\CopyrightEditor $var
     * @return $this
     */
    public function setCopyrightEditor($var)
    {
        GPBUtil::checkMessage($var, \Rv\Analytics\UI\MainView\CopyrightEditor::class);
        $this->writeOneof(7, $var);

        return $this;
    }

    /**
     * Generated from protobuf field <code>.rv.analytics.UI.MainView.PropsEditor props_editor = 8;</code>
     * @return \Rv\Analytics\UI\MainView\PropsEditor|null
     */
    public function getPropsEditor()
    {
        return $this->readOneof(8);
    }

    public function hasPropsEditor()
    {
        return $this->hasOneof(8);
    }

    /**
     * Generated from protobuf field <code>.rv.analytics.UI.MainView.PropsEditor props_editor = 8;</code>
     * @param \Rv\Analytics\UI\MainView\PropsEditor $var
     * @return $this
     */
    public function setPropsEditor($var)
    {
        GPBUtil::checkMessage($var, \Rv\Analytics\UI\MainView\PropsEditor::class);
        $this->writeOneof(8, $var);

        return $this;
    }

    /**
     * Generated from protobuf field <code>.rv.analytics.UI.MainView.MaskEditor mask_editor = 9;</code>
     * @return \Rv\Analytics\UI\MainView\MaskEditor|null
     */
    public function getMaskEditor()
    {
        return $this->readOneof(9);
    }

    public function hasMaskEditor()
    {
        return $this->hasOneof(9);
    }

    /**
     * Generated from protobuf field <code>.rv.analytics.UI.MainView.MaskEditor mask_editor = 9;</code>
     * @param \Rv\Analytics\UI\MainView\MaskEditor $var
     * @return $this
     */
    public function setMaskEditor($var)
    {
        GPBUtil::checkMessage($var, \Rv\Analytics\UI\MainView\MaskEditor::class);
        $this->writeOneof(9, $var);

        return $this;
    }

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

}

