TModLoader v1.4.4.9
TModLoader source code documentation
Loading...
Searching...
No Matches

◆ RecalculateMemory()

void Terraria.ModLoader.UI.UIMemoryBar.RecalculateMemory ( )
inlineprivate

Definition at line 113 of file UIMemoryBar.cs.

114 {
115 //IL_02c7: Unknown result type (might be due to invalid IL or missing references)
116 //IL_0310: Unknown result type (might be due to invalid IL or missing references)
117 //IL_0259: Unknown result type (might be due to invalid IL or missing references)
118 _memoryBarItems.Clear();
121 long totalModMemory = 0L;
122 int i = 0;
124 {
125 string modName = entry.Key;
126 ModMemoryUsage usage = entry.Value;
127 if (usage.total > 0 && !(modName == "tModLoader"))
128 {
129 totalModMemory += usage.total;
130 StringBuilder sb = new StringBuilder();
131 sb.Append(ModLoader.GetMod(modName).DisplayName);
132 StringBuilder stringBuilder = sb;
133 StringBuilder stringBuilder2 = stringBuilder;
134 StringBuilder.AppendInterpolatedStringHandler handler = new StringBuilder.AppendInterpolatedStringHandler(1, 1, stringBuilder);
135 handler.AppendLiteral("\n");
136 handler.AppendFormatted(Language.GetTextValue("tModLoader.LastLoadRamUsage", SizeSuffix(usage.total)));
137 stringBuilder2.Append(ref handler);
138 if (usage.managed > 0)
139 {
140 stringBuilder = sb;
141 StringBuilder stringBuilder3 = stringBuilder;
142 handler = new StringBuilder.AppendInterpolatedStringHandler(2, 1, stringBuilder);
143 handler.AppendLiteral("\n ");
144 handler.AppendFormatted(Language.GetTextValue("tModLoader.ManagedMemory", SizeSuffix(usage.managed)));
145 stringBuilder3.Append(ref handler);
146 }
147 if (usage.managed > 0)
148 {
149 stringBuilder = sb;
150 StringBuilder stringBuilder4 = stringBuilder;
151 handler = new StringBuilder.AppendInterpolatedStringHandler(2, 1, stringBuilder);
152 handler.AppendLiteral("\n ");
153 handler.AppendFormatted(Language.GetTextValue("tModLoader.CodeMemory", SizeSuffix(usage.code)));
154 stringBuilder4.Append(ref handler);
155 }
156 if (usage.sounds > 0)
157 {
158 stringBuilder = sb;
159 StringBuilder stringBuilder5 = stringBuilder;
160 handler = new StringBuilder.AppendInterpolatedStringHandler(2, 1, stringBuilder);
161 handler.AppendLiteral("\n ");
162 handler.AppendFormatted(Language.GetTextValue("tModLoader.SoundMemory", SizeSuffix(usage.sounds)));
163 stringBuilder5.Append(ref handler);
164 }
165 if (usage.textures > 0)
166 {
167 stringBuilder = sb;
168 StringBuilder stringBuilder6 = stringBuilder;
169 handler = new StringBuilder.AppendInterpolatedStringHandler(2, 1, stringBuilder);
170 handler.AppendLiteral("\n ");
171 handler.AppendFormatted(Language.GetTextValue("tModLoader.TextureMemory", SizeSuffix(usage.textures)));
172 stringBuilder6.Append(ref handler);
173 }
174 _memoryBarItems.Add(new MemoryBarItem(sb.ToString(), usage.total, _colors[i++ % _colors.Length]));
175 }
176 }
177 long allocatedMemory = Process.GetCurrentProcess().WorkingSet64;
179 _memoryBarItems.Add(new MemoryBarItem(Language.GetTextValue("tModLoader.TerrariaMemory", SizeSuffix(nonModMemory)) + "\n " + Language.GetTextValue("tModLoader.TotalMemory", SizeSuffix(allocatedMemory)), nonModMemory, Color.DeepSkyBlue));
181 _memoryBarItems.Add(new MemoryBarItem(Language.GetTextValue("tModLoader.AvailableMemory", SizeSuffix(remainingMemory)) + "\n " + Language.GetTextValue("tModLoader.TotalMemory", SizeSuffix(availableMemory)), remainingMemory, Color.Gray));
183 }
static string GetTextValue(string key)
Retrieves the text value for a specified localization key. The text returned will be for the currentl...
Definition Language.cs:35
Contains methods to access or retrieve localization values. The Localization Guideteaches more about ...
Definition Language.cs:12
static Dictionary< string, ModMemoryUsage > modMemoryUsageEstimates
readonly List< MemoryBarItem > _memoryBarItems
static string SizeSuffix(long value, int decimalPlaces=1)

References Terraria.ModLoader.UI.UIMemoryBar._colors, Terraria.ModLoader.UI.UIMemoryBar._maxMemory, Terraria.ModLoader.UI.UIMemoryBar._memoryBarItems, Terraria.ModLoader.ModLoader.GetMod(), Terraria.Localization.Language.GetTextValue(), Terraria.ModLoader.UI.UIMemoryBar.GetTotalMemory(), Terraria.ModLoader.Core.MemoryTracking.modMemoryUsageEstimates, Terraria.ModLoader.UI.UIMemoryBar.RecalculateMemoryNeeded, and Terraria.ModLoader.UI.UIMemoryBar.SizeSuffix().

Referenced by Terraria.ModLoader.UI.UIMemoryBar.OnActivate().

+ Here is the call graph for this function:
+ Here is the caller graph for this function: