@@ -409,6 +409,27 @@ function updateVariableSolverData!(dfg::AbstractDFG,
409
409
return var. solverDataDict[vnd. solverKey]
410
410
end
411
411
412
+
413
+ function updateVariableSolverData! (dfg:: AbstractDFG ,
414
+ variablekey:: Symbol ,
415
+ vnd:: VariableNodeData ,
416
+ solverKey:: Symbol ,
417
+ useCopy:: Bool = true ,
418
+ fields:: Vector{Symbol} = Symbol[],
419
+ verbose:: Bool = true )
420
+
421
+ # TODO not very clean
422
+ if vnd. solverKey != solverKey
423
+ @warn " TODO It looks like solverKey as parameter is deprecated, set it in vnd, or keep this function?"
424
+ usevnd = useCopy ? deepcopy (vnd) : vnd
425
+ usevnd. solverKey = solverKey
426
+ return updateVariableSolverData! (dfg, variablekey, usevnd, useCopy, fields, verbose)
427
+ else
428
+ return updateVariableSolverData! (dfg, variablekey, vnd, useCopy, fields, verbose)
429
+ end
430
+ end
431
+
432
+
412
433
updateVariableSolverData! (dfg:: AbstractDFG ,
413
434
sourceVariable:: DFGVariable ,
414
435
solverKey:: Symbol = :default ,
@@ -441,7 +462,7 @@ function deepcopySolvekeys!(dfg::AbstractDFG,
441
462
for x in labels
442
463
sd = deepcopy (getSolverData (getVariable (dfg,x), src))
443
464
sd. solverKey = dest
444
- updateVariableSolverData! (dfg, x, true , Symbol[], verbose )
465
+ updateVariableSolverData! (dfg, x, sd, true , Symbol[], verbose )
445
466
end
446
467
end
447
468
const deepcopySupersolve! = deepcopySolvekeys!
0 commit comments