Sophie

Sophie

distrib > Fedora > 14 > x86_64 > media > updates > by-pkgid > 0e54ba0ee564ce6063a5e83aa86060c5 > files > 248

festival-speechtools-devel-1.2.96-18.fc14.i686.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<HTML>
<HEAD>
   <TITLE>class  EST_WFST</TITLE>
   <META NAME="GENERATOR" CONTENT="DOC++ 3.4.6">
</HEAD>
 <body bgcolor="#ffffff" link="#0000ff" 
	vlink="#dd0000" text="#000088" alink="9000ff">

<A HREF = "http://www.cstr.ed.ac.uk/">
   <IMG align=left BORDER=0 SRC = "cstr.gif"></A> 
<A HREF="http://www.cstr.ed.ac.uk/projects/speech_tools.html">
	<IMG BORDER=0 ALIGN=right SRC="est.jpg" width=150 height=93></A>
<br>

<br clear=left>
<p align=right>

In file ../include/EST_WFST.h:<TABLE BORDER=0><TR>
<TD VALIGN=TOP><H2>class  <A HREF="#DOC.DOCU">EST_WFST</A></H2></TD></H2></TD></TR></TABLE>
<BLOCKQUOTE>a call representing a weighted finite-state transducer</BLOCKQUOTE>
<HR>

<DL>
<P><TABLE>
<DT><H3>Public Methods</H3><DD><TR>
<TD VALIGN=TOP><A HREF="#DOC.118.2"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A> </TD><TD><B>Reseting functions </B> <BR>
<I></I>
<P><TABLE>
<TR>
<TD VALIGN=TOP><A HREF="#DOC.118.2.1"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>void </TD><TD><B>init</B> (int init_num_states=10)<BR>
<I>Clear with (estimation of number of states required)</I>
</TD></TR><TR>
<TD VALIGN=TOP><A HREF="#DOC.118.2.2"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>void </TD><TD><B>init</B> (LISP in, LISP out)<BR>
<I>clear an initialise with given input and out alphabets</I>
</TD></TR><TR>
<TD VALIGN=TOP><A HREF="#DOC.118.2.3"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>void </TD><TD><B>copy</B> (const <!1><A HREF="EST_WFST.html">EST_WFST</A> &amp;<!1><A HREF="EST_SCFG_Chart.html#DOC.110.5">wfst</A>)<BR>
<I>Copy from existing wfst</I>
</TD></TR><TR>
<TD VALIGN=TOP><A HREF="#DOC.118.2.4"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>void </TD><TD><B>clear</B> ()<BR>
<I>clear removing existing states if any</I>
</TD></TR></TABLE></P>
</TD></TR><TR>
<TD VALIGN=TOP><A HREF="#DOC.118.3"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A> </TD><TD><B>General utility functions </B> <BR>
<I></I>
<P><TABLE>
<TR>
<TD VALIGN=TOP><A HREF="#DOC.118.3.1"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>int </TD><TD><B>in_symbol</B> (const <!1><A HREF="EST_String.html">EST_String</A> &amp;s) const <BR>
<I>Map input symbol to input alphabet index</I>
</TD></TR><TR>
<TD VALIGN=TOP><A HREF="#DOC.118.3.2"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>const <!1><A HREF="EST_String.html">EST_String</A>&amp; </TD><TD><B>in_symbol</B> (int i) const <BR>
<I>Map input alphabet index to input symbol</I>
</TD></TR><TR>
<TD VALIGN=TOP><A HREF="#DOC.118.3.3"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>int </TD><TD><B>out_symbol</B> (const <!1><A HREF="EST_String.html">EST_String</A> &amp;s) const <BR>
<I>Map output symbol to output alphabet index</I>
</TD></TR><TR>
<TD VALIGN=TOP><A HREF="#DOC.118.3.4"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>const <!1><A HREF="EST_String.html">EST_String</A>&amp; </TD><TD><B>out_symbol</B> (int i) const <BR>
<I>Map output alphabet index to output symbol </I>
</TD></TR><TR>
<TD VALIGN=TOP><A HREF="#DOC.118.3.5"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>LISP </TD><TD><B>epsilon_label</B> () const <BR>
<I>LISP for on epsilon symbols</I>
</TD></TR><TR>
<TD VALIGN=TOP><A HREF="#DOC.118.3.6"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>int </TD><TD><B>in_epsilon</B> () const <BR>
<I>Internal index for input epsilon</I>
</TD></TR><TR>
<TD VALIGN=TOP><A HREF="#DOC.118.3.7"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>int </TD><TD><B>out_epsilon</B> () const <BR>
<I>Internal index for output epsilon</I>
</TD></TR><TR>
<TD VALIGN=TOP><A HREF="#DOC.118.3.8"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>const <!1><A HREF="EST_WFST_State.html">EST_WFST_State</A>* </TD><TD><B>state</B> (int i) const <BR>
<I>Return internal state information</I>
</TD></TR><TR>
<TD VALIGN=TOP><A HREF="#DOC.118.3.9"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>int </TD><TD><B>final</B> (int i) const <BR>
<I>True if state <TT>i</TT> is final</I>
</TD></TR></TABLE></P>
</TD></TR><TR>
<TD VALIGN=TOP><A HREF="#DOC.118.5"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A> </TD><TD><B>transduction functions </B> <BR>
<I></I>
<P><TABLE>
<TR>
<TD VALIGN=TOP><A HREF="#DOC.118.5.1"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>int </TD><TD><B>transition</B> (int <!1><A HREF="EST_WFST.html#DOC.118.3.8">state</A>, int in, int out) const <BR>
<I>Find (first) new state given in and out symbols</I>
</TD></TR><TR>
<TD VALIGN=TOP><A HREF="#DOC.118.5.2"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A><!1><A HREF="EST_WFST_Transition.html">EST_WFST_Transition</A>* </TD><TD><B>find_transition</B> (int <!1><A HREF="EST_WFST.html#DOC.118.3.8">state</A>, int in, int out) const <BR>
<I>Find (first) transition given in and out symbols</I>
</TD></TR><TR>
<TD VALIGN=TOP><A HREF="#DOC.118.5.3"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>int </TD><TD><B>transition</B> (int <!1><A HREF="EST_WFST.html#DOC.118.3.8">state</A>, const <!1><A HREF="EST_String.html">EST_String</A> &amp;in, const <!1><A HREF="EST_String.html">EST_String</A> &amp;out) const <BR>
<I>Find (first) new state given in and out strings</I>
</TD></TR><TR>
<TD VALIGN=TOP><A HREF="#DOC.118.5.4"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>int </TD><TD><B>transition</B> (int <!1><A HREF="EST_WFST.html#DOC.118.3.8">state</A>, const <!1><A HREF="EST_String.html">EST_String</A> &amp;inout) const <BR>
<I>Find (first) new state given in/out string</I>
</TD></TR><TR>
<TD VALIGN=TOP><A HREF="#DOC.118.5.5"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>int </TD><TD><B>transduce</B> (int <!1><A HREF="EST_WFST.html#DOC.118.3.8">state</A>, int in, int &amp;out) const <BR>
<I>Transduce in to out from state</I>
</TD></TR><TR>
<TD VALIGN=TOP><A HREF="#DOC.118.5.6"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>int </TD><TD><B>transduce</B> (int <!1><A HREF="EST_WFST.html#DOC.118.3.8">state</A>, const <!1><A HREF="EST_String.html">EST_String</A> &amp;in, <!1><A HREF="EST_String.html">EST_String</A> &amp;out) const <BR>
<I>Transduce in to out (strings) from state</I>
</TD></TR><TR>
<TD VALIGN=TOP><A HREF="#DOC.118.5.7"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>void </TD><TD><B>transduce</B> (int <!1><A HREF="EST_WFST.html#DOC.118.3.8">state</A>, int in, wfst_translist &amp;out) const <BR>
<I>Transduce in to list of transitions</I>
</TD></TR><TR>
<TD VALIGN=TOP><A HREF="#DOC.118.5.8"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>void </TD><TD><B>transition_all</B> (int <!1><A HREF="EST_WFST.html#DOC.118.3.8">state</A>, int in, int out, <!1><A HREF="EST_WFST_MultiState.html">EST_WFST_MultiState</A>* ms) const <BR>
<I>Find all possible transitions for given state/input/output</I>
</TD></TR></TABLE></P>
</TD></TR><TR>
<TD VALIGN=TOP><A HREF="#DOC.118.6"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A> </TD><TD><B>Cumulation functions for adding collective probabilities</B> <BR>
<I></I>
<P><TABLE>
<TR>
<TD VALIGN=TOP><A HREF="#DOC.118.6.1"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>int </TD><TD><B>cumulate</B> () const <BR>
<I>Cumulation condition</I>
</TD></TR><TR>
<TD VALIGN=TOP><A HREF="#DOC.118.6.2"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>void </TD><TD><B>start_cumulate</B> ()<BR>
<I>Clear and start cumulation</I>
</TD></TR><TR>
<TD VALIGN=TOP><A HREF="#DOC.118.6.3"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>void </TD><TD><B>stop_cumulate</B> ()<BR>
<I>Stop cumulation and calculate probabilities on transitions</I>
</TD></TR></TABLE></P>
</TD></TR><TR>
<TD VALIGN=TOP><A HREF="#DOC.118.7"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A> </TD><TD><B>WFST construction functions from external represenations *</B> <BR>
<I></I>
<P><TABLE>
<TR>
<TD VALIGN=TOP><A HREF="#DOC.118.7.1"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>int </TD><TD><B>add_state</B> (enum wfst_state_type state_type)<BR>
<I>Add a new state, returns new name</I>
</TD></TR><TR>
<TD VALIGN=TOP><A HREF="#DOC.118.7.2"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>enum  wfst_state_type </TD><TD><B>ms_type</B> (<!1><A HREF="EST_WFST_MultiState.html">EST_WFST_MultiState</A>* ms) const <BR>
<I>Given a multi-state return type (final, ok, error)</I>
</TD></TR><TR>
<TD VALIGN=TOP><A HREF="#DOC.118.7.3"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>void </TD><TD><B>build_wfst</B> (int <!1><A HREF="EST_Track.html#DOC.71.7.9">start</A>, int <!1><A HREF="EST_Wave.html#DOC.81.5.6">end</A>, LISP regex)<BR>
<I>Basic regex constructor</I>
</TD></TR><TR>
<TD VALIGN=TOP><A HREF="#DOC.118.7.4"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>void </TD><TD><B>build_and_transition</B> (int <!1><A HREF="EST_Track.html#DOC.71.7.9">start</A>, int <!1><A HREF="EST_Wave.html#DOC.81.5.6">end</A>, LISP conjunctions)<BR>
<I>Basic conjunction constructor</I>
</TD></TR><TR>
<TD VALIGN=TOP><A HREF="#DOC.118.7.5"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>void </TD><TD><B>build_or_transition</B> (int <!1><A HREF="EST_Track.html#DOC.71.7.9">start</A>, int <!1><A HREF="EST_Wave.html#DOC.81.5.6">end</A>, LISP disjunctions)<BR>
<I>Basic disjunction constructor</I>
</TD></TR></TABLE></P>
</TD></TR><TR>
<TD VALIGN=TOP><A HREF="#DOC.118.8"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A> </TD><TD><B>Basic WFST operators </B> <BR>
<I></I>
<P><TABLE>
<TR>
<TD VALIGN=TOP><A HREF="#DOC.118.8.1"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>void </TD><TD><B>determinize</B> (const <!1><A HREF="EST_WFST.html">EST_WFST</A> &amp;<!1><A HREF="EST_Wave.html#DOC.81.4.1">a</A>)<BR>
<I>Build determinized form of a</I>
</TD></TR><TR>
<TD VALIGN=TOP><A HREF="#DOC.118.8.2"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>void </TD><TD><B>minimize</B> (const <!1><A HREF="EST_WFST.html">EST_WFST</A> &amp;<!1><A HREF="EST_Wave.html#DOC.81.4.1">a</A>)<BR>
<I>Build minimized form of a</I>
</TD></TR><TR>
<TD VALIGN=TOP><A HREF="#DOC.118.8.3"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>void </TD><TD><B>complement</B> (const <!1><A HREF="EST_WFST.html">EST_WFST</A> &amp;<!1><A HREF="EST_Wave.html#DOC.81.4.1">a</A>)<BR>
<I>Build complement of a</I>
</TD></TR><TR>
<TD VALIGN=TOP><A HREF="#DOC.118.8.4"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>void </TD><TD><B>intersection</B> (<!1><A HREF="EST_TList.html">EST_TList</A>&lt;<!1><A HREF="EST_WFST.html">EST_WFST</A>&gt; &amp;wl)<BR>
<I>Build intersection of all WFSTs in given list.</I>
</TD></TR><TR>
<TD VALIGN=TOP><A HREF="#DOC.118.8.5"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>void </TD><TD><B>intersection</B> (const <!1><A HREF="EST_WFST.html">EST_WFST</A> &amp;<!1><A HREF="EST_Wave.html#DOC.81.4.1">a</A>, const <!1><A HREF="EST_WFST.html">EST_WFST</A> &amp;<!1><A HREF="EST_TBuffer.html#DOC.101.5.12.1">b</A>)<BR>
<I>Build intersection of WFSTs a and b   The new WFST recognizes the only the strings that are recognized by both a and b list </I>
</TD></TR><TR>
<TD VALIGN=TOP><A HREF="#DOC.118.8.6"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>void </TD><TD><B>uunion</B> (<!1><A HREF="EST_TList.html">EST_TList</A>&lt;<!1><A HREF="EST_WFST.html">EST_WFST</A>&gt; &amp;wl)<BR>
<I>Build union of all WFSTs in given list.</I>
</TD></TR><TR>
<TD VALIGN=TOP><A HREF="#DOC.118.8.7"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>void </TD><TD><B>uunion</B> (const <!1><A HREF="EST_WFST.html">EST_WFST</A> &amp;<!1><A HREF="EST_Wave.html#DOC.81.4.1">a</A>, const <!1><A HREF="EST_WFST.html">EST_WFST</A> &amp;<!1><A HREF="EST_TBuffer.html#DOC.101.5.12.1">b</A>)<BR>
<I>Build union of WFSTs a and b.</I>
</TD></TR><TR>
<TD VALIGN=TOP><A HREF="#DOC.118.8.8"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>void </TD><TD><B>compose</B> (const <!1><A HREF="EST_WFST.html">EST_WFST</A> &amp;<!1><A HREF="EST_Wave.html#DOC.81.4.1">a</A>, const <!1><A HREF="EST_WFST.html">EST_WFST</A> &amp;<!1><A HREF="EST_TBuffer.html#DOC.101.5.12.1">b</A>)<BR>
<I>Build new WFST by composition of a and b.</I>
</TD></TR><TR>
<TD VALIGN=TOP><A HREF="#DOC.118.8.9"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>void </TD><TD><B>difference</B> (const <!1><A HREF="EST_WFST.html">EST_WFST</A> &amp;<!1><A HREF="EST_Wave.html#DOC.81.4.1">a</A>, const <!1><A HREF="EST_WFST.html">EST_WFST</A> &amp;<!1><A HREF="EST_TBuffer.html#DOC.101.5.12.1">b</A>)<BR>
<I>Build WFST that accepts only strings in a that aren't also accepted by strings in b.</I>
</TD></TR><TR>
<TD VALIGN=TOP><A HREF="#DOC.118.8.10"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>void </TD><TD><B>concat</B> (const <!1><A HREF="EST_WFST.html">EST_WFST</A> &amp;<!1><A HREF="EST_Wave.html#DOC.81.4.1">a</A>, const <!1><A HREF="EST_WFST.html">EST_WFST</A> &amp;<!1><A HREF="EST_TBuffer.html#DOC.101.5.12.1">b</A>)<BR>
<I>Build WFST that accepts a language that consists of any string in a followed by any string in b *</I>
</TD></TR></TABLE></P>
</TD></TR><TR>
<TD VALIGN=TOP><A HREF="#DOC.118.9"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A> </TD><TD><B>construction support fuctions </B> <BR>
<I></I>
<P><TABLE>
<TR>
<TD VALIGN=TOP><A HREF="#DOC.118.9.1"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>int </TD><TD><B>deterministic</B> () const <BR>
<I>True if WFST is deterministic</I>
</TD></TR><TR>
<TD VALIGN=TOP><A HREF="#DOC.118.9.2"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A><!1><A HREF="EST_WFST_MultiState.html">EST_WFST_MultiState</A>* </TD><TD><B>apply_multistate</B> (const <!1><A HREF="EST_WFST.html">EST_WFST</A> &amp;<!1><A HREF="EST_SCFG_Chart.html#DOC.110.5">wfst</A>, <!1><A HREF="EST_WFST_MultiState.html">EST_WFST_MultiState</A>* ms, int in, int out) const <BR>
<I>Transduce a multi-state given n and out</I>
</TD></TR><TR>
<TD VALIGN=TOP><A HREF="#DOC.118.9.3"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>void </TD><TD><B>add_epsilon_reachable</B> (<!1><A HREF="EST_WFST_MultiState.html">EST_WFST_MultiState</A>* ms) const <BR>
<I>Extend multi-state with epsilon reachable states</I>
</TD></TR><TR>
<TD VALIGN=TOP><A HREF="#DOC.118.9.4"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>void </TD><TD><B>remove_error_states</B> (const <!1><A HREF="EST_WFST.html">EST_WFST</A> &amp;<!1><A HREF="EST_Wave.html#DOC.81.4.1">a</A>)<BR>
<I>Remove error states from the WFST</I>
</TD></TR><TR>
<TD VALIGN=TOP><A HREF="#DOC.118.9.5"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A><!1><A HREF="EST_WFST.html">EST_WFST</A>&amp; </TD><TD><B>operator = </B> (const <!1><A HREF="EST_WFST.html">EST_WFST</A> &amp;<!1><A HREF="EST_Wave.html#DOC.81.4.1">a</A>)<BR>
<I></I>
</TD></TR></TABLE></P>
</TD></TR></TABLE></P>

</DL>

<A NAME="DOC.DOCU"></A>
<HR>
<H2>Documentation</H2>
<BLOCKQUOTE>a call representing a weighted finite-state transducer</BLOCKQUOTE>
<DL>

<A NAME="Constructor and initialisation functions "></A>
<A NAME="DOC.118.1"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> Constructor and initialisation functions </B></TT>
<DL><DT><DD></DL><P>
<A NAME="Reseting functions "></A>
<A NAME="DOC.118.2"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> Reseting functions </B></TT>
<DL><DT><DD></DL><P><DL>

<A NAME="init"></A>
<A NAME="DOC.118.2.1"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void init(int init_num_states=10)</B></TT>
<DD>Clear with (estimation of number of states required)
<DL><DT><DD></DL><P>
<A NAME="init"></A>
<A NAME="DOC.118.2.2"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void init(LISP in, LISP out)</B></TT>
<DD>clear an initialise with given input and out alphabets
<DL><DT><DD></DL><P>
<A NAME="copy"></A>
<A NAME="DOC.118.2.3"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void copy(const <!1><A HREF="EST_WFST.html">EST_WFST</A> &amp;<!1><A HREF="EST_SCFG_Chart.html#DOC.110.5">wfst</A>)</B></TT>
<DD>Copy from existing wfst
<DL><DT><DD></DL><P>
<A NAME="clear"></A>
<A NAME="DOC.118.2.4"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void clear()</B></TT>
<DD>clear removing existing states if any
<DL><DT><DD></DL><P></DL>

<A NAME="General utility functions "></A>
<A NAME="DOC.118.3"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> General utility functions </B></TT>
<DL><DT><DD></DL><P><DL>

<A NAME="in_symbol"></A>
<A NAME="DOC.118.3.1"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>int in_symbol(const <!1><A HREF="EST_String.html">EST_String</A> &amp;s) const </B></TT>
<DD>Map input symbol to input alphabet index
<DL><DT><DD></DL><P>
<A NAME="in_symbol"></A>
<A NAME="DOC.118.3.2"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>const <!1><A HREF="EST_String.html">EST_String</A>&amp; in_symbol(int i) const </B></TT>
<DD>Map input alphabet index to input symbol
<DL><DT><DD></DL><P>
<A NAME="out_symbol"></A>
<A NAME="DOC.118.3.3"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>int out_symbol(const <!1><A HREF="EST_String.html">EST_String</A> &amp;s) const </B></TT>
<DD>Map output symbol to output alphabet index
<DL><DT><DD></DL><P>
<A NAME="out_symbol"></A>
<A NAME="DOC.118.3.4"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>const <!1><A HREF="EST_String.html">EST_String</A>&amp; out_symbol(int i) const </B></TT>
<DD>Map output alphabet index to output symbol 
<DL><DT><DD></DL><P>
<A NAME="epsilon_label"></A>
<A NAME="DOC.118.3.5"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>LISP epsilon_label() const </B></TT>
<DD>LISP for on epsilon symbols
<DL><DT><DD></DL><P>
<A NAME="in_epsilon"></A>
<A NAME="DOC.118.3.6"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>int in_epsilon() const </B></TT>
<DD>Internal index for input epsilon
<DL><DT><DD></DL><P>
<A NAME="out_epsilon"></A>
<A NAME="DOC.118.3.7"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>int out_epsilon() const </B></TT>
<DD>Internal index for output epsilon
<DL><DT><DD></DL><P>
<A NAME="state"></A>
<A NAME="DOC.118.3.8"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>const <!1><A HREF="EST_WFST_State.html">EST_WFST_State</A>* state(int i) const </B></TT>
<DD>Return internal state information
<DL><DT><DD></DL><P>
<A NAME="final"></A>
<A NAME="DOC.118.3.9"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>int final(int i) const </B></TT>
<DD>True if state <TT>i</TT> is final
<DL><DT><DD></DL><P></DL>

<A NAME="file i/o "></A>
<A NAME="DOC.118.4"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> file i/o </B></TT>
<DL><DT><DD></DL><P>
<A NAME="transduction functions "></A>
<A NAME="DOC.118.5"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> transduction functions </B></TT>
<DL><DT><DD></DL><P><DL>

<A NAME="transition"></A>
<A NAME="DOC.118.5.1"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>int transition(int <!1><A HREF="EST_WFST.html#DOC.118.3.8">state</A>, int in, int out) const </B></TT>
<DD>Find (first) new state given in and out symbols
<DL><DT><DD></DL><P>
<A NAME="find_transition"></A>
<A NAME="DOC.118.5.2"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B><!1><A HREF="EST_WFST_Transition.html">EST_WFST_Transition</A>* find_transition(int <!1><A HREF="EST_WFST.html#DOC.118.3.8">state</A>, int in, int out) const </B></TT>
<DD>Find (first) transition given in and out symbols
<DL><DT><DD></DL><P>
<A NAME="transition"></A>
<A NAME="DOC.118.5.3"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>int transition(int <!1><A HREF="EST_WFST.html#DOC.118.3.8">state</A>, const <!1><A HREF="EST_String.html">EST_String</A> &amp;in, const <!1><A HREF="EST_String.html">EST_String</A> &amp;out) const </B></TT>
<DD>Find (first) new state given in and out strings
<DL><DT><DD></DL><P>
<A NAME="transition"></A>
<A NAME="DOC.118.5.4"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>int transition(int <!1><A HREF="EST_WFST.html#DOC.118.3.8">state</A>, const <!1><A HREF="EST_String.html">EST_String</A> &amp;inout) const </B></TT>
<DD>Find (first) new state given in/out string
<DL><DT><DD></DL><P>
<A NAME="transduce"></A>
<A NAME="DOC.118.5.5"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>int transduce(int <!1><A HREF="EST_WFST.html#DOC.118.3.8">state</A>, int in, int &amp;out) const </B></TT>
<DD>Transduce in to out from state
<DL><DT><DD></DL><P>
<A NAME="transduce"></A>
<A NAME="DOC.118.5.6"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>int transduce(int <!1><A HREF="EST_WFST.html#DOC.118.3.8">state</A>, const <!1><A HREF="EST_String.html">EST_String</A> &amp;in, <!1><A HREF="EST_String.html">EST_String</A> &amp;out) const </B></TT>
<DD>Transduce in to out (strings) from state
<DL><DT><DD></DL><P>
<A NAME="transduce"></A>
<A NAME="DOC.118.5.7"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void transduce(int <!1><A HREF="EST_WFST.html#DOC.118.3.8">state</A>, int in, wfst_translist &amp;out) const </B></TT>
<DD>Transduce in to list of transitions
<DL><DT><DD></DL><P>
<A NAME="transition_all"></A>
<A NAME="DOC.118.5.8"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void transition_all(int <!1><A HREF="EST_WFST.html#DOC.118.3.8">state</A>, int in, int out, <!1><A HREF="EST_WFST_MultiState.html">EST_WFST_MultiState</A>* ms) const </B></TT>
<DD>Find all possible transitions for given state/input/output
<DL><DT><DD></DL><P></DL>

<A NAME="Cumulation functions for adding collective probabilities"></A>
<A NAME="DOC.118.6"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> Cumulation functions for adding collective probabilities</B></TT>
<DD>for transitions from data 
<DL><DT><DD></DL><P><DL>

<A NAME="cumulate"></A>
<A NAME="DOC.118.6.1"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>int cumulate() const </B></TT>
<DD>Cumulation condition
<DL><DT><DD></DL><P>
<A NAME="start_cumulate"></A>
<A NAME="DOC.118.6.2"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void start_cumulate()</B></TT>
<DD>Clear and start cumulation
<DL><DT><DD></DL><P>
<A NAME="stop_cumulate"></A>
<A NAME="DOC.118.6.3"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void stop_cumulate()</B></TT>
<DD>Stop cumulation and calculate probabilities on transitions
<DL><DT><DD></DL><P></DL>

<A NAME="WFST construction functions from external represenations *"></A>
<A NAME="DOC.118.7"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> WFST construction functions from external represenations *</B></TT>
<DL><DT><DD></DL><P><DL>

<A NAME="add_state"></A>
<A NAME="DOC.118.7.1"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>int add_state(enum wfst_state_type state_type)</B></TT>
<DD>Add a new state, returns new name
<DL><DT><DD></DL><P>
<A NAME="ms_type"></A>
<A NAME="DOC.118.7.2"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>enum  wfst_state_type ms_type(<!1><A HREF="EST_WFST_MultiState.html">EST_WFST_MultiState</A>* ms) const </B></TT>
<DD>Given a multi-state return type (final, ok, error)
<DL><DT><DD></DL><P>
<A NAME="build_wfst"></A>
<A NAME="DOC.118.7.3"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void build_wfst(int <!1><A HREF="EST_Track.html#DOC.71.7.9">start</A>, int <!1><A HREF="EST_Wave.html#DOC.81.5.6">end</A>, LISP regex)</B></TT>
<DD>Basic regex constructor
<DL><DT><DD></DL><P>
<A NAME="build_and_transition"></A>
<A NAME="DOC.118.7.4"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void build_and_transition(int <!1><A HREF="EST_Track.html#DOC.71.7.9">start</A>, int <!1><A HREF="EST_Wave.html#DOC.81.5.6">end</A>, LISP conjunctions)</B></TT>
<DD>Basic conjunction constructor
<DL><DT><DD></DL><P>
<A NAME="build_or_transition"></A>
<A NAME="DOC.118.7.5"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void build_or_transition(int <!1><A HREF="EST_Track.html#DOC.71.7.9">start</A>, int <!1><A HREF="EST_Wave.html#DOC.81.5.6">end</A>, LISP disjunctions)</B></TT>
<DD>Basic disjunction constructor
<DL><DT><DD></DL><P></DL>

<A NAME="Basic WFST operators "></A>
<A NAME="DOC.118.8"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> Basic WFST operators </B></TT>
<DL><DT><DD></DL><P><DL>

<A NAME="determinize"></A>
<A NAME="DOC.118.8.1"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void determinize(const <!1><A HREF="EST_WFST.html">EST_WFST</A> &amp;<!1><A HREF="EST_Wave.html#DOC.81.4.1">a</A>)</B></TT>
<DD>Build determinized form of a
<DL><DT><DD></DL><P>
<A NAME="minimize"></A>
<A NAME="DOC.118.8.2"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void minimize(const <!1><A HREF="EST_WFST.html">EST_WFST</A> &amp;<!1><A HREF="EST_Wave.html#DOC.81.4.1">a</A>)</B></TT>
<DD>Build minimized form of a
<DL><DT><DD></DL><P>
<A NAME="complement"></A>
<A NAME="DOC.118.8.3"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void complement(const <!1><A HREF="EST_WFST.html">EST_WFST</A> &amp;<!1><A HREF="EST_Wave.html#DOC.81.4.1">a</A>)</B></TT>
<DD>Build complement of a
<DL><DT><DD></DL><P>
<A NAME="intersection"></A>
<A NAME="DOC.118.8.4"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void intersection(<!1><A HREF="EST_TList.html">EST_TList</A>&lt;<!1><A HREF="EST_WFST.html">EST_WFST</A>&gt; &amp;wl)</B></TT>
<DD>Build intersection of all WFSTs in given list.  The new WFST
recognizes the only the strings that are recognized by all WFSTs
in the given list 
<DL><DT><DD></DL><P>
<A NAME="intersection"></A>
<A NAME="DOC.118.8.5"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void intersection(const <!1><A HREF="EST_WFST.html">EST_WFST</A> &amp;<!1><A HREF="EST_Wave.html#DOC.81.4.1">a</A>, const <!1><A HREF="EST_WFST.html">EST_WFST</A> &amp;<!1><A HREF="EST_TBuffer.html#DOC.101.5.12.1">b</A>)</B></TT>
<DD>Build intersection of WFSTs a and b   The new WFST
recognizes the only the strings that are recognized by both a
and b list 
<DL><DT><DD></DL><P>
<A NAME="uunion"></A>
<A NAME="DOC.118.8.6"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void uunion(<!1><A HREF="EST_TList.html">EST_TList</A>&lt;<!1><A HREF="EST_WFST.html">EST_WFST</A>&gt; &amp;wl)</B></TT>
<DD>Build union of all WFSTs in given list.  The new WFST 
recognizes the only the strings that are recognized by at least
one WFSTs in the given list 
<DL><DT><DD></DL><P>
<A NAME="uunion"></A>
<A NAME="DOC.118.8.7"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void uunion(const <!1><A HREF="EST_WFST.html">EST_WFST</A> &amp;<!1><A HREF="EST_Wave.html#DOC.81.4.1">a</A>, const <!1><A HREF="EST_WFST.html">EST_WFST</A> &amp;<!1><A HREF="EST_TBuffer.html#DOC.101.5.12.1">b</A>)</B></TT>
<DD>Build union of WFSTs a and b.  The new WFST 
recognizes the only the strings that are recognized by either
a or b 
<DL><DT><DD></DL><P>
<A NAME="compose"></A>
<A NAME="DOC.118.8.8"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void compose(const <!1><A HREF="EST_WFST.html">EST_WFST</A> &amp;<!1><A HREF="EST_Wave.html#DOC.81.4.1">a</A>, const <!1><A HREF="EST_WFST.html">EST_WFST</A> &amp;<!1><A HREF="EST_TBuffer.html#DOC.101.5.12.1">b</A>)</B></TT>
<DD>Build new WFST by composition of a and b.  Outputs of a are
fed to b, given a new WFSTs which has a's input language and b's
output set.  a's output and b's input alphabets must be the same 
<DL><DT><DD></DL><P>
<A NAME="difference"></A>
<A NAME="DOC.118.8.9"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void difference(const <!1><A HREF="EST_WFST.html">EST_WFST</A> &amp;<!1><A HREF="EST_Wave.html#DOC.81.4.1">a</A>, const <!1><A HREF="EST_WFST.html">EST_WFST</A> &amp;<!1><A HREF="EST_TBuffer.html#DOC.101.5.12.1">b</A>)</B></TT>
<DD>Build WFST that accepts only strings in a that aren't also accepted
by strings in b. 
<DL><DT><DD></DL><P>
<A NAME="concat"></A>
<A NAME="DOC.118.8.10"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void concat(const <!1><A HREF="EST_WFST.html">EST_WFST</A> &amp;<!1><A HREF="EST_Wave.html#DOC.81.4.1">a</A>, const <!1><A HREF="EST_WFST.html">EST_WFST</A> &amp;<!1><A HREF="EST_TBuffer.html#DOC.101.5.12.1">b</A>)</B></TT>
<DD>Build WFST that accepts a language that consists of any string in
a followed by any string in b *
<DL><DT><DD></DL><P></DL>

<A NAME="construction support fuctions "></A>
<A NAME="DOC.118.9"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> construction support fuctions </B></TT>
<DL><DT><DD></DL><P><DL>

<A NAME="deterministic"></A>
<A NAME="DOC.118.9.1"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>int deterministic() const </B></TT>
<DD>True if WFST is deterministic
<DL><DT><DD></DL><P>
<A NAME="apply_multistate"></A>
<A NAME="DOC.118.9.2"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B><!1><A HREF="EST_WFST_MultiState.html">EST_WFST_MultiState</A>* apply_multistate(const <!1><A HREF="EST_WFST.html">EST_WFST</A> &amp;<!1><A HREF="EST_SCFG_Chart.html#DOC.110.5">wfst</A>, <!1><A HREF="EST_WFST_MultiState.html">EST_WFST_MultiState</A>* ms, int in, int out) const </B></TT>
<DD>Transduce a multi-state given n and out
<DL><DT><DD></DL><P>
<A NAME="add_epsilon_reachable"></A>
<A NAME="DOC.118.9.3"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void add_epsilon_reachable(<!1><A HREF="EST_WFST_MultiState.html">EST_WFST_MultiState</A>* ms) const </B></TT>
<DD>Extend multi-state with epsilon reachable states
<DL><DT><DD></DL><P>
<A NAME="remove_error_states"></A>
<A NAME="DOC.118.9.4"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void remove_error_states(const <!1><A HREF="EST_WFST.html">EST_WFST</A> &amp;<!1><A HREF="EST_Wave.html#DOC.81.4.1">a</A>)</B></TT>
<DD>Remove error states from the WFST
<DL><DT><DD></DL><P>
<A NAME="operator = "></A>
<A NAME="DOC.118.9.5"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B><!1><A HREF="EST_WFST.html">EST_WFST</A>&amp; operator = (const <!1><A HREF="EST_WFST.html">EST_WFST</A> &amp;<!1><A HREF="EST_Wave.html#DOC.81.4.1">a</A>)</B></TT>
<DL><DT><DD></DL><P></DL>
</DL>

<HR><DL><DT><B>This class has no child classes.</B></DL>

<DL><DT><DD></DL><P><P><I><A HREF="index.html">Alphabetic index</A></I> <I><A HREF="HIER.html">HTML hierarchy of classes</A> or <A HREF="HIERjava.html">Java</A></I></P><HR>
<A HREF = "http://www.ed.ac.uk/">
   <IMG align=right BORDER=0 SRC = "edcrest.gif"></A>

<P Align=left><I>This page is part of the 
<A HREF="http://www.cstr.ed.ac.uk/projects/speech_tools.html">
Edinburgh Speech Tools Library</A> documentation
<br>
Copyright <A HREF="http://www.ed.ac.uk"> University of Edinburgh</A> 1997
<br>
Contact: <A HREF="mailto:speech_toolss@cstr.ed.ac.uk"> 
         speech_tools@cstr.ed.ac.uk </a>
</P>
<br clear=right>