diff --git a/gtsam/inference/Conditional-inst.h b/gtsam/inference/Conditional-inst.h index 30433263c..ee13946d9 100644 --- a/gtsam/inference/Conditional-inst.h +++ b/gtsam/inference/Conditional-inst.h @@ -54,6 +54,6 @@ double Conditional::logProbability( template double Conditional::evaluate( const HybridValues& c) const { - return exp(static_cast(this)->logProbability(c)); + throw std::runtime_error("Conditional::evaluate is not implemented"); } } // namespace gtsam diff --git a/gtsam/symbolic/SymbolicConditional.cpp b/gtsam/symbolic/SymbolicConditional.cpp index eb8a95cff..fd9cc453d 100644 --- a/gtsam/symbolic/SymbolicConditional.cpp +++ b/gtsam/symbolic/SymbolicConditional.cpp @@ -15,7 +15,6 @@ * @date Oct 17, 2010 */ -#include #include namespace gtsam { @@ -38,5 +37,10 @@ double SymbolicConditional::logProbability(const HybridValues& c) const { 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 diff --git a/gtsam/symbolic/SymbolicConditional.h b/gtsam/symbolic/SymbolicConditional.h index 8970902d7..6bd966450 100644 --- a/gtsam/symbolic/SymbolicConditional.h +++ b/gtsam/symbolic/SymbolicConditional.h @@ -17,10 +17,10 @@ #pragma once -#include -#include #include #include +#include +#include namespace gtsam { @@ -114,12 +114,12 @@ namespace gtsam { /// @name HybridValues methods. /// @{ - /** - * logProbability throws exception, symbolic. - */ + /// logProbability throws exception, symbolic. 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 SymbolicFactor::error; // Expose error(const HybridValues&) method..