diff options
Diffstat (limited to 'extractor/phrase_location_sampler.h')
-rw-r--r-- | extractor/phrase_location_sampler.h | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/extractor/phrase_location_sampler.h b/extractor/phrase_location_sampler.h new file mode 100644 index 00000000..0e88335e --- /dev/null +++ b/extractor/phrase_location_sampler.h @@ -0,0 +1,35 @@ +#ifndef _PHRASE_LOCATION_SAMPLER_H_ +#define _PHRASE_LOCATION_SAMPLER_H_ + +#include <memory> + +#include "sampler.h" + +namespace extractor { + +class MatchingsSampler; +class PhraseLocation; +class SuffixArray; +class SuffixArrayRangeSampler; + +class PhraseLocationSampler : public Sampler { + public: + PhraseLocationSampler(shared_ptr<SuffixArray> suffix_array, int max_samples); + + // For testing only. + PhraseLocationSampler( + shared_ptr<MatchingsSampler> matchings_sampler, + shared_ptr<SuffixArrayRangeSampler> suffix_array_sampler); + + PhraseLocation Sample( + const PhraseLocation& location, + const unordered_set<int>& blacklisted_sentence_ids) const; + + private: + shared_ptr<MatchingsSampler> matchings_sampler; + shared_ptr<SuffixArrayRangeSampler> suffix_array_sampler; +}; + +} // namespace extractor + +#endif |