Fix linking error

release/4.3a0
Frank Dellaert 2023-01-10 14:48:25 -08:00
parent 28658490e8
commit f89ef731a5
3 changed files with 12 additions and 8 deletions

View File

@ -54,6 +54,6 @@ double Conditional<FACTOR, DERIVEDCONDITIONAL>::logProbability(
template <class FACTOR, class DERIVEDCONDITIONAL> template <class FACTOR, class DERIVEDCONDITIONAL>
double Conditional<FACTOR, DERIVEDCONDITIONAL>::evaluate( double Conditional<FACTOR, DERIVEDCONDITIONAL>::evaluate(
const HybridValues& c) const { const HybridValues& c) const {
return exp(static_cast<const DERIVEDCONDITIONAL*>(this)->logProbability(c)); throw std::runtime_error("Conditional::evaluate is not implemented");
} }
} // namespace gtsam } // namespace gtsam

View File

@ -15,7 +15,6 @@
* @date Oct 17, 2010 * @date Oct 17, 2010
*/ */
#include <gtsam/inference/Conditional-inst.h>
#include <gtsam/symbolic/SymbolicConditional.h> #include <gtsam/symbolic/SymbolicConditional.h>
namespace gtsam { namespace gtsam {
@ -38,5 +37,10 @@ double SymbolicConditional::logProbability(const HybridValues& c) const {
throw std::runtime_error("SymbolicConditional::logProbability is not implemented"); throw std::runtime_error("SymbolicConditional::logProbability is not implemented");
} }
/* ************************************************************************* */
double SymbolicConditional::evaluate(const HybridValues& c) const {
throw std::runtime_error("SymbolicConditional::evaluate is not implemented");
}
} // namespace gtsam } // namespace gtsam

View File

@ -17,10 +17,10 @@
#pragma once #pragma once
#include <gtsam/symbolic/SymbolicFactor.h>
#include <gtsam/inference/Conditional.h>
#include <gtsam/base/Testable.h> #include <gtsam/base/Testable.h>
#include <gtsam/base/types.h> #include <gtsam/base/types.h>
#include <gtsam/inference/Conditional-inst.h>
#include <gtsam/symbolic/SymbolicFactor.h>
namespace gtsam { namespace gtsam {
@ -114,12 +114,12 @@ namespace gtsam {
/// @name HybridValues methods. /// @name HybridValues methods.
/// @{ /// @{
/** /// logProbability throws exception, symbolic.
* logProbability throws exception, symbolic.
*/
double logProbability(const HybridValues& x) const override; double logProbability(const HybridValues& x) const override;
using Conditional::evaluate; // Expose evaluate(const HybridValues&) method.. /// evaluate throws exception, symbolic.
double evaluate(const HybridValues& x) const override;
using Conditional::operator(); // Expose evaluate(const HybridValues&) method.. using Conditional::operator(); // Expose evaluate(const HybridValues&) method..
using SymbolicFactor::error; // Expose error(const HybridValues&) method.. using SymbolicFactor::error; // Expose error(const HybridValues&) method..