From a4c1e537b0cb2540535357d880e46f63b38c134f Mon Sep 17 00:00:00 2001 From: Fox Caminiti Date: Wed, 5 Oct 2022 23:49:41 -0400 Subject: graph edits; arch rework --- memory.h | 64 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 64 insertions(+) create mode 100644 memory.h (limited to 'memory.h') diff --git a/memory.h b/memory.h new file mode 100644 index 0000000..47c737e --- /dev/null +++ b/memory.h @@ -0,0 +1,64 @@ +enum memory_table_list { + + P_AVInfo, + P_UndoBuffer, + P_MiscCache, + + F_File, + F_Precomps, + F_Layers, + F_Sources, + F_Properties, + F_Keyframes, + F_Effects, + F_Nodes, + F_Strings, + + B_CachedBitmaps, +}; + +struct memory_table { + char *Name; + void *Address; + uint64 Size; + uint32 Block_ElementSize; +}; + +struct global_memory { + void *Address; + uint64 CurrentPosition; + uint64 Size; +}; + +enum history_action_type { + action_type_swap, + action_type_shift +}; + +struct history_action { + memory_table_list TableName; + history_action_type Type; + uint64 Size; + uint64 ByteOffset; + uint64 ShiftAmount; // Only for type_shift + int16 Direction; // Only for type_shift +}; + +struct history_entry { + char *Name; + uint16 NumberOfActions; +}; + +struct history_entry_list { + history_entry Entry[256]; + history_action Action[1024]; + uint16 NumberOfEntries; + uint16 EntryPlayhead; +}; + +struct memory { + memory_table Slot[16]; + history_entry_list History; + bool32 IsFileSaved; +}; + -- cgit v1.2.3