πΊ MDAT#
MDAT Format.
- Name:
World Chunks Cache
- Type:
πΊ Region Decoder
- Wiki:
- Co-authors:
DeTTK, BoJIwEbNuK7
- Suffix:
.mdat- Support:
π§ͺ Experimental- Features:
Blocks
Example:
from scfile import formats
with formats.mdat.MdatDecoder("reg.0.0.mdat") as mdat:
data = mdat.decode()
Decoder#
- class MdatDecoder(stream, options=None)[source]#
Bases:
FileDecoder[RegionContent]- format: FileFormat = 'mdat'#
Associated file format.
- order: ByteOrder = '>'#
Default byte order for pack/unpack operations.
- close()#
Flush and close the IO object.
This method has no effect if the file is already closed.
- Return type:
None
- property closed: bool#
- convert(encoder, options=None, output=None)#
Decode and convert to given encoder format.
- Parameters:
encoder (
Type[TypeVar(EncoderType, bound=FileEncoder)]) β Encoder class to use for conversion.options (optional) β Shared handlers options.
output (optional) β File path or binary IO stream. Defaults to in-memory buffer.
- Return type:
bytes- Returns:
Encoded file content as bytes.
- convert_to(encoder, options=None, output=None)#
Decode and convert to given encoder format.
- Parameters:
encoder (
Type[TypeVar(EncoderType, bound=FileEncoder)]) β Encoder class to use for conversion.options (optional) β Shared handlers options.
output (optional) β File path or binary IO stream. Defaults to in-memory buffer.
- Return type:
TypeVar(EncoderType, bound=FileEncoder)- Returns:
Clear encoder instance.
- decode(seek=True)#
Runs decoding pipeline.
- Parameters:
seek (
bool) β Reset stream position to the beginning after parsing.- Return type:
TypeVar(ContentType, bound=BaseContent)- Returns:
Parsed content data.
- fileno()#
Returns underlying file descriptor if one exists.
OSError is raised if the IO object does not use a file descriptor.
- flush()#
Flush write buffers, if applicable.
This is not implemented for read-only and non-blocking streams.
- Return type:
None
- getvalue()#
- Return type:
bytes
- is_eof()#
- Return type:
bool
- isatty()#
Return whether this is an βinteractiveβ stream.
Return False if it canβt be determined.
- property location: str#
- prelude()#
Hook called before signature and parsing.
- Return type:
None
- read(size=-1)#
- Return type:
bytes
- readable()#
Return whether object was opened for reading.
If False, read() will raise OSError.
- Return type:
bool
- readline(size=-1, /)#
Read and return a line from the stream.
If size is specified, at most size bytes will be read.
The line terminator is always bβnβ for binary files; for text files, the newlines argument to open can be used to select the line terminator(s) recognized.
- readlines(hint=-1, /)#
Return a list of lines from the stream.
hint can be specified to control the number of lines read: no more lines will be read if the total size (in bytes/characters) of all lines so far exceeds hint.
- seek(pos, whence=0)#
Change the stream position to the given byte offset.
- offset
The stream position, relative to βwhenceβ.
- whence
The relative position to seek from.
The offset is interpreted relative to the position indicated by whence. Values for whence are:
os.SEEK_SET or 0 β start of stream (the default); offset should be zero or positive
os.SEEK_CUR or 1 β current stream position; offset may be negative
os.SEEK_END or 2 β end of stream; offset is usually negative
Return the new absolute position.
- Return type:
int
- seekable()#
Return whether object supports random access.
If False, seek(), tell() and truncate() will raise OSError. This method may need to do a test seek().
- Return type:
bool
- signature: Optional[bytes] = None#
Expected file signature.
- size()#
- Return type:
int
- skip(size)#
- property suffix: str#
- tell()#
Return current stream position.
- Return type:
int
- truncate()#
Truncate file to size bytes.
File pointer is left unchanged. Size defaults to the current IO position as reported by tell(). Returns the new size.
- unicode_errors: str = 'replace'#
Error handling mode for UTF-8 encoding/decoding.
- validate_signature()#
Validate file signature.
- Raises:
EmptyFileError β
- Return type:
None
- writable()#
Return whether object was opened for writing.
If False, write() will raise OSError.
- Return type:
bool
- write(data)#
- Return type:
int
- writelines(lines, /)#
Write a list of lines to stream.
Line separators are not added, so it is usual for each of the lines provided to have a line separator at the end.
- options: Options#
Shared handlers options.
- ctx: TempContext#