<feed xmlns='http://www.w3.org/2005/Atom'>
<title>dolphin/Source/Core/DiscIO/Filesystem.cpp, branch release-prep-2409</title>
<subtitle>GameCube and Wii emulator</subtitle>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/'/>
<entry>
<title>treewide: convert GPLv2+ license info to SPDX tags</title>
<updated>2021-07-05T02:35:56+00:00</updated>
<author>
<name>Pierre Bourdon</name>
<email>delroth@gmail.com</email>
</author>
<published>2021-07-05T01:22:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=e149ad4f0a9874f354221a7fc76d8f1841e47808'/>
<id>e149ad4f0a9874f354221a7fc76d8f1841e47808</id>
<content type='text'>
SPDX standardizes how source code conveys its copyright and licensing
information. See https://spdx.github.io/spdx-spec/1-rationale/ . SPDX
tags are adopted in many large projects, including things like the Linux
kernel.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
SPDX standardizes how source code conveys its copyright and licensing
information. See https://spdx.github.io/spdx-spec/1-rationale/ . SPDX
tags are adopted in many large projects, including things like the Linux
kernel.
</pre>
</div>
</content>
</entry>
<entry>
<title>Qt/FilesystemWidget: Add size column</title>
<updated>2018-06-02T16:59:56+00:00</updated>
<author>
<name>spycrab</name>
<email>spycrab@users.noreply.github.com</email>
</author>
<published>2018-06-02T16:14:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=f6865117e47fb48c58ab53af1297a79b850a345a'/>
<id>f6865117e47fb48c58ab53af1297a79b850a345a</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>DiscIO: Remove m_partition and m_volume from FileSystem</title>
<updated>2017-09-15T16:57:05+00:00</updated>
<author>
<name>JosJuice</name>
<email>josjuice@gmail.com</email>
</author>
<published>2017-08-02T16:34:44+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=ca36c977d9617ba188907bbe2ff2922fce121972'/>
<id>ca36c977d9617ba188907bbe2ff2922fce121972</id>
<content type='text'>
The last commit made m_partition unnecessary, and m_volume
has been unnecessary ever since the PR that added DiscExtractor.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The last commit made m_partition unnecessary, and m_volume
has been unnecessary ever since the PR that added DiscExtractor.
</pre>
</div>
</content>
</entry>
<entry>
<title>DiscIO: Use Common::Lazy for loading filesystems</title>
<updated>2017-09-15T16:57:05+00:00</updated>
<author>
<name>JosJuice</name>
<email>josjuice@gmail.com</email>
</author>
<published>2017-08-02T16:16:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=38304da947c6b593ef94449894dc018aac633344'/>
<id>38304da947c6b593ef94449894dc018aac633344</id>
<content type='text'>
This simplifies FileMonitor a lot and also lets us
clean up FilesystemPanel.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This simplifies FileMonitor a lot and also lets us
clean up FilesystemPanel.
</pre>
</div>
</content>
</entry>
<entry>
<title>Filesystem: Make destructors = default</title>
<updated>2017-06-14T13:26:04+00:00</updated>
<author>
<name>JosJuice</name>
<email>josjuice@gmail.com</email>
</author>
<published>2017-06-13T21:05:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=583406d900bd0ca9111135c6a9e526aed67e8322'/>
<id>583406d900bd0ca9111135c6a9e526aed67e8322</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Filesystem: Modernize variable names</title>
<updated>2017-06-14T13:25:09+00:00</updated>
<author>
<name>JosJuice</name>
<email>josjuice@gmail.com</email>
</author>
<published>2015-08-09T18:53:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=0b7d2e7c688a1e5e45c6d53fdcc89e4663e6d299'/>
<id>0b7d2e7c688a1e5e45c6d53fdcc89e4663e6d299</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Filesystem: Replace FileInfo struct with interface</title>
<updated>2017-06-13T20:37:43+00:00</updated>
<author>
<name>JosJuice</name>
<email>josjuice@gmail.com</email>
</author>
<published>2015-07-28T14:56:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=5021b4a567fad9a258f2b0fc397912f499e4cb1d'/>
<id>5021b4a567fad9a258f2b0fc397912f499e4cb1d</id>
<content type='text'>
GC/Wii filesystem internals shouldn't be exposed to other classes.
This change isn't especially useful by itself, but it opens up the
way for some neat stuff in the following commits.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
GC/Wii filesystem internals shouldn't be exposed to other classes.
This change isn't especially useful by itself, but it opens up the
way for some neat stuff in the following commits.
</pre>
</div>
</content>
</entry>
<entry>
<title>DiscIO: Remove C/I/S prefixes from class names</title>
<updated>2017-06-06T10:31:59+00:00</updated>
<author>
<name>JosJuice</name>
<email>josjuice@gmail.com</email>
</author>
<published>2017-06-06T09:49:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=b2af07a7b70c7c22d2c7b180d5846136d1fa1f77'/>
<id>b2af07a7b70c7c22d2c7b180d5846136d1fa1f77</id>
<content type='text'>
These prefixes were inconsistent with the rest of Dolphin.

I'm also renaming VolumeWiiCrypted to VolumeWii because of 1113b13.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
These prefixes were inconsistent with the rest of Dolphin.

I'm also renaming VolumeWiiCrypted to VolumeWii because of 1113b13.
</pre>
</div>
</content>
</entry>
<entry>
<title>VolumeWiiCrypted: Replace ChangePartition with a partition parameter</title>
<updated>2017-05-16T20:58:15+00:00</updated>
<author>
<name>JosJuice</name>
<email>josjuice@gmail.com</email>
</author>
<published>2015-06-13T10:51:24+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=19b8f1c10adeefd9413687ab7a7c21b509fe777d'/>
<id>19b8f1c10adeefd9413687ab7a7c21b509fe777d</id>
<content type='text'>
By removing mutable state in VolumeWiiCrypted, this change makes
partition-related code simpler. It also gets rid of other ugly things,
like ISOProperties's "over 9000" loop that creates a list of
partitions by trying possible combinations, and DiscScrubber's
volume swapping that recreates the entire volume when it needs to
change partition.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
By removing mutable state in VolumeWiiCrypted, this change makes
partition-related code simpler. It also gets rid of other ugly things,
like ISOProperties's "over 9000" loop that creates a list of
partitions by trying possible combinations, and DiscScrubber's
volume swapping that recreates the entire volume when it needs to
change partition.
</pre>
</div>
</content>
</entry>
<entry>
<title>FileMonitor redesign</title>
<updated>2017-03-13T16:13:20+00:00</updated>
<author>
<name>JosJuice</name>
<email>josjuice@gmail.com</email>
</author>
<published>2017-02-12T12:02:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=b470fa5454088effae64377f147db3e213947cd0'/>
<id>b470fa5454088effae64377f147db3e213947cd0</id>
<content type='text'>
Advantages:

* Simpler code in general
* No extra volume objects created
* Now actually notices if the disc or partition gets
  changed while the core is running
* No longer picks up on disc access done by the GUI
  (it used to do so as long as the core was running)
* Gets rid of a Core dependency in DiscIO

There are two performance disadvantages:

* FileMonitor is now a bit slower when used with VolumeDirectory
  because FileMonitor now always uses the FileSystemGCWii code
  for finding filenames instead of VolumeDirectory finding the
  filename on its own and directly hooking into FileMonitor.
  But this isn't such a big deal, because it's happening on the
  DVD thread, and my currently unmerged file system PR will make
  FileSystemGCWii's file finding code about as fast as
  VolumeDirectory's.
* FileMonitor's creation of the file system object is now
  done on the CPU thread instead of the DVD thread, and
  it will be done even if FileMonitor logging is disabled.
  This will be fixed in the next commit.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Advantages:

* Simpler code in general
* No extra volume objects created
* Now actually notices if the disc or partition gets
  changed while the core is running
* No longer picks up on disc access done by the GUI
  (it used to do so as long as the core was running)
* Gets rid of a Core dependency in DiscIO

There are two performance disadvantages:

* FileMonitor is now a bit slower when used with VolumeDirectory
  because FileMonitor now always uses the FileSystemGCWii code
  for finding filenames instead of VolumeDirectory finding the
  filename on its own and directly hooking into FileMonitor.
  But this isn't such a big deal, because it's happening on the
  DVD thread, and my currently unmerged file system PR will make
  FileSystemGCWii's file finding code about as fast as
  VolumeDirectory's.
* FileMonitor's creation of the file system object is now
  done on the CPU thread instead of the DVD thread, and
  it will be done even if FileMonitor logging is disabled.
  This will be fixed in the next commit.
</pre>
</div>
</content>
</entry>
</feed>
