示例#1
0
 /// <summary>
 /// Constructor. Reads a makefile from disk.
 /// </summary>
 /// <param name="Reader">The archive to read from</param>
 public TargetMakefile(BinaryArchiveReader Reader)
 {
     CreateTimeUtc                = new DateTime(Reader.ReadLong(), DateTimeKind.Utc);
     ToolchainInfo                = Reader.ReadString();
     ExternalMetadata             = Reader.ReadString();
     ReceiptFile                  = Reader.ReadFileReference();
     ProjectIntermediateDirectory = Reader.ReadDirectoryReference();
     TargetType              = (TargetType)Reader.ReadInt();
     bDeployAfterCompile     = Reader.ReadBool();
     bHasProjectScriptPlugin = Reader.ReadBool();
     AdditionalArguments     = Reader.ReadArray(() => Reader.ReadString());
     PreBuildScripts         = Reader.ReadArray(() => Reader.ReadFileReference());
     Actions = Reader.ReadList(() => new Action(Reader));
     EnvironmentVariables    = Reader.ReadList(() => Tuple.Create(Reader.ReadString(), Reader.ReadString()));
     OutputItems             = Reader.ReadList(() => Reader.ReadFileItem());
     ModuleNameToOutputItems = Reader.ReadDictionary(() => Reader.ReadString(), () => Reader.ReadArray(() => Reader.ReadFileItem()), StringComparer.OrdinalIgnoreCase);
     HotReloadModuleNames    = Reader.ReadHashSet(() => Reader.ReadString(), StringComparer.OrdinalIgnoreCase);
     DirectoryToSourceFiles  = Reader.ReadDictionary(() => Reader.ReadDirectoryItem(), () => Reader.ReadArray(() => Reader.ReadFileItem()));
     WorkingSet = Reader.ReadHashSet(() => Reader.ReadFileItem());
     CandidatesForWorkingSet = Reader.ReadHashSet(() => Reader.ReadFileItem());
     UObjectModules          = Reader.ReadList(() => new UHTModuleInfo(Reader));
     UObjectModuleHeaders    = Reader.ReadList(() => new UHTModuleHeaderInfo(Reader));
     PluginFiles             = Reader.ReadHashSet(() => Reader.ReadFileItem());
     AdditionalDependencies  = Reader.ReadHashSet(() => Reader.ReadFileItem());
 }
示例#2
0
 /// <summary>
 /// Construct a key from an archive
 /// </summary>
 /// <param name="Reader">Archive to read from</param>
 public ConfigDependencyKey(BinaryArchiveReader Reader)
 {
     Type        = (ConfigHierarchyType)Reader.ReadInt();
     ProjectDir  = Reader.ReadDirectoryReference();
     Platform    = Reader.ReadUnrealTargetPlatform();
     SectionName = Reader.ReadString();
     KeyName     = Reader.ReadString();
 }
示例#3
0
 public Action(BinaryArchiveReader Reader)
 {
     ActionType                     = (ActionType)Reader.ReadByte();
     WorkingDirectory               = Reader.ReadDirectoryReference();
     bPrintDebugInfo                = Reader.ReadBool();
     CommandPath                    = Reader.ReadFileReference();
     CommandArguments               = Reader.ReadString();
     CommandDescription             = Reader.ReadString();
     StatusDescription              = Reader.ReadString();
     bCanExecuteRemotely            = Reader.ReadBool();
     bCanExecuteRemotelyWithSNDBS   = Reader.ReadBool();
     bIsGCCCompiler                 = Reader.ReadBool();
     bShouldOutputStatusDescription = Reader.ReadBool();
     bProducesImportLibrary         = Reader.ReadBool();
     PrerequisiteItems              = Reader.ReadList(() => Reader.ReadFileItem());
     ProducedItems                  = Reader.ReadList(() => Reader.ReadFileItem());
     DeleteItems                    = Reader.ReadList(() => Reader.ReadFileItem());
     DependencyListFile             = Reader.ReadFileItem();
 }
示例#4
0
 /// <summary>
 /// Read a directory item from a binary archive
 /// </summary>
 /// <param name="Reader">Reader to serialize data from</param>
 /// <returns>Instance of the serialized directory item</returns>
 public static DirectoryItem ReadDirectoryItem(this BinaryArchiveReader Reader)
 {
     return(Reader.ReadObjectReference <DirectoryItem>(() => DirectoryItem.GetItemByDirectoryReference(Reader.ReadDirectoryReference())));
 }