summaryrefslogtreecommitdiff
path: root/decoder/apply_models.h
blob: d6d8b34a9e215919fcd241d0bbac4c625c234d3b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#ifndef _APPLY_MODELS_H_
#define _APPLY_MODELS_H_

struct ModelSet;
struct Hypergraph;
struct SentenceMetadata;

struct IntersectionConfiguration {
  const int algorithm; // 0 = full intersection, 1 = cube pruning
  const int pop_limit; // max number of pops off the heap at each node
  IntersectionConfiguration(int alg, int k) : algorithm(alg), pop_limit(k) {}
};

void ApplyModelSet(const Hypergraph& in,
                   const SentenceMetadata& smeta,
                   const ModelSet& models,
                   const IntersectionConfiguration& config,
                   Hypergraph* out);

#endif