36 lines
		
	
	
		
			993 B
		
	
	
	
		
			C
		
	
	
	
	
	
		
		
			
		
	
	
			36 lines
		
	
	
		
			993 B
		
	
	
	
		
			C
		
	
	
	
	
	
|  | #pragma once | |||
|  | 
 | |||
|  | #include "CoreMinimal.h"
 | |||
|  | #include "CSBlueprintCompiler.h"
 | |||
|  | #include "Modules/ModuleManager.h"
 | |||
|  | 
 | |||
|  | class UCSInterface; | |||
|  | struct FCSManagedReferencesCollection; | |||
|  | class UCSEnum; | |||
|  | class UCSScriptStruct; | |||
|  | class FCSBlueprintCompiler; | |||
|  | 
 | |||
|  | DECLARE_LOG_CATEGORY_EXTERN(LogUnrealSharpCompiler, Log, All); | |||
|  | 
 | |||
|  | class FUnrealSharpCompilerModule : public IModuleInterface | |||
|  | { | |||
|  | public: | |||
|  |     virtual void StartupModule() override; | |||
|  |     virtual void ShutdownModule() override; | |||
|  | private: | |||
|  |      | |||
|  |     void OnNewClass(UCSClass* NewClass); | |||
|  |     void OnNewStruct(UCSScriptStruct* NewStruct); | |||
|  |     void OnNewEnum(UCSEnum* NewEnum); | |||
|  |     void OnNewInterface(UCSInterface* NewInterface); | |||
|  |      | |||
|  |     void OnManagedAssemblyLoaded(const FName& AssemblyName); | |||
|  |     void RecompileAndReinstanceBlueprints(); | |||
|  | 
 | |||
|  |     void AddManagedReferences(FCSManagedReferencesCollection& Collection); | |||
|  | 
 | |||
|  |     FCSBlueprintCompiler BlueprintCompiler; | |||
|  |      | |||
|  |     TArray<UBlueprint*> ManagedClassesToCompile; | |||
|  |     TArray<UBlueprint*> ManagedComponentsToCompile; | |||
|  | }; |