GTSAM  4.0.2
C++ library for smoothing and mapping (SAM)
HybridNonlinearFactorGraph.h
Go to the documentation of this file.
1 /* ----------------------------------------------------------------------------
2 
3  * GTSAM Copyright 2010, Georgia Tech Research Corporation,
4  * Atlanta, Georgia 30332-0415
5  * All Rights Reserved
6  * Authors: Frank Dellaert, et al. (see THANKS for the full author list)
7 
8  * See LICENSE for the license information
9 
10  * -------------------------------------------------------------------------- */
11 
19 #pragma once
20 
22 
23 namespace gtsam {
24 
25 class HybridGaussianFactorGraph;
26 
33 class GTSAM_EXPORT HybridNonlinearFactorGraph : public HybridFactorGraph {
34  protected:
35  public:
36  using Base = HybridFactorGraph;
38  using shared_ptr = std::shared_ptr<This>;
39 
41  using Indices = KeyVector;
42 
45 
46  HybridNonlinearFactorGraph() = default;
47 
53  template <class DERIVEDFACTOR>
55  : Base(graph) {}
56 
60 
62  void print(
63  const std::string& s = "HybridNonlinearFactorGraph",
64  const KeyFormatter& keyFormatter = DefaultKeyFormatter) const override;
65 
69 
77  std::shared_ptr<HybridGaussianFactorGraph> linearize(
78  const Values& continuousValues) const;
80 };
81 
82 template <>
84  : public Testable<HybridNonlinearFactorGraph> {};
85 
86 } // namespace gtsam
Definition: HybridNonlinearFactorGraph.h:33
Definition: Testable.h:152
Definition: Group.h:43
GTSAM_EXPORT void print(const Matrix &A, const std::string &s, std::ostream &stream)
std::shared_ptr< This > shared_ptr
shared_ptr to This
Definition: HybridFactorGraph.h:42
HybridNonlinearFactorGraph(const FactorGraph< DERIVEDFACTOR > &graph)
Definition: HybridNonlinearFactorGraph.h:54
Definition: Values.h:65
std::function< std::string(Key)> KeyFormatter
Typedef for a function to format a key, i.e. to convert it to a string.
Definition: Key.h:35
Definition: chartTesting.h:28
FastVector< Key > KeyVector
Define collection type once and for all - also used in wrappers.
Definition: Key.h:86
Definition: HybridFactorGraph.h:38
Factor graph with utilities for hybrid factors.