Ejemplo n.º 1
0
        private string GetErrorString(AddressMap.AddResult result)
        {
            string rsrc;

            switch (result)
            {
            case AddressMap.AddResult.InternalError:
                rsrc = "str_ErrInternal";
                break;

            case AddressMap.AddResult.InvalidValue:
                rsrc = "str_ErrInvalidValue";
                break;

            case AddressMap.AddResult.OverlapExisting:
                rsrc = "str_ErrOverlapExisting";
                break;

            case AddressMap.AddResult.OverlapFloating:
                rsrc = "str_ErrOverlapFloating";
                break;

            case AddressMap.AddResult.StraddleExisting:
                rsrc = "str_ErrStraddleExisting";
                break;

            default:
                Debug.Assert(false);
                rsrc = "str_ErrInternal";
                break;
            }
            return((string)FindResource(rsrc));   // throws exception on failure
        }
Ejemplo n.º 2
0
 private void SetErrorString(AddressMap.AddResult result)
 {
     ErrorMessageStr  = GetErrorString(result);
     ShowErrorMessage = true;
 }
Ejemplo n.º 3
0
        private AddressMap.AddressRegion TryCreateRegion(AddressMap.AddressRegion delRegion,
                                                         int offset, int length, int addr, out AddressMap.AddResult result)
        {
            AddressMap tmpMap = mProject.AddrMap.Clone();

            if (delRegion != null && !tmpMap.RemoveEntry(delRegion.Offset, delRegion.Length))
            {
                Debug.Assert(false, "Failed to remove existing region");
                result = AddressMap.AddResult.InternalError;
                return(null);
            }

            result = tmpMap.AddEntry(offset, length, addr);
            if (result != AddressMap.AddResult.Okay)
            {
                return(null);
            }
            AddressMap.AddressRegion newRegion = tmpMap.FindRegion(offset, length);
            if (newRegion == null)
            {
                // Shouldn't happen.
                Debug.Assert(false, "Failed to find region we just created");
                result = AddressMap.AddResult.InternalError;
                return(null);
            }
            return(newRegion);
        }