26 #ifndef _OPENCOG_TRUTH_VALUE_H
27 #define _OPENCOG_TRUTH_VALUE_H
33 #include <opencog/util/exceptions.h>
39 class TruthValueUTest;
89 :
public std::enable_shared_from_this<TruthValue>
96 friend class ::TruthValueUTest;
100 throw RuntimeException(TRACE_INFO,
"Cannot modify truth values!");
145 virtual std::string
toString()
const = 0;
157 {
return !(*
this == rhs); }
185 template<
typename Out>
195 #endif // _OPENCOG_TRUTH_VALUE_H
TruthValue & operator=(const TruthValue &rhs)
virtual bool isDefaultTV() const
virtual count_t getCount() const =0
virtual TruthValueType getType() const =0
static TruthValuePtr TRUE_TV()
std::shared_ptr< TruthValue > TruthValuePtr
virtual TruthValuePtr clone() const =0
friend class SavingLoading
virtual confidence_t getConfidence() const =0
static TruthValuePtr NULL_TV()
virtual bool operator==(const TruthValue &rhs) const =0
static TruthValuePtr TRIVIAL_TV()
bool operator!=(const TruthValue &rhs) const
static TruthValuePtr DEFAULT_TV()
virtual TruthValuePtr merge(TruthValuePtr, TVMergeStyle ms=DEFAULT) const =0
static TruthValuePtr FALSE_TV()
ostream & operator<<(ostream &out, const opencog::AtomSpace &as)
virtual std::string toString() const =0
virtual bool isNullTv() const
virtual TruthValue * rawclone() const =0
virtual strength_t getMean() const =0