diff --git a/SourceCodeGenerator.cs b/SourceCodeGenerator.cs index 3131fe7..e173166 100644 --- a/SourceCodeGenerator.cs +++ b/SourceCodeGenerator.cs @@ -62,6 +62,8 @@ namespace SourceCodeGeneratorUbtPlugin private const string HeaderSuffix = ".header.inl"; + private readonly HashSet ClassBlacklist = new(); + public SourceCodeGenerator(IUhtExportFactory factory) { Factory = factory; @@ -119,6 +121,17 @@ namespace SourceCodeGeneratorUbtPlugin ExportModule.Add(value); } } + + if (SettingConfigHierarchySection.TryGetValues("ClassBlacklist", out var BlacklistValues)) + { + foreach (var value in BlacklistValues) + { + if (!string.IsNullOrEmpty(value)) + { + ClassBlacklist.Add(value); + } + } + } } } @@ -179,7 +192,8 @@ namespace SourceCodeGeneratorUbtPlugin /// True if the class should be exported, false if not protected virtual bool CanExportClass(UhtClass classObj) { - return !classObj.ClassFlags.HasAnyFlags(EClassFlags.Interface) && + return !ClassBlacklist.Contains(classObj.SourceName) && + !classObj.ClassFlags.HasAnyFlags(EClassFlags.Interface) && IsClassTypeSupported(classObj); }