public UHTModuleInfo(SerializationInfo Info, StreamingContext Context) { ModuleName = Info.GetString("mn"); ModuleDirectory = Info.GetString("md"); ModuleType = Info.GetString("mt"); PublicUObjectClassesHeaders = (List <FileItem>)Info.GetValue("cl", typeof(List <FileItem>)); PublicUObjectHeaders = (List <FileItem>)Info.GetValue("pu", typeof(List <FileItem>)); PrivateUObjectHeaders = (List <FileItem>)Info.GetValue("pr", typeof(List <FileItem>)); PCH = Info.GetString("pc"); GeneratedCPPFilenameBase = Info.GetString("ge"); GeneratedCodeVersion = (EGeneratedCodeVersion)Info.GetInt32("gv"); }
public UHTModuleInfo(SerializationInfo Info, StreamingContext Context) { ModuleName = Info.GetString("mn"); ModuleDirectory = Info.GetString("md"); ModuleType = Info.GetString("mt"); PublicUObjectClassesHeaders = (List<FileItem>)Info.GetValue("cl", typeof(List<FileItem>)); PublicUObjectHeaders = (List<FileItem>)Info.GetValue("pu", typeof(List<FileItem>)); PrivateUObjectHeaders = (List<FileItem>)Info.GetValue("pr", typeof(List<FileItem>)); PCH = Info.GetString("pc"); GeneratedCPPFilenameBase = Info.GetString("ge"); GeneratedCodeVersion = (EGeneratedCodeVersion)Info.GetInt32("gv"); }
/// <summary> /// If any of this module's source files contain UObject definitions, this will return those header files back to the caller /// </summary> /// <returns> public UHTModuleInfoCacheType GetCachedUHTModuleInfo(EGeneratedCodeVersion GeneratedCodeVersion) { if (UHTModuleInfoCache == null) { IEnumerable<string> HeaderFilenames = Directory.GetFiles(ModuleDirectory.FullName, "*.h", SearchOption.AllDirectories); UHTModuleInfo Info = ExternalExecution.CreateUHTModuleInfo(HeaderFilenames, Name, ModuleDirectory, Type, GeneratedCodeVersion); UHTModuleInfoCache = new UHTModuleInfoCacheType(Info.PublicUObjectHeaders.Concat(Info.PublicUObjectClassesHeaders).Concat(Info.PrivateUObjectHeaders).Select(x => x.AbsolutePath).ToList(), Info); } return UHTModuleInfoCache; }