SphinxBase  0.6
ngram_model_dmp32.c
1 /* -*- c-basic-offset: 4; indent-tabs-mode: nil -*- */
2 /* ====================================================================
3  * Copyright (c) 1999-2007 Carnegie Mellon University. All rights
4  * reserved.
5  *
6  * Redistribution and use in source and binary forms, with or without
7  * modification, are permitted provided that the following conditions
8  * are met:
9  *
10  * 1. Redistributions of source code must retain the above copyright
11  * notice, this list of conditions and the following disclaimer.
12  *
13  * 2. Redistributions in binary form must reproduce the above copyright
14  * notice, this list of conditions and the following disclaimer in
15  * the documentation and/or other materials provided with the
16  * distribution.
17  *
18  * This work was supported in part by funding from the Defense Advanced
19  * Research Projects Agency and the National Science Foundation of the
20  * United States of America, and the CMU Sphinx Speech Consortium.
21  *
22  * THIS SOFTWARE IS PROVIDED BY CARNEGIE MELLON UNIVERSITY ``AS IS'' AND
23  * ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
24  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
25  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL CARNEGIE MELLON UNIVERSITY
26  * NOR ITS EMPLOYEES BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
27  * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
28  * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
29  * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
30  * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
31  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
32  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
33  *
34  * ====================================================================
35  *
36  */
37 /*
38  * \file ngram_model_dmp32.c DMP32 format language models
39  *
40  * Author: David Huggins-Daines <dhuggins@cs.cmu.edu>
41  */
42 
43 #include "sphinxbase/ckd_alloc.h"
44 
45 #include "ngram_model_internal.h"
46 
47 static ngram_funcs_t ngram_model_dmp32_funcs;
48 
50 ngram_model_dmp32_read(cmd_ln_t *config,
51  const char *file_name,
52  logmath_t *lmath)
53 {
54  return NULL;
55 }
56 
57 int
58 ngram_model_dmp32_write(ngram_model_t *model,
59  const char *file_name)
60 {
61  return -1;
62 }
63 
64 static int
65 ngram_model_dmp32_apply_weights(ngram_model_t *model, float32 lw,
66  float32 wip, float32 uw)
67 {
68  return 0;
69 }
70 
71 static int32
72 ngram_model_dmp32_score(ngram_model_t *model, int32 wid,
73  int32 *history, int32 n_hist,
74  int32 *n_used)
75 {
76  return model->log_zero;
77 }
78 
79 static int32
80 ngram_model_dmp32_raw_score(ngram_model_t *model, int32 wid,
81  int32 *history, int32 n_hist,
82  int32 *n_used)
83 {
84  return model->log_zero;
85 }
86 
87 static void
88 ngram_model_dmp32_free(ngram_model_t *base)
89 {
90  ckd_free(base);
91 }
92 
93 static ngram_funcs_t ngram_model_dmp32_funcs = {
94  ngram_model_dmp32_free, /* free */
95  ngram_model_dmp32_apply_weights, /* apply_weights */
96  ngram_model_dmp32_score, /* score */
97  ngram_model_dmp32_raw_score, /* raw_score */
98  NULL /* add_ug */
99 };
Sphinx's memory allocation/deallocation routines.
SPHINXBASE_EXPORT void ckd_free(void *ptr)
Test and free a 1-D array.
Definition: ckd_alloc.c:241
int32 log_zero
Zero probability, cached here for quick lookup.
Opaque structure used to hold the results of command-line parsing.
Implementation-specific functions for operating on ngram_model_t objects.
Common implementation of ngram_model_t.