Commit Graph

297 Commits

Author SHA1 Message Date
Jack Andersen cd9aa3eaf4 Removal of FILE* YAML streaming APIs; preferring Athena itself 2016-08-21 17:46:08 -10:00
Jack Andersen b43c4af3a7 Global error option flag for MemoryReader 2016-08-08 08:22:03 -10:00
Jack Andersen 750d23c686 Correct use of constexpr 2016-07-31 18:33:29 -10:00
Jack Andersen cf3dfcddff Use constexpr for evaluating bitwise enums 2016-07-31 10:25:40 -10:00
Jack Andersen 4e61051354 Add missing inttypes.h include 2016-07-02 13:41:15 -10:00
Phillip Stephens aff3349c33 Initial attempt to reimplement ecdsa certificates 2016-06-29 22:20:27 -07:00
Phillip Stephens 99dcef42f1 Remove EC and BN code in preparation due to licensing issues 2016-06-29 17:37:34 -07:00
Jack Andersen 617c121675 GCC compatibility fixes 2016-04-15 10:41:57 -10:00
Jack Andersen 8b2f1a8591 Add ROUND_UP_64 2016-04-03 16:31:25 -10:00
Jack Andersen 50406520ba Some handy macros 2016-04-03 16:26:47 -10:00
Jack Andersen 34d3bd6724 Add ROUND_UP_4 macro 2016-03-30 20:17:05 -10:00
Jack Andersen ae14d51607 YAMLDocReader sequence fix 2016-03-28 11:37:55 -10:00
Phillip Stephens 821e9c505e Add optional 2016-03-25 19:22:04 -07:00
Phillip Stephens b8773b3d4c Add missing takeOwnership behavior 2016-03-19 21:08:23 -07:00
Jack Andersen b791b7e426 Humungous refactor 2016-03-04 13:00:12 -10:00
Jack Andersen a0515fe4aa Squelched DNA_COUNT-referenced fields for smarter YAML handling 2016-03-03 11:42:26 -10:00
Jack Andersen 022142a9ec Initialization bug fix 2016-03-01 15:48:21 -10:00
Jack Andersen 92d4334a74 Streamlined validation object usage 2016-03-01 10:28:42 -10:00
Jack Andersen b317ac9d9f YamlDocWriter simplification 2016-02-29 16:57:53 -10:00
Jack Andersen ca0ff04340 void-pointer for MemoryReader constructor 2016-02-15 19:48:03 -10:00
Jack Andersen 8df75c8f23 Merge branch 'master' of https://github.com/libAthena/Athena 2016-02-03 14:55:02 -10:00
Jack Andersen 4d1c71ba3a Sequence to mapping-val lowering 2016-02-03 14:54:27 -10:00
Phillip Stephens 5984c58f5e Add warning to atSetExceptionHandler 2016-02-03 13:33:08 -08:00
Jack Andersen 09033d90cc YAMLDocReader::getCurNode() 2016-02-02 13:39:47 -10:00
Jack Andersen 80e03dbe12 Ignore unqualified template types in atdna 2016-02-01 18:28:52 -10:00
Jack Andersen cf3739fced YAML emitter/parser ownership refinement 2016-01-04 14:00:12 -10:00
Jack Andersen 9c880813ac Rename YAML methods as read/write overloads 2016-01-03 19:23:38 -10:00
Jack Andersen 96b25087e3 Update utf8proc 2015-12-27 12:38:37 -10:00
Jack Andersen 5f2e294642 More portable iterator->pointer 2015-12-20 12:51:55 -10:00
Jack Andersen a6cfc0aed9 Add increment operator 2015-12-20 11:41:10 -10:00
Jack Andersen be6361e130 Add <string> header 2015-12-20 11:17:12 -10:00
Jack Andersen eb06a6f00b Add handy UTF8Iterator class to utf8proc header 2015-12-20 11:13:32 -10:00
Jack Andersen 27d9fbcad4 Merge branch 'master' of https://github.com/libAthena/Athena 2015-12-06 10:53:14 -10:00
Jack Andersen c195b66939 added releaseRootNode method for advanced YAML usage 2015-12-06 10:52:37 -10:00
Phillip Stephens 028e4323e1 Fix crash when trying to read/write a string with 0 length 2015-12-05 19:37:26 -08:00
Zero-One101 259d2de59a Added an include, fixed a macro 2015-12-01 03:01:29 +00:00
Jack Andersen 87013ab673 Added native wstring fileSize method for Win32 2015-11-30 14:34:26 -10:00
Jack Andersen 9cd4b22c8a Error macro fixes 2015-11-27 12:16:30 -10:00
Jack Andersen 0a4e8c360e Added ability to opt-out of file reader/writer errors 2015-11-22 17:08:48 -10:00
Phillip Stephens b798647e08 [atdna] Enable C++14
[Athena] Add ifndef before ENABLE_BITWISE_ENUM
2015-11-21 20:20:15 -08:00
Jack Andersen cdacc014f3 Added handy bitwise enum enabler macro 2015-11-20 15:11:23 -10:00
Jack Andersen df43b72f8a Minor fix; added PRISize macro 2015-11-14 13:59:10 -10:00
Phillip 63a58265ef Squash MSVC warnings
Unify filename usage
2015-11-13 21:53:13 -08:00
Jack Andersen 21724766ba added file handle accessor for file reader/writer 2015-10-23 12:23:04 -10:00
Jack Andersen e861691480 Merge pull request #38 from libAthena/binary-size
Added binarySize method for DNA
2015-10-17 18:16:51 -10:00
Jack Andersen 8221d6e25a Added binarySize method for DNA 2015-10-17 18:05:35 -10:00
Phillip Stephens 8124d219d9 Fix utility::vsprintf
Fix operator>> (I'm a derp)
2015-10-16 17:25:36 -07:00
Phillip Stephens 1ee7c82d8b Fix GC/Wii linker error
Add example program (Currently only targets wii)
2015-10-16 02:46:18 -07:00
Phillip Stephens 1c0c44938e Fix gc/wii build 2015-10-16 01:07:54 -07:00
Jack Andersen ffca1f1897 writeVal not a template function 2015-10-15 17:06:12 -10:00
Phillip Stephens a753c2e38a Add operator>> to IStreamWriter.hpp 2015-10-15 15:20:50 -07:00
Phillip Stephens 069840a77e Implement atVec*d for atdna 2015-10-15 14:54:42 -07:00
Jack Andersen e6dedd0e6c Added double vector types 2015-10-07 13:50:50 -10:00
Jack Andersen f4716070dd Added built-in DNAType field for YAML classification 2015-09-30 14:37:54 -10:00
Jack Andersen a999744ab6 removed implementation-reliant use of emplace_back 2015-09-27 11:17:11 -10:00
Jack Andersen 4eae909848 Extended bool with endian readers/writers 2015-09-24 14:57:37 -10:00
Phillip Stephens 0762a3bdcc FreeBSD Fixes 2015-09-12 10:25:58 -08:00
Jack Andersen 574038a826 Merge commit '9535' 2015-09-11 13:28:23 -10:00
Jack Andersen 9535778932 added Little/Big suffix method for at[U]Int8 types for consistency 2015-09-11 13:27:28 -10:00
Jack Andersen 89fa92308f Doc updates 2015-09-07 17:02:58 -10:00
Phillip Stephens c241158c7b Remove GPL comments from Athena codebase 2015-09-03 13:05:08 -07:00
Jack Andersen bca146dbfc stripped-down utf8proc added 2015-08-31 11:11:42 -10:00
Phillip Stephens 0de254e846 Fix remaining MESSAGE enums 2015-08-30 22:15:06 -07:00
Jack Andersen e52e9f8dc4 Win32 Macro fixes 2015-08-30 22:13:07 -07:00
Jack Andersen 9b6fea36e3 windows fixes and proper UTF-8 conversion 2015-08-30 22:13:07 -07:00
Jack Andersen 66cb6c982e removed codecvt headers 2015-08-24 20:48:53 -10:00
Jack Andersen a145f337c0 Added ownership flag for memory reader 2015-08-23 13:52:01 -10:00
Phillip Stephens 7464c8e5eb add optional mask parameter to crc32 2015-08-17 02:32:03 -07:00
Jack Andersen 13d545c3fd Added explicit Big/Little method suffix 2015-08-13 16:58:04 -10:00
Jack Andersen dac1dde468 accumulator type change 2015-08-11 13:32:57 -10:00
Jack Andersen f49a6a6e82 Added YAML child node finder 2015-08-08 18:15:07 -10:00
Jack Andersen 9f0cb1327b Added some SFINAE parameters for smart IO templates 2015-08-08 13:25:18 -10:00
Jack Andersen 02e7bb3fc6 Refactored readBytes() and readUBytes() to return std::unique_ptr 2015-08-05 12:41:06 -10:00
Jack Andersen f06afb429c Windows build fixes 2015-08-03 17:42:44 -10:00
Jack Andersen 84591d4260 Added YAML serialization DNA subclass 2015-08-02 18:29:39 -07:00
Jack Andersen 43c317529c AES optimization and aligned SSE allocators 2015-08-02 18:29:39 -07:00
Jack Andersen b38d7533c5 Exception args should be passed as c-string
(it's a compiled literal after-all)
2015-08-02 18:29:39 -07:00
Jack Andersen ac36bb4f4a added support for wchar_t file paths and more stable windows builds 2015-08-02 18:29:38 -07:00
Phillip Stephens d9c4d3b79b Add error state 2015-08-02 18:29:38 -07:00
Phillip Stephens 8ea5071e0f Remove and replace exceptions 2015-08-02 18:29:38 -07:00
Jack Andersen c6a6d3b9c4 renamed read/writeUnicode methods to be more reflective of functionality 2015-07-21 09:04:25 -10:00
Jack Andersen 7442d618e7 Added virtual destructor to IAES 2015-07-15 16:01:37 -10:00
Jack Andersen f3ba8819a4 fixed incomplete-type warnings involving recursively-derived DNA types 2015-07-14 12:57:42 -10:00
Jack Andersen 09e3d33ff2 spelling corrections 2015-07-13 14:39:51 -10:00
Jack Andersen 7ec5a5971a compile-time system endian check 2015-07-12 06:51:04 -10:00
Jack Andersen 55adeec69c windows packaging and CMake adjustments 2015-07-10 16:14:06 -10:00
Phillip Stephens 4f8df65a3d * add atVec2f 2015-07-10 18:45:26 -07:00
Phillip Stephens 8d3524b1f6 Fix sign bug
Prevent blockSize from exceeding file's length
2015-07-09 20:47:56 -07:00
Phillip Stephens a7c180db00 * Add support for cached reads 2015-07-09 20:32:55 -07:00
Jack Andersen 8ca702785c added icons; updated PKGBUILD for CMake 2015-07-08 10:21:50 -10:00
Jack Andersen 44e25e09ca updated MemoryCopyWriter 2015-07-07 20:34:59 -10:00
Jack Andersen ec38ba088e added buffer-copying subclass to MemoryReader/Writer 2015-07-07 20:03:08 -10:00
Jack Andersen 97dfabb265 significant virtual-method refactor to streaming interface 2015-07-07 18:01:13 -10:00
Jack Andersen ce917d4aca Added CMakeLists.txt 2015-07-06 17:23:37 -10:00
Jack Andersen a63da8db2f header-based read/write optimizations 2015-07-02 13:36:17 -10:00
Jack Andersen 2b37765eff nested type ordering fix 2015-06-30 21:50:58 -07:00
Jack Andersen fa016115c2 const buffer pointer for write[U]Bytes 2015-06-30 17:01:04 -10:00
Phillip Stephens a76a3c584a * Revert swapFloat/Double "fixes" 2015-06-30 19:09:35 -07:00
Jack Andersen 7524b1f063 made string and buffer types templates with DNA base; may now be used in Vector 2015-06-25 09:37:31 -10:00
Jack Andersen 071d91a671 more stable atdna type canonicalization; recursive DNA subclassing 2015-06-22 12:52:09 -10:00
Jack Andersen 5a0f2e8ed4 MSVC build fixes 2015-06-19 21:40:15 -07:00
Jack Andersen 2d8aeb70e8 updated doxy comments 2015-06-19 10:44:01 -10:00
Jack Andersen 3dfb001f3d added fixed-length string writing 2015-06-19 10:12:25 -10:00
Jack Andersen 7cdfcab55a lots of new 'atdna' types; travis update 2015-06-18 19:18:39 -10:00
Jack Andersen 2c63768ec4 Added DNA.hpp warning 2015-06-16 16:50:12 -10:00
Jack Andersen fb722a9f5b further updates to atdna 2015-06-16 14:25:48 -10:00
Jack Andersen 0452e34150 initial working reader/writer values 2015-06-15 21:11:56 -10:00
Jack Andersen c09f06b436 working release build of atdna 2015-06-15 16:29:53 -10:00
Jack Andersen dde8ac1a1c initial atdna commit 2015-06-14 16:49:02 -10:00
Phillip Stephens 6a611ef2cc * Fix last commit 2015-05-20 22:41:29 -07:00
Phillip Stephens d5ccf159f7 * Fix Wii/GC Compiling
* Initial FileInfo/Dir APIs
* Get rid of type punning warnings
2015-05-20 22:35:26 -07:00
Phillip Stephens 011496db8b * Fix Wii/GC Compiling
* Finish initial FileInfo/Dir APIs
* Get rid of type punning warnings
2015-05-20 21:58:21 -07:00
Phillip Stephens 29a203522d * Fix merge 2015-05-18 20:36:45 -07:00
Phillip Stephens 6ee11b9a08 * Fix styling 2015-05-18 20:24:56 -07:00
Phillip Stephens 423a9a37d2 Reimplement Exceptions. 2015-05-18 16:38:02 -07:00
Phillip Stephens 01f989c21c Initial API implementation 2015-05-18 14:03:13 -07:00
Antidote a563d65388 * Move MCSlot.hpp to it's proper home 2015-05-17 18:33:35 -07:00
Phillip Stephens 01da3f3871 * Fix pretty function 2015-05-03 20:57:00 -07:00
Phillip Stephens 8386fa54a0 * Add formattedMessage to Exception
* Add missing IStreamWriter::fill implementations in FileWriter
2015-04-30 21:16:18 -07:00
Jack Andersen 7890a1be70 fixed header non-inclusion 2015-04-10 18:20:18 -10:00
Jack Andersen 00771aed2d inlined byte-swapping utilities 2015-04-10 18:12:42 -10:00
Jack Andersen e4f8c2959f lots of new streaming interface additions 2015-04-10 14:04:13 -10:00
Phillip Stephens e4f5c09534 * Fix IStreamReader::*String functions 2015-04-08 11:10:50 -07:00
Jack Andersen b21441cc11 Added OS X filesystem-support 2015-04-04 14:35:32 -10:00
Phillip Stephens 190f1e8c17 * Fix commit
* Fix LZO implementation (use lzo1x_decompress_safe)
2015-03-01 13:22:59 -08:00
Phillip Stephens c28cfbaba6 * Refactor Stream and *Reader classes 2015-03-01 12:42:39 -08:00
Phillip Stephens 68d369554d * Make Stream base functions public 2015-02-21 11:54:46 -08:00
Phillip Stephens 73592e0a86 oops 2015-01-28 22:36:47 -08:00
Phillip Stephens 1abbf80cef * Make streams polymorphic 2015-01-28 22:31:14 -08:00
Phillip Stephens 39f7ed55fc * Add maxlen to readString 2015-01-28 22:20:57 -08:00
Phillip Stephens e868c31253 * Finish modularization 2015-01-24 20:29:08 -08:00
Antidote 097a507bd0 * Visual Studio fixes (requires VS2013 at the minimum) 2014-12-28 20:46:43 -08:00
Antidote f322f1d7e7 * Change Athena::utility::fileSize to use stat64 instead of ftello
* Fix output of ftello64 in win32_largefilewrapper
2014-12-28 14:38:55 -08:00
Phillip Stephens be135d1caa * Start to fill in save related classes
* Fix silly bug in WiiSave
* Fix typos in Utilitiy.*
2014-11-28 19:32:37 -08:00
Phillip Stephens 30bda09849 * Bring .pro up to date
* Add libAthena.pc
* Make installable
2014-09-28 20:33:36 -07:00
Phillip Stephens 6976eda717 * Add configuration for Sakura specific types 2014-09-28 19:32:31 -07:00
Phillip Stephens 8b80f486ad * Change default constructor for BinaryWriter to accept null buffers 2014-09-19 18:16:17 -07:00
Phillip Stephens f92811004f * Added proper tree generation for WiiSave 2014-09-19 04:54:56 -07:00
Phillip Stephens 6187eb3f77 * Fix LZO 2014-09-09 09:53:32 -07:00
Phillip Stephens 2fa715cbbf * Unbreak compression 2014-09-09 09:46:05 -07:00
Phillip Stephens e8fad79134 * Add LZ77 Compression 2014-09-09 09:36:29 -07:00
Phillip Stephens 5a621215de * Refactor compression and utility 2014-09-09 03:19:19 -07:00
Phillip Stephens 814eda3d4c * Fix merge 2014-09-05 14:59:27 -07:00
Phillip Stephens f3e9fb4f70 * Fix build 2014-08-16 18:48:27 -07:00
Phillip Stephens 47054ea881 * Add PHYSFSFileReader class 2014-07-01 20:32:44 -07:00
Phillip Stephens 5a26e21c5b * Fix Athena::utility::fillRandom 2014-06-29 17:26:34 -07:00
Phillip Stephens 3b76c4f02f * Fix ATHENA_NO_SAVES 2014-06-28 08:38:50 -07:00
Phillip Stephens 5f74cdb9ed * Rename datatypes to prevent collision 2014-06-17 21:51:18 -07:00
Phillip Stephens cc71bec5d7 * Fix silly bug 2014-06-02 20:09:40 -07:00
Phillip Stephens 05db171ac4 * Add Variadic arguments to THROW_* macros 2014-05-30 17:40:35 -07:00