Plugins: Add LoadPipelineStarting / LoadPipelineEnding, rename IsHandled to FullyProcessed

This commit is contained in:
Katy Coe
2020-12-25 22:29:31 +01:00
parent db4432061c
commit e929d8d97e
7 changed files with 66 additions and 29 deletions

View File

@@ -6,6 +6,7 @@
using NoisyCowStudios.Bin2Object;
using Il2CppInspector.Reflection;
using System.Collections.Generic;
namespace Il2CppInspector.PluginAPI.V100
{
@@ -16,6 +17,11 @@ namespace Il2CppInspector.PluginAPI.V100
/// </summary>
public interface ILoadPipeline
{
/// <summary>
/// A new load task is about to start. Perform per-load initialization here
/// </summary>
void LoadPipelineStarting(PluginLoadPipelineStartingEventInfo info) { }
/// <summary>
/// Process global-metadata.dat when it is first opened as a sequence of bytes
/// Seek cursor will be at the start of the file
@@ -42,6 +48,13 @@ namespace Il2CppInspector.PluginAPI.V100
/// </summary>
void PostProcessPackage(Il2CppInspector package, PluginPostProcessPackageEventInfo data) { }
/// <summary>
/// The current load task has finished. Perform per-load teardown code here
/// One Il2CppInspector per sub-image in the binary is supplied
/// We have closed all open files but the .NET type model has not been created yet
/// </summary>
void LoadPipelineEnding(List<Il2CppInspector> packages, PluginLoadPipelineEndingEventInfo info) { }
/// <summary>
/// Post-process the .NET type model to make changes after it has been fully created
/// </summary>