Exemplo n.º 1
0
        /// <summary>Read a VA from a stream, and translate it into a PA</summary>
        /// <param name="s">Stream to read from</param>
        /// <returns>VA + <see cref="CurrentAddress"/></returns>
        /// <remarks>If the VA read is a <see cref="PtrHandle.IsInvalidHandle">InvalidHandle</see>, it is returned without fix-up</remarks>
        public Values.PtrHandle ReadVirtualAsPhysicalAddress(IO.EndianReader s)
        {
            Values.PtrHandle va = mNull;
            s.ReadRawPointer(ref va);

            if (va.IsInvalidHandle)
            {
                return(va);
            }

            return(CurrentAddress + va);
        }