Commit Graph
69 Commits
Author SHA1 Message Date
Samuele Lorefice c0bc1f0a0f Removed redundant statements 2025-03-12 00:55:23 +01:00
Samuele Lorefice 5b8158ea1a Added scaffolding for ArrayAttribute specific conversion 2025-03-11 19:18:41 +01:00
Samuele Lorefice c30467acc5 Regenerated code files 2025-03-11 19:12:04 +01:00
Samuele Lorefice 3756f864ed Code Reformat 2025-03-11 19:09:47 +01:00
Samuele Lorefice 0fee1f10d2 Integrated DnaArrayAtribute generation in the generator 2025-03-11 19:08:47 +01:00
Samuele Lorefice 0bf0aeab09 Added Array specific logic to Reader. **NOTE: This doesn't use the new attribute yet** 2025-03-11 18:44:48 +01:00
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
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
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
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
Samuele Lorefice 7403dd7776 Added extra parameter 2025-02-18 16:27:50 +01:00
Samuele Lorefice ebcc629feb Added Reader class to BlendFile library 2025-01-23 16:47:32 +01:00
Samuele Lorefice 2bd93ab3bb Renamed BlenderBlend class into BlendFile 2025-01-23 16:28:34 +01:00
Samuele Lorefice b7cd60e4cf General cleanup of the generator code 2025-01-23 16:23:09 +01:00
Samuele Lorefice 31690354f8 Cleaned up usings 2025-01-23 16:20:01 +01:00
Samuele Lorefice 0674e6b136 - Modified DNAClassAttribute to also support usage on structs
- Added auto generation of DNAClass attributes on file generation
- Regenerated all files
2025-01-23 16:15:50 +01:00
Samuele Lorefice 7c0708b377 Added BaseType "Attribute" to DNAClassAttribute generator function and regenerated the source. 2025-01-23 16:09:33 +01:00
Samuele Lorefice bf1eb8201c Regenerated all the files 2025-01-22 20:24:55 +01:00
Samuele Lorefice 162f888600 Added runtime generation of the attribute classes and marking of field metadata 2025-01-22 20:24:42 +01:00
Samuele Lorefice 439cea385f Regenerated files 2025-01-22 18:11:19 +01:00
Samuele Lorefice 5f15635cd8 Fixed array generation expression, removed compat types as they are being remapped 2025-01-22 18:11:09 +01:00
Samuele Lorefice 9a949dbeab Added Type stubbing 2025-01-22 17:56:49 +01:00
Samuele Lorefice 2d6159e331 added uint64_t compat file 2025-01-22 17:40:14 +01:00
Samuele Lorefice 3bcbde6bb2 Added skip for pointer to functions, added int64_t compat type 2025-01-22 17:09:33 +01:00
Samuele Lorefice d5533ac251 Corrected operators for uchar to use the internal type for operations, defined int8_t compat type 2025-01-22 16:29:54 +01:00
Samuele Lorefice 0a51b6e052 More cleanup 2025-01-22 03:03:49 +01:00
Samuele Lorefice 98f66f196e Added AutoGenerated header, switched to CodeCompileUnit, added global usings 2025-01-22 02:35:20 +01:00
Samuele Lorefice fa78292a67 Added Generation Output 2025-01-22 02:23:29 +01:00
Samuele Lorefice 83b207b799 Added string extension class 2025-01-22 02:23:16 +01:00
Samuele Lorefice 85631f707c More Cleanup 2025-01-22 02:22:39 +01:00
Samuele Lorefice 56c5654c52 Refactoring and reorg of Program file 2025-01-22 02:12:27 +01:00
Samuele Lorefice d1742775ad Renamed library project, cleaned up code 2025-01-22 01:57:46 +01:00
Samuele Lorefice 2a051cf098 Base files 2025-01-22 00:44:41 +01:00