gtsam 4.1.1
gtsam
linearExceptions.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
18#pragma once
19
21#include <gtsam/base/types.h>
22
23namespace gtsam {
24
94 class GTSAM_EXPORT IndeterminantLinearSystemException : public ThreadsafeException<IndeterminantLinearSystemException> {
95 Key j_;
96 public:
97 IndeterminantLinearSystemException(Key j) noexcept : j_(j) {}
98 ~IndeterminantLinearSystemException() noexcept override {}
99 Key nearbyVariable() const { return j_; }
100 const char* what() const noexcept override;
101 };
102
103 /* ************************************************************************* */
106 class GTSAM_EXPORT InvalidNoiseModel : public ThreadsafeException<InvalidNoiseModel> {
107 public:
110
111 InvalidNoiseModel(DenseIndex factorDims, DenseIndex noiseModelDims) :
112 factorDims(factorDims), noiseModelDims(noiseModelDims) {}
113 ~InvalidNoiseModel() noexcept override {}
114
115 const char* what() const noexcept override;
116
117 private:
118 mutable std::string description_;
119 };
120
121 /* ************************************************************************* */
125 public:
128
129 InvalidMatrixBlock(DenseIndex factorRows, DenseIndex blockRows) :
130 factorRows(factorRows), blockRows(blockRows) {}
131 ~InvalidMatrixBlock() noexcept override {}
132
133 const char* what() const noexcept override;
134
135 private:
136 mutable std::string description_;
137 };
138
139 /* ************************************************************************* */
141 public:
143 };
144
145 }
Typedefs for easier changing of types.
Base exception type that uses tbb_allocator if GTSAM is compiled with TBB.
Global functions in a separate testing namespace.
Definition: chartTesting.h:28
ptrdiff_t DenseIndex
The index type for Eigen objects.
Definition: types.h:75
std::uint64_t Key
Integer nonlinear key type.
Definition: types.h:69
Base exception type that uses tbb_allocator if GTSAM is compiled with TBB.
Definition: ThreadsafeException.h:42
Thrown when a linear system is ill-posed.
Definition: linearExceptions.h:94
An exception indicating that the noise model dimension passed into a JacobianFactor has a different d...
Definition: linearExceptions.h:106
const DenseIndex factorDims
The dimensionality of the factor.
Definition: linearExceptions.h:108
const DenseIndex noiseModelDims
The dimensionality of the noise model.
Definition: linearExceptions.h:109
An exception indicating that a matrix block passed into a JacobianFactor has a different dimensionali...
Definition: linearExceptions.h:124
const DenseIndex factorRows
The dimensionality of the factor.
Definition: linearExceptions.h:126
const DenseIndex blockRows
The dimensionality of the noise model.
Definition: linearExceptions.h:127
Definition: linearExceptions.h:140