Zach Hilman
d51f937e3e
bktr: Fix bucket overlap error
2018-09-04 17:01:54 -04:00
Zach Hilman
708ca9bb02
registration: Add RegisteredCacheUnion
...
Aggregates multiple caches into one interface
2018-09-04 16:21:40 -04:00
Lioncash
81f32ae9ae
filesystem: Move dir retrieval after path checking in DeleteFile()
...
We don't need to do the lookup if the path is considered empty
currently.
2018-09-02 09:20:17 -04:00
Sebastian Valle
758ca069c6
Merge pull request #1166 from lioncash/typo
...
filesystem: Fix typo in log message
2018-08-25 07:19:46 -05:00
Lioncash
d173a203d8
filesystem: Fix typo in log message
2018-08-23 22:12:31 -04:00
Zach Hilman
c75270a7ca
filesystem: Add CreateFactories methods to fs
...
Allows frontend to create registration caches for use before a game has booted.
2018-08-23 11:52:44 -04:00
Zach Hilman
a03ae76ea1
filesystem: Add logging to registration getters
2018-08-23 11:52:44 -04:00
Lioncash
015105899c
vfs: Replace mode.h include with forward declarations where applicable
...
Avoids the need to rebuild these source files if the mode header
changes.
2018-08-21 15:06:42 -04:00
Lioncash
7b5b566ad3
service/filesystem: Use forward declarations where applicable
...
Avoids the need to rebuild multiple source files if the filesystem code
headers change.
This also gets rid of a few instances of indirect inclusions being
relied upon
2018-08-20 23:28:46 -04:00
Zach Hilman
a0925fe02d
filesystem: Add support for loading of system archives
2018-08-18 21:28:23 -04:00
Zach Hilman
72cd3420dd
filesystem: Add Open and Register functions for BISFactory
2018-08-11 22:50:48 -04:00
Zach Hilman
9568ba4e3b
core: Port core to VfsFilesystem for file access
2018-08-08 21:18:45 -04:00
Zach Hilman
b675c14594
filesystem: Remove unnecessary if conditions
2018-08-08 21:18:45 -04:00
Lioncash
5c36791da5
service/filesystem: Add fsp:ldr and fsp:pr services
...
Adds the basic skeleton for the remaining fsp services based off
information provided by Switch Brew.
2018-08-01 17:01:29 -04:00
Zach Hilman
ea285f9107
VFS Regression and Accuracy Fixes ( #776 )
...
* Regression and Mode Fixes
* Review Fixes
* string_view correction
* Add operator& for FileSys::Mode
* Return std::string from SanitizePath
* Farming Simulator Fix
* Use != With mode operator&
2018-07-23 19:40:35 -07:00
Lioncash
81ef4d3734
file_util, vfs: Use std::string_view where applicable
...
Avoids unnecessary construction of std::string instances where
applicable.
2018-07-22 03:22:21 -04:00
Lioncash
a0d85ece5b
file_util: Use an enum class for GetUserPath()
...
Instead of using an unsigned int as a parameter and expecting a user to
always pass in the correct values, we can just convert the enum into an
enum class and use that type as the parameter type instead, which makes
the interface more type safe.
We also get rid of the bookkeeping "NUM_" element in the enum by just
using an unordered map. This function is generally low-frequency in
terms of calls (and I'd hope so, considering otherwise would mean we're
slamming the disk with IO all the time) so I'd consider this acceptable
in this case.
2018-07-21 16:21:19 -04:00
Sebastian Valle
0897286520
Merge pull request #720 from Subv/getentrytype_root
...
Filesystem: Return EntryType::Directory for the root directory.
2018-07-19 15:23:32 -05:00
Subv
1922e43a29
Filesystem: Return EntryType::Directory for the root directory.
...
It is unknown if this is correct behavior, but it makes sense and fixes a regression with Stardew Valley.
2018-07-19 13:11:09 -05:00
Lioncash
d56e2776f0
filesystem: std::move VirtualDir instance in VfsDirectoryServiceWrapper's constructor
...
Avoids unnecessary atomic reference count incrementing and decrementing
2018-07-19 10:34:11 -04:00
Lioncash
54494911b2
filesystem: Use std::string's empty() function instead of comparing against a literal
...
This is simply a basic value check as opposed to potentially doing
string based operations (unlikely, but still, avoiding it is free).
2018-07-19 10:32:23 -04:00
Lioncash
f7c16c4c85
filesystem: Remove pragma disabling global optimizations
...
This was just an artifact missed during PR review.
2018-07-19 10:30:53 -04:00
Zach Hilman
c228e57523
Virtual Filesystem 2: Electric Boogaloo ( #676 )
...
* Virtual Filesystem
* Fix delete bug and documentate
* Review fixes + other stuff
* Fix puyo regression
2018-07-18 18:07:11 -07:00
Zach Hilman
4f60e8aa24
General Filesystem and Save Data Fixes ( #670 )
2018-07-17 12:42:15 -07:00
bunnei
2b3d247c2a
Revert "Virtual Filesystem ( #597 )"
...
This reverts commit 77c684c114 .
2018-07-07 20:24:51 -07:00
Zach Hilman
f4e25a685f
Virtual Filesystem ( #597 )
...
* Add VfsFile and VfsDirectory classes
* Finish abstract Vfs classes
* Implement RealVfsFile (computer fs backend)
* Finish RealVfsFile and RealVfsDirectory
* Finished OffsetVfsFile
* More changes
* Fix import paths
* Major refactor
* Remove double const
* Use experimental/filesystem or filesystem depending on compiler
* Port partition_filesystem
* More changes
* More Overhaul
* FSP_SRV fixes
* Fixes and testing
* Try to get filesystem to compile
* Filesystem on linux
* Remove std::filesystem and document/test
* Compile fixes
* Missing include
* Bug fixes
* Fixes
* Rename v_file and v_dir
* clang-format fix
* Rename NGLOG_* to LOG_*
* Most review changes
* Fix TODO
* Guess 'main' to be Directory by filename
2018-07-06 10:51:32 -04:00
James Rowe
489e98954c
Update clang format
2018-07-02 21:45:47 -04:00
James Rowe
847a518200
Rename logging macro back to LOG_*
2018-07-02 21:45:47 -04:00
Lioncash
dbd0182410
general: Make formatting of logged hex values more straightforward
...
This makes the formatting expectations more obvious (e.g. any zero padding specified
is padding that's entirely dedicated to the value being printed, not any pretty-printing
that also gets tacked on).
2018-05-02 09:49:36 -04:00
Lioncash
12e5c50f52
filesystem: Move logging macros over to new fmt-compatible ones
2018-04-24 12:00:52 -04:00
Lioncash
20333e8393
service: Use nested namespace specifiers where applicable
...
Tidies up namespace declarations
2018-04-19 22:20:28 -04:00
Subv
0edd4e3c41
FS: Added an SDMC archive factory and registered it to the SDMC archive on startup.
2018-03-19 21:17:15 -05:00
Subv
12ebd18042
FS: Make EnsureSaveData create the savedata folder when called for the first time.
2018-03-04 14:30:07 -05:00
Subv
abecf86280
Filesystem: Added a SaveData Factory and associated Disk_FileSystem.
2018-03-01 19:03:52 -05:00
David Marcec
56c5ab108d
filesystem: Implement basic IStorage functionality.
2018-01-21 15:39:28 -05:00