Commit Graph
77 Commits
Author SHA1 Message Date
Samuele Lorefice 8678ee6c85 Added DNAArrayAttribute to the generation and AddArrayField method. Disabled Array checking in AddNormalField and done Array checking at the main logic 2025-03-11 18:44:09 +01:00
Samuele Lorefice fbc0f9be49 Changed String extensions to retunr char size as a 1 byte (cpp size) instead of 2 bytes (C# size) 2025-03-11 18:42:12 +01:00
Samuele Lorefice 9cbed0a8b8 Imported static Kaitai.BlendFile, compressing bunch of lines 2025-03-11 18:41:27 +01:00
mm00 37ebc71cf3 Added pointers and list handling in reader 2025-03-10 19:09:11 +01:00
Samuele Lorefice b6760ab27a Fixed wrong attribute position being modified. Regenerated code files 2025-03-07 19:18:52 +01:00
Samuele Lorefice 73e98f5c5d Regenerated code files 2025-03-07 19:13:29 +01:00
Samuele Lorefice 26add1559f Fixed wrong name determination in field-count value coupling 2025-03-07 19:11:17 +01:00
mm00 d3e54246c4 fixed double loop problem and refactored field additions 2025-03-07 18:55:17 +01:00
Samuele Lorefice bfa185c8e4 Added count field type argument to the list attribute 2025-03-06 19:41:37 +01:00
Samuele Lorefice e11cd54096 Fioxed dictionary being recreated every step of the for loop. 2025-03-06 19:14:59 +01:00
Samuele Lorefice 9e1d65d08d Added start offset param to the field conversion methods, started implementing list conversions 2025-03-06 19:11:50 +01:00
Samuele Lorefice fb50e3fa44 Fixed list length value returning always zero.
Added separated pointer and count memory offsets to list attributes.
Tried handling them
2025-03-06 19:11:03 +01:00
Samuele Lorefice 0bc7f73aee Moved pointer and struct conversion to a separate method 2025-03-06 18:32:21 +01:00
Samuele Lorefice 02aa7db319 Changed attribute builder to derive from correct class, also added method to pass base class parameters using string refs. Regenerated the files 2025-03-06 17:37:55 +01:00
Samuele Lorefice a784eed61d General code cleanup in reader class. Added stub methods for extracting data retrieval to a separate method. 2025-03-05 18:43:39 +01:00
Samuele Lorefice 8e4eac0568 Regenerated codefiles 2025-03-04 18:48:04 +01:00
Samuele Lorefice 8bbfb49720 Fixed a critical bug in Array field name generation. Added DNAAttribute and DNAListAttribute classes 2025-03-04 18:47:55 +01:00
Samuele Lorefice b70bcd4d02 Reordered parameters in Attributes 2025-03-04 18:33:17 +01:00
Samuele Lorefice a8bf5e6e82 Added DnaListAttribute generation 2025-03-04 18:27:53 +01:00
mm00 b100dc8020 Fixed list length search 2025-03-04 18:03:40 +01:00
Samuele Lorefice 0dccefb7e4 added method to create ListFields and generation of Lists 2025-03-04 17:40:57 +01:00
Samuele Lorefice d986670268 Added queue for log messages and logger on a separate thread, added telemetry. 2025-02-27 23:44:51 +01:00
Samuele Lorefice 30cdc7a23d Changed code gen to use latest lang version 2025-02-27 23:44:10 +01:00
Samuele Lorefice 7a0ad7e968 Added IsClass and FilterFields methods to streamline types creation, added more documentation 2025-02-27 20:57:12 +01:00
Samuele Lorefice bdc9624d13 Added derive from class parts to the attribute building process. Added static Lists of substrings for attribute filtering. 2025-02-26 19:24:14 +01:00
Samuele Lorefice 80234eb599 Fixed a bug in AttributeBuilder where setting the derived type would not be applied if there wasn't one already set up. 2025-02-26 19:23:33 +01:00
Samuele Lorefice 55f3d411b3 Added documentation to Attribute builder. Added Inheritance methods. Added a base DNA attribute to GenerateTypeDeclarations method. 2025-02-26 18:59:14 +01:00
Samuele Lorefice 1a34d70f8d added heuristcs substrings 2025-02-26 17:37:49 +01:00
Samuele Lorefice 869fd3b794 Made AttributeBuilder not a singleton, replaced multiple methods per attribute with a single method that returns all the attributes in a single sweep. 2025-02-26 17:03:15 +01:00
Samuele Lorefice 4166482022 Fixed naming of variables in the code generator class 2025-02-26 16:01:16 +01:00
Samuele Lorefice 5aeaf064ce Added todo 2025-02-25 18:44:48 +01:00
Samuele Lorefice 9081c9b32e Unrolled loops so the debugger works 2025-02-25 18:27:37 +01:00
Samuele Lorefice 91b74a24dd Created a builder for attributes in code generator 2025-02-25 16:32:38 +01:00
Samuele Lorefice 23cec0bd0f Replaced longs with built in IntPtr type. 2025-02-25 16:32:08 +01:00
Samuele Lorefice 315cd6eb44 Added ToPointer ByteArray extension method 2025-02-25 16:31:28 +01:00
Samuele Lorefice b5e0793692 Added check to avoid storing nullpointers in the pointers map. Updated comments. 2025-02-21 17:04:13 +01:00
Samuele Lorefice 9a0024884c Optimized memory usage 2025-02-20 21:20:10 +01:00
Samuele Lorefice f383debd18 Added memoryOffset value to DNAFieldAttribute, regenerated files. 2025-02-20 21:00:55 +01:00
Samuele Lorefice b171b65aa5 Added handling of pointers, huge memory improvements 2025-02-20 19:58:33 +01:00
Samuele Lorefice 6d565377a4 Added more documentation and started pointer handling 2025-02-20 18:41:27 +01:00
Samuele Lorefice d95c81f3f2 Added memory address management 2025-02-20 17:33:55 +01:00
Samuele Lorefice c0533a0d69 More documentation added in the FillObject method. 2025-02-20 15:09:00 +01:00
Samuele Lorefice e618527135 Added documentation to Reader class in BlendFile. Extracted method for Filling an object with data from a block, given an offset 2025-02-20 15:04:12 +01:00
mm00 b66247488e regenerate files 2025-02-19 18:48:50 +01:00
mm00 33a8f1baf3 Fixed SDNA type determination and fixed multiple count per block 2025-02-19 18:48:14 +01:00
mm00 2d2e45a8cf Added type size to custom attributes 2025-02-19 18:47:19 +01:00
mm00 380949122c regenerated files 2025-02-19 17:07:50 +01:00
mm00 f327f18b57 added IsPointer member to DNA field data 2025-02-19 17:07:37 +01:00
mm00 095986af06 WIP fixed array data size calculation 2025-02-18 19:12:49 +01:00
mm00 bc3ac0ad86 regenerated files 2025-02-18 18:16:57 +01:00