PocketSphinx  5prealpha
ps_alignment.h File Reference

Multi-level alignment structure. More...

#include <sphinxbase/prim_type.h>
#include "dict2pid.h"
#include "hmm.h"

Go to the source code of this file.

Data Structures

struct  ps_alignment_entry_s
struct  ps_alignment_vector_s
struct  ps_alignment_s
struct  ps_alignment_iter_s


#define PS_ALIGNMENT_NONE   ((uint16)0xffff)


typedef struct ps_alignment_entry_s ps_alignment_entry_t
typedef struct
typedef struct ps_alignment_s ps_alignment_t
typedef struct ps_alignment_iter_s ps_alignment_iter_t


ps_alignment_tps_alignment_init (dict2pid_t *d2p)
 Create a new, empty alignment.
int ps_alignment_free (ps_alignment_t *al)
 Release an alignment.
int ps_alignment_add_word (ps_alignment_t *al, int32 wid, int duration)
 Append a word.
int ps_alignment_populate (ps_alignment_t *al)
 Populate lower layers using available word information.
int ps_alignment_populate_ci (ps_alignment_t *al)
 Populate lower layers using context-independent phones.
int ps_alignment_propagate (ps_alignment_t *al)
 Propagate timing information up from state sequence.
int ps_alignment_n_words (ps_alignment_t *al)
 Number of words.
int ps_alignment_n_phones (ps_alignment_t *al)
 Number of phones.
int ps_alignment_n_states (ps_alignment_t *al)
 Number of states.
ps_alignment_iter_tps_alignment_words (ps_alignment_t *al)
 Iterate over the alignment starting at the first word.
ps_alignment_iter_tps_alignment_phones (ps_alignment_t *al)
 Iterate over the alignment starting at the first phone.
ps_alignment_iter_tps_alignment_states (ps_alignment_t *al)
 Iterate over the alignment starting at the first state.
ps_alignment_entry_tps_alignment_iter_get (ps_alignment_iter_t *itor)
 Get the alignment entry pointed to by an iterator.
ps_alignment_iter_tps_alignment_iter_goto (ps_alignment_iter_t *itor, int pos)
 Move alignment iterator to given index.
ps_alignment_iter_tps_alignment_iter_next (ps_alignment_iter_t *itor)
 Move an alignment iterator forward.
ps_alignment_iter_tps_alignment_iter_prev (ps_alignment_iter_t *itor)
 Move an alignment iterator back.
ps_alignment_iter_tps_alignment_iter_up (ps_alignment_iter_t *itor)
 Get a new iterator starting at the parent of the current node.
ps_alignment_iter_tps_alignment_iter_down (ps_alignment_iter_t *itor)
 Get a new iterator starting at the first child of the current node.
int ps_alignment_iter_free (ps_alignment_iter_t *itor)
 Release an iterator before completing all iterations.

Detailed Description

Multi-level alignment structure.

Definition in file ps_alignment.h.