summaryrefslogtreecommitdiffstats
path: root/src/common/file_util.h (unfollow)
Commit message (Collapse)AuthorFilesLines
2018-04-30file_util: Make move constructor/assignment operator and related functions noexceptLioncash1-3/+3
Without this, it's possible to get compilation failures in the (rare) scenario where a container is used to store a bunch of live IOFile instances, as they may be using std::move_if_noexcept under the hood. Given these definitely don't throw exceptions this is also not incorrect to add either.
2018-04-30file_util: Add static assertions to ReadBytes() and WriteBytes()Lioncash1-2/+6
Ensure that the actual types being passed in are trivially copyable. The internal call to ReadArray() and WriteArray() will always succeed, since they're passed a pointer to char* which is always trivially copyable.
2018-04-28file_util: Remove compiler version checks around is_trivially_copyable()Lioncash1-8/+0
The minimum clang/GCC versions we support already support this. We can also remove is_standard_layout(), as fread and fwrite only require the type to be trivially copyable.
2018-03-26file_util.h: Update Comment from citra to yuzuN00byKing1-1/+1
2018-01-21Format: Run the new clang format on everythingJames Rowe1-1/+1
2016-12-22file_util: Remove unused paths.bunnei1-20/+0
2016-11-24Switch to AppData/Roamingfreiro1-1/+1
2016-11-19Return by value and other fixesfreiro1-1/+1
2016-11-19Win32 move default user folder location to AppDatafreiro1-0/+1
2016-09-21Remove empty newlines in #include blocks.Emmanuel Gil Peyrot1-2/+0
This makes clang-format useful on those. Also add a bunch of forgotten transitive includes, which otherwise prevented compilation.
2016-09-18Sources: Run clang-format on everything.Emmanuel Gil Peyrot1-55/+63
2016-06-19Fix recursive scanning of directoriesYuri Kunde Schlesner1-5/+2
ForeachDirectoryEntry didn't actually do anything with the `recursive` parameter, and the corresponding callback parameter was shadowing the actual recursion counters in the user functions.
2016-05-21Common: Make recursive FileUtil functions take a maximum recursionEmmanuel Gil Peyrot1-4/+8
Fixes #1115. Also improves the performances of DiskArchive’s directory implementation a lot, simply by not going through the entire tree instead of just listing the first level files. Thanks to JayRoxFox for rebasing this on current master!
2016-04-30VideoCore: Run include-what-you-use and fix most includes.Emmanuel Gil Peyrot1-1/+1
2016-04-23Protect use of std::is_trivially_copyable to compile with GCC 4.9LittleWhite1-0/+4
2016-04-14file_util: In-class initialize data membersLioncash1-2/+2
2016-04-14file_util: const qualify IOFile's Tell and GetSize functionsLioncash1-2/+2
2016-04-14file_util: Don't expose IOFile internals through the APILioncash1-8/+1
2016-04-14file_util: Check for is_trivially_copyableLioncash1-3/+5
Also applies the template checks to ReadArray as well.
2016-04-14file_util: Make IOFile data members privateLioncash1-0/+1
2016-04-12FileUtil: Missing #include, Add const to IOFile methodsMerryMage1-6/+7
2015-11-27Refactor ScanDirectoryTreeAndCallback to separate errors and retvalsarchshift1-13/+18
ScanDirectoryTreeAndCallback, before this change, coupled error/return codes and actual return values (number of entries found). This caused confusion and difficulty interpreting the precise way the function worked. Supersedes, and closes #1255.
2015-10-01Split up FileUtil::ScanDirectoryTree to be able to use callbacks for custom behaviorarchshift1-3/+23
Converted FileUtil::ScanDirectoryTree and FileUtil::DeleteDirRecursively to use the new ScanDirectoryTreeAndCallback function internally.
2015-08-18Fix building under MinGWdarkf1-1/+1
2015-07-18Common: Remove the unused and commented GetThemeDir prototype from FileUtil.Emmanuel Gil Peyrot1-3/+0
2015-07-13FileUtil: Add a WriteObject method for writing a single, POD-type object.Tony Wasserka1-0/+10
2015-06-28Common: Fix FileUtil includes, and everything relying on those.Emmanuel Gil Peyrot1-2/+1
2015-05-07Common: Remove common.hYuri Kunde Schlesner1-1/+1
2015-01-04Archives: Changed the way paths are built for the archives.Subv1-5/+1
Each archive now takes a mount point of either NAND or SDMC, and builds its own directory structure there, trying to simulate an HLE-friendly hardware layout
2015-01-03Archives: Change the folder layout of some archives.Subv1-0/+1
This is to better represent the hardware layout, they are still aren't quite accurate, but this better and will help a bit when implementing the other archives like NAND-RO and NAND-RW
2015-01-03Archives: Reduced duplicate code in RomFS and SaveCheck.Subv1-0/+1
Fixed a few warnings and cleaned up the code
2014-12-30Archives: Implemented ExtSaveData and SharedExtSaveDataSubv1-0/+1
They will be stored in /extsavedata/SDMC and /extsavedata/NAND respectively. Also redirect some APT_A functions to their APT_U equivalents. Implemented the gamecoin.dat file in SharedExtSaveData in the PTM module. Implemented formatting the savegame. Retake a previous savegame if it exists instead of reporting them as not formatted every time a game is loaded.
2014-12-21License changepurpasmart961-2/+2
2014-12-18SaveData: Implemented the SystemSaveData archive.Subv1-0/+1
It will be stored in the /syssavedata folder. This archive is user by various Services and possibly games via the FS:U service.
2014-12-18Filesystem/Archives: Implemented the SaveData archiveSubv1-0/+1
The savedata for each game is stored in /savedata/<ProgramID> for NCCH files. ELF files and 3DSX files use the folder 0 because they have no ID information Got rid of the code duplication in File and Directory Files that deal with the host machine's file system now live in DiskFile, similarly for directories and DiskDirectory and archives with DiskArchive. FS_U: Use the correct error code when a file wasn't found
2014-12-12Common: Add "sysdata" to GetUserPath and cleanup.bunnei1-0/+1
2014-12-03Change NULLs to nullptrs.Rohit Nirmal1-2/+2
2014-11-19Remove tabs in all files except in skyeye imports and in generated GL codeEmmanuel Gil Peyrot1-93/+93
2014-10-08Added configuration file system.archshift1-7/+7
Uses QSettings on citra-qt, and inih on citra-cli.
2014-10-06Common: Add a helper function to generate a 8.3 filename from a long one.Emmanuel Gil Peyrot1-0/+11
Core: Fix the SDMC Directory implementation to make blargSnes work.
2014-09-28Fix warnings in core and commonLioncash1-3/+3
2014-09-21Use the citra user path for the sdmc directoryarchshift1-0/+1
2014-09-17Common: Rename the File namespace to FileUtil, to match the filename and prevent collisions.Emmanuel Gil Peyrot1-1/+1
2014-09-17Common: Return the number of items read/written in IOFile’s methods instead of a boolean.Emmanuel Gil Peyrot1-8/+20
2014-09-09Added string_util to common, small changes in loader.cpparchshift1-1/+1
2014-08-17Common: Move header guards over to pragma onceLioncash1-5/+1
Also replaced C headers with the C++ equivalent ones
2014-04-09fixed project includes to use new directory structurebunnei1-2/+2
2014-04-09got rid of 'src' folders in each sub-projectbunnei1-0/+0
2013-09-09 removed unneeded dolphin paths code, fixed linker problems with common.libShizZy1-13/+5
2013-09-05replaced common code with dolphin commonShizZy1-0/+232