Пример #1
0
        private static void CopyAsTable(List <WatchVariableControl> controls)
        {
            if (controls.Count == 0)
            {
                return;
            }
            List <uint> addresses = controls[0].GetBaseAddresses();

            if (addresses.Count == 0)
            {
                return;
            }
            List <string> hexAddresses = addresses.ConvertAll(address => HexUtilities.FormatValue(address));
            string        header       = "Vars\t" + string.Join("\t", hexAddresses);

            List <string>         names         = controls.ConvertAll(control => control.VarName);
            List <List <object> > valuesTable   = controls.ConvertAll(control => control.GetValues());
            List <string>         valuesStrings = new List <string>();

            for (int i = 0; i < names.Count; i++)
            {
                string line = names[i] + "\t" + string.Join("\t", valuesTable[i]);
                valuesStrings.Add(line);
            }

            string output = header + "\r\n" + string.Join("\r\n", valuesStrings);

            Clipboard.SetText(output);
        }
Пример #2
0
        public static void Debug2()
        {
            List <string> outputList = new List <string>();

            foreach (byte processGroupByte in ObjectSlotsConfig.ProcessingGroups)
            {
                uint processGroupStructAddress = ObjectSlotsConfig.ProcessGroupsStartAddress + processGroupByte * ObjectSlotsConfig.ProcessGroupStructSize;
                uint nextAddress = processGroupStructAddress + ObjectConfig.ProcessedNextLinkOffset;
                uint prevAddress = processGroupStructAddress + ObjectConfig.ProcessedPreviousLinkOffset;

                string nextString = processGroupByte + "\t" + "next" + "\t" + HexUtilities.FormatValue(nextAddress);
                string prevString = processGroupByte + "\t" + "prev" + "\t" + HexUtilities.FormatValue(prevAddress);

                outputList.Add(nextString);
                outputList.Add(prevString);
            }
            outputList.Add("vacant\t\t" + HexUtilities.FormatValue(ObjectSlotsConfig.VacantSlotsNodeAddress + ObjectConfig.ProcessedNextLinkOffset));
            InfoForm.ShowValue(String.Join("\r\n", outputList));
        }