<?php

namespace StructType;

use \WsdlToPhp\PackageBase\AbstractStructBase;

/**
 * This class stands for Payroll_Timesheet_Time_In_Time_OutType StructType
 * Meta information extracted from the WSDL
 * - documentation: Wrapper element that includes a reference to the timesheet and all the data for the timesheet.
 * @subpackage Structs
 */
class Payroll_Timesheet_Time_In_Time_OutType extends AbstractStructBase
{
    /**
     * The Payroll_Timesheet_Time_In_Time_Out_Reference
     * Meta information extracted from the WSDL
     * - documentation: A reference to this timesheet object.
     * - minOccurs: 0
     * @var \StructType\Payroll_Timesheet_Time_In_Time_OutObjectType
     */
    public $Payroll_Timesheet_Time_In_Time_Out_Reference;
    /**
     * The Payroll_Timesheet_Time_In_Time_Out_Data
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var \StructType\Payroll_Timesheet_Time_In_Time_Out_Data_WWSType
     */
    public $Payroll_Timesheet_Time_In_Time_Out_Data;
    /**
     * Constructor method for Payroll_Timesheet_Time_In_Time_OutType
     * @uses Payroll_Timesheet_Time_In_Time_OutType::setPayroll_Timesheet_Time_In_Time_Out_Reference()
     * @uses Payroll_Timesheet_Time_In_Time_OutType::setPayroll_Timesheet_Time_In_Time_Out_Data()
     * @param \StructType\Payroll_Timesheet_Time_In_Time_OutObjectType $payroll_Timesheet_Time_In_Time_Out_Reference
     * @param \StructType\Payroll_Timesheet_Time_In_Time_Out_Data_WWSType $payroll_Timesheet_Time_In_Time_Out_Data
     */
    public function __construct(\StructType\Payroll_Timesheet_Time_In_Time_OutObjectType $payroll_Timesheet_Time_In_Time_Out_Reference = null, \StructType\Payroll_Timesheet_Time_In_Time_Out_Data_WWSType $payroll_Timesheet_Time_In_Time_Out_Data = null)
    {
        $this
            ->setPayroll_Timesheet_Time_In_Time_Out_Reference($payroll_Timesheet_Time_In_Time_Out_Reference)
            ->setPayroll_Timesheet_Time_In_Time_Out_Data($payroll_Timesheet_Time_In_Time_Out_Data);
    }
    /**
     * Get Payroll_Timesheet_Time_In_Time_Out_Reference value
     * @return \StructType\Payroll_Timesheet_Time_In_Time_OutObjectType|null
     */
    public function getPayroll_Timesheet_Time_In_Time_Out_Reference()
    {
        return $this->Payroll_Timesheet_Time_In_Time_Out_Reference;
    }
    /**
     * Set Payroll_Timesheet_Time_In_Time_Out_Reference value
     * @param \StructType\Payroll_Timesheet_Time_In_Time_OutObjectType $payroll_Timesheet_Time_In_Time_Out_Reference
     * @return \StructType\Payroll_Timesheet_Time_In_Time_OutType
     */
    public function setPayroll_Timesheet_Time_In_Time_Out_Reference(\StructType\Payroll_Timesheet_Time_In_Time_OutObjectType $payroll_Timesheet_Time_In_Time_Out_Reference = null)
    {
        $this->Payroll_Timesheet_Time_In_Time_Out_Reference = $payroll_Timesheet_Time_In_Time_Out_Reference;
        return $this;
    }
    /**
     * Get Payroll_Timesheet_Time_In_Time_Out_Data value
     * @return \StructType\Payroll_Timesheet_Time_In_Time_Out_Data_WWSType|null
     */
    public function getPayroll_Timesheet_Time_In_Time_Out_Data()
    {
        return $this->Payroll_Timesheet_Time_In_Time_Out_Data;
    }
    /**
     * Set Payroll_Timesheet_Time_In_Time_Out_Data value
     * @param \StructType\Payroll_Timesheet_Time_In_Time_Out_Data_WWSType $payroll_Timesheet_Time_In_Time_Out_Data
     * @return \StructType\Payroll_Timesheet_Time_In_Time_OutType
     */
    public function setPayroll_Timesheet_Time_In_Time_Out_Data(\StructType\Payroll_Timesheet_Time_In_Time_Out_Data_WWSType $payroll_Timesheet_Time_In_Time_Out_Data = null)
    {
        $this->Payroll_Timesheet_Time_In_Time_Out_Data = $payroll_Timesheet_Time_In_Time_Out_Data;
        return $this;
    }
}
