diff --git a/gtsam/symbolic/SymbolicBayesNet.h b/gtsam/symbolic/SymbolicBayesNet.h index d9b8ecb57..33c77c6de 100644 --- a/gtsam/symbolic/SymbolicBayesNet.h +++ b/gtsam/symbolic/SymbolicBayesNet.h @@ -60,6 +60,16 @@ namespace gtsam { explicit SymbolicBayesNet(const FactorGraph& graph) : Base(graph) {} + /** + * Constructor that takes an initializer list of shared pointers. + * FactorGraph fg = {make_shared(), ...}; + */ + SymbolicBayesNet( + std::initializer_list> + sharedFactors) { + for (auto&& f : sharedFactors) factors_.push_back(f); + } + /// Destructor virtual ~SymbolicBayesNet() {} diff --git a/gtsam/symbolic/SymbolicFactorGraph.h b/gtsam/symbolic/SymbolicFactorGraph.h index 36379fd83..95892eec8 100644 --- a/gtsam/symbolic/SymbolicFactorGraph.h +++ b/gtsam/symbolic/SymbolicFactorGraph.h @@ -81,6 +81,15 @@ namespace gtsam { template SymbolicFactorGraph(const FactorGraph& graph) : Base(graph) {} + /** + * Constructor that takes an initializer list of shared pointers. + * FactorGraph fg = {make_shared(), ...}; + */ + SymbolicFactorGraph(std::initializer_list> + sharedFactors) { + for (auto&& f : sharedFactors) factors_.push_back(f); + } + /// Destructor virtual ~SymbolicFactorGraph() {}