void T3DMaterialParser::ImportExpression(FExpressionInput * ExpressionInput) { FString Value; if (GetOneValueAfter(TEXT("Expression="), Value)) AddRequirement(Value, UObjectDelegate::CreateRaw(this, &T3DMaterialParser::SetExpression, ExpressionInput)); if (GetOneValueAfter(TEXT("Mask="), Value)) ExpressionInput->Mask = FCString::Atoi(*Value); if (GetOneValueAfter(TEXT("MaskR="), Value)) ExpressionInput->MaskR = FCString::Atoi(*Value); if (GetOneValueAfter(TEXT("MaskG="), Value)) ExpressionInput->MaskG = FCString::Atoi(*Value); if (GetOneValueAfter(TEXT("MaskB="), Value)) ExpressionInput->MaskB = FCString::Atoi(*Value); if (GetOneValueAfter(TEXT("MaskA="), Value)) ExpressionInput->MaskA = FCString::Atoi(*Value); }
Job::Job(const Job& other) : BaseJob(other.Name()), fEnabled(other.IsEnabled()), fService(other.IsService()), fCreateDefaultPort(other.CreateDefaultPort()), fLaunching(other.IsLaunching()), fInitStatus(B_NO_INIT), fTeam(-1), fDefaultPort(-1), fToken((uint32)B_PREFERRED_TOKEN), fLaunchStatus(B_NO_INIT), fTarget(other.Target()), fPendingLaunchDataReplies(0, false) { mutex_init(&fLaunchStatusLock, "launch status lock"); fCondition = other.fCondition; // TODO: copy events //fEvent = other.fEvent; fEnvironment = other.fEnvironment; fSourceFiles = other.fSourceFiles; for (int32 i = 0; i < other.Arguments().CountStrings(); i++) AddArgument(other.Arguments().StringAt(i)); for (int32 i = 0; i < other.Requirements().CountStrings(); i++) AddRequirement(other.Requirements().StringAt(i)); PortMap::const_iterator constIterator = other.Ports().begin(); for (; constIterator != other.Ports().end(); constIterator++) { fPortMap.insert( std::make_pair(constIterator->first, constIterator->second)); } PortMap::iterator iterator = fPortMap.begin(); for (; iterator != fPortMap.end(); iterator++) iterator->second.RemoveData("port"); }