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