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

◆ GetStream() [1/2]

Stream Terraria.ModLoader.Core.TmodFile.GetStream ( FileEntry entry,
bool newFileStream = false )
inline

Definition at line 146 of file TmodFile.cs.

147 {
148 //IL_00c3: Unknown result type (might be due to invalid IL or missing references)
149 //IL_00c9: Expected O, but got Unknown
150 Stream stream;
151 if (entry.cachedBytes != null)
152 {
153 stream = entry.cachedBytes.ToMemoryStream();
154 }
155 else
156 {
157 if (fileStream == null)
158 {
159 throw new IOException("File not open: " + path);
160 }
161 if (newFileStream)
162 {
163 EntryReadStream ers = new EntryReadStream(this, entry, File.OpenRead(path), leaveOpen: false);
165 {
167 }
168 stream = ers;
169 }
170 else
171 {
172 if (sharedEntryReadStream != null)
173 {
174 throw new IOException("Previous entry read stream not closed: " + sharedEntryReadStream.Name);
175 }
176 stream = (sharedEntryReadStream = new EntryReadStream(this, entry, fileStream, leaveOpen: true));
177 }
178 }
179 if (entry.IsCompressed)
180 {
181 stream = (Stream)new DeflateStream(stream, (CompressionMode)1);
182 }
183 return stream;
184 }
List< EntryReadStream > independentEntryReadStreams
Definition TmodFile.cs:74
EntryReadStream sharedEntryReadStream
Definition TmodFile.cs:72

References Terraria.ModLoader.Core.TmodFile.FileEntry.cachedBytes, Terraria.ModLoader.Core.TmodFile.fileStream, Terraria.ModLoader.Core.TmodFile.independentEntryReadStreams, Terraria.ModLoader.Core.TmodFile.FileEntry.IsCompressed, Terraria.ModLoader.Core.EntryReadStream.Name, Terraria.ModLoader.Core.TmodFile.path, and Terraria.ModLoader.Core.TmodFile.sharedEntryReadStream.

Referenced by Terraria.ModLoader.Core.TmodFile.GetBytes(), Terraria.ModLoader.Mod.GetFileStream(), Terraria.ModLoader.Core.TmodFile.GetStream(), Terraria.ModLoader.LocalizationLoader.LoadTranslations(), and Terraria.ModLoader.Core.BuildProperties.ReadModFile().

+ Here is the caller graph for this function: