Turns out GaussianConditional-inl.h was needed after all

release/4.3a0
Richard Roberts 2013-08-06 18:16:25 +00:00
parent 2d60d2cdfa
commit 22aaf47e3d
2 changed files with 50 additions and 0 deletions

View File

@ -0,0 +1,48 @@
/* ----------------------------------------------------------------------------
* 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 GaussianConditional-inl.h
* @brief Conditional Gaussian Base class
* @author Christian Potthast
*/
// \callgraph
#pragma once
#include <boost/range/join.hpp>
#include <boost/assign/list_of.hpp>
namespace gtsam {
/* ************************************************************************* */
template<class PARENTS>
GaussianConditional::GaussianConditional(Index key, const Vector& d,
const Matrix& R, const PARENTS& parents, const SharedDiagonal& sigmas, const typename PARENTS::value_type*) :
BaseFactor(boost::join(
boost::assign::cref_list_of<1,typename PARENTS::value_type>(std::make_pair(key, R)),
parents), d, sigmas),
BaseConditional(1) {}
/* ************************************************************************* */
template<typename TERMS>
GaussianConditional::GaussianConditional(const TERMS& terms,
size_t nrFrontals, const Vector& d, const SharedDiagonal& sigmas) :
BaseFactor(terms, d, sigmas), BaseConditional(nrFrontals) {}
/* ************************************************************************* */
template<typename KEYS>
GaussianConditional::GaussianConditional(
const KEYS& keys, size_t nrFrontals, const VerticalBlockMatrix& augmentedMatrix, const SharedDiagonal& sigmas) :
BaseFactor(keys, augmentedMatrix, sigmas), BaseConditional(nrFrontals) {}
} // gtsam

View File

@ -152,3 +152,5 @@ namespace gtsam {
} // gtsam
#include <gtsam/linear/GaussianConditional-inl.h>