@@ -1505,7 +1505,9 @@ Related
1505
1505
1506
1506
IIF.loadTree, DFG.saveDFG, DFG.loadDFG, JLD2.@save, JLD2.@load
1507
1507
"""
1508
- function saveTree (treel:: BayesTree , filepath= joinpath (" /tmp" ," caesar" ," savetree.jld2" ))
1508
+ function saveTree (treel:: BayesTree ,
1509
+ filepath= joinpath (" /tmp" ," caesar" ," savetree.jld2" ) )
1510
+ #
1509
1511
savetree = deepcopy (treel)
1510
1512
for i in 1 : length (savetree. cliques)
1511
1513
if savetree. cliques[i]. attributes[" data" ] isa BayesTreeNodeData
@@ -1517,6 +1519,20 @@ function saveTree(treel::BayesTree, filepath=joinpath("/tmp","caesar","savetree.
1517
1519
return filepath
1518
1520
end
1519
1521
1522
+ function saveTree (treeArr:: Vector{BayesTree} ,
1523
+ filepath= joinpath (" /tmp" ," caesar" ," savetrees.jld2" ) )
1524
+ #
1525
+ savetree = deepcopy (treeArr)
1526
+ for savtre in savetree, i in 1 : length (savtre. cliques)
1527
+ if savtre. cliques[i]. attributes[" data" ] isa BayesTreeNodeData
1528
+ savtre. cliques[i]. attributes[" data" ] = convert (PackedBayesTreeNodeData, savtre. cliques[i]. attributes[" data" ])
1529
+ end
1530
+ end
1531
+
1532
+ JLD2. @save filepath savetree
1533
+ return filepath
1534
+ end
1535
+
1520
1536
"""
1521
1537
$SIGNATURES
1522
1538
@@ -1534,9 +1550,17 @@ function loadTree(filepath=joinpath("/tmp","caesar","savetree.jld2"))
1534
1550
data = @load filepath savetree
1535
1551
1536
1552
# convert back to a type that which could not be serialized by JLD2
1537
- for i in 1 : length (savetree. cliques)
1538
- if savetree. cliques[i]. attributes[" data" ] isa PackedBayesTreeNodeData
1539
- savetree. cliques[i]. attributes[" data" ] = convert (BayesTreeNodeData, savetree. cliques[i]. attributes[" data" ])
1553
+ if savetree isa Vector
1554
+ for savtre in savetree, i in 1 : length (savtre. cliques)
1555
+ if savtre. cliques[i]. attributes[" data" ] isa PackedBayesTreeNodeData
1556
+ savtre. cliques[i]. attributes[" data" ] = convert (BayesTreeNodeData, savtre. cliques[i]. attributes[" data" ])
1557
+ end
1558
+ end
1559
+ else
1560
+ for i in 1 : length (savetree. cliques)
1561
+ if savetree. cliques[i]. attributes[" data" ] isa PackedBayesTreeNodeData
1562
+ savetree. cliques[i]. attributes[" data" ] = convert (BayesTreeNodeData, savetree. cliques[i]. attributes[" data" ])
1563
+ end
1540
1564
end
1541
1565
end
1542
1566
0 commit comments