/// <summary>
        /// Compares for reference AND value equality.
        /// </summary>
        /// <param name="obj">The object to compare with this instance.</param>
        /// <returns>
        ///     <c>true</c> if both operands are equal; otherwise, <c>false</c>.
        /// </returns>
        public bool Equals(FundamentalOperationalData obj)
        {
            bool ivarsEqual = true;

            if (obj.GetType() != this.GetType())
            {
                return(false);
            }

            if (this._systemStatus != obj._systemStatus)
            {
                ivarsEqual = false;
            }

            if (this._dataField1 != obj._dataField1)
            {
                ivarsEqual = false;
            }

            if (this._informationLayers != obj._informationLayers)
            {
                ivarsEqual = false;
            }

            if (this._dataField2 != obj._dataField2)
            {
                ivarsEqual = false;
            }

            if (this._parameter1 != obj._parameter1)
            {
                ivarsEqual = false;
            }

            if (this._parameter2 != obj._parameter2)
            {
                ivarsEqual = false;
            }

            if (this._parameter3 != obj._parameter3)
            {
                ivarsEqual = false;
            }

            if (this._parameter4 != obj._parameter4)
            {
                ivarsEqual = false;
            }

            if (this._parameter5 != obj._parameter5)
            {
                ivarsEqual = false;
            }

            if (this._parameter6 != obj._parameter6)
            {
                ivarsEqual = false;
            }

            return(ivarsEqual);
        }
        /// <summary>
        /// Compares for reference AND value equality.
        /// </summary>
        /// <param name="obj">The object to compare with this instance.</param>
        /// <returns>
        /// 	<c>true</c> if both operands are equal; otherwise, <c>false</c>.
        /// </returns>
        public bool Equals(FundamentalOperationalData obj)
        {
            bool ivarsEqual = true;

            if (obj.GetType() != this.GetType())
            {
                return false;
            }

            if (this._systemStatus != obj._systemStatus)
            {
                ivarsEqual = false;
            }

            if (this._dataField1 != obj._dataField1)
            {
                ivarsEqual = false;
            }

            if (this._informationLayers != obj._informationLayers)
            {
                ivarsEqual = false;
            }

            if (this._dataField2 != obj._dataField2)
            {
                ivarsEqual = false;
            }

            if (this._parameter1 != obj._parameter1)
            {
                ivarsEqual = false;
            }

            if (this._parameter2 != obj._parameter2)
            {
                ivarsEqual = false;
            }

            if (this._parameter3 != obj._parameter3)
            {
                ivarsEqual = false;
            }

            if (this._parameter4 != obj._parameter4)
            {
                ivarsEqual = false;
            }

            if (this._parameter5 != obj._parameter5)
            {
                ivarsEqual = false;
            }

            if (this._parameter6 != obj._parameter6)
            {
                ivarsEqual = false;
            }

            return ivarsEqual;
        }