/* ---------------------------------------------------------------------------- * GTSAM Copyright 2010, Georgia Tech Research Corporation, * Atlanta, Georgia 30332-0415 * All Rights Reserved * Authors: Frank Dellaert, et al. (see THANKS for the full author list) * See LICENSE for the license information * -------------------------------------------------------------------------- */ /** * @file LieScalar.h * @brief A wrapper around scalar providing Lie compatibility * @author Kai Ni */ #pragma once #include #include namespace gtsam { /** * @deprecated: LieScalar, LieVector and LieMatrix are obsolete in GTSAM 4.0 as * we can directly add double, Vector, and Matrix into values now, because of * gtsam::traits. */ struct GTSAM_EXPORT LieScalar { enum { dimension = 1 }; /** default constructor */ LieScalar() : d_(0.0) {} /** wrap a double */ /*explicit*/ LieScalar(double d) : d_(d) {} /** access the underlying value */ double value() const { return d_; } /** Automatic conversion to underlying value */ operator double() const { return d_; } /** convert vector */ Vector1 vector() const { Vector1 v; v< struct traits : public internal::ScalarTraits {}; } // \namespace gtsam