/// <summary>
            /// Overridden Equals to we can compare entries.  Entries with the same scene references and load settings are considered equal.
            /// </summary>
            public override bool Equals(object obj)
            {
                if (this == obj)
                {
                    return(true);
                }

                var other = obj as SceneEntry;

                if (other == null)
                {
                    return(false);
                }

                return((scene.Equals(other.scene)) && (loadInEditor == other.loadInEditor) && (loadMethod == other.loadMethod) && (asyncOp == other.asyncOp));
            }
        /// <summary>
        /// See if two UniqueObjects point to the same Object
        /// </summary>
        public override bool Equals(object obj)
        {
            if (!(obj is UniqueObject))
            {
                return(base.Equals(obj));
            }

            UniqueObject other = (UniqueObject)obj;

            if (!scene.Equals(other.scene))
            {
                return(false);
            }

            if (this.editorLocalId == other.editorLocalId)
            {
                return(true);
            }

            return((this.componentIndex == other.componentIndex) && (this.componentName == other.componentName) && (this.fullPath == other.fullPath));
        }