00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef INDRI_BELIEFNODE_HPP
00020 #define INDRI_BELIEFNODE_HPP
00021
00022 #include "indri/InferenceNetworkNode.hpp"
00023 #include "indri/greedy_vector"
00024 #include "indri/ScoredExtentResult.hpp"
00025 #include <float.h>
00026
00027 #define INDRI_HUGE_SCORE ( DBL_MAX )
00028 #define INDRI_TINY_SCORE ( -DBL_MAX )
00029
00030 class BeliefNode : public InferenceNetworkNode {
00031 public:
00032 virtual double maximumBackgroundScore() = 0;
00033 virtual double maximumScore() = 0;
00034 virtual const greedy_vector<ScoredExtentResult>& score( int documentID, int start, int end, int documentLength ) = 0;
00035 virtual bool hasMatch( int documentID ) = 0;
00036 virtual void annotate( class Annotator& annotator, int documentID, int begin, int end ) = 0;
00037 };
00038
00039 #endif // INDRI_BELIEFNODE_HPP
00040