<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <HTML> <HEAD> <TITLE>template<class Container, class IPointer, class Entry> class EST_TIterator</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_TIterator.h:<TABLE BORDER=0><TR> <TD VALIGN=TOP><H2>template<class Container, class IPointer, class <!1><A HREF="EST_TStringHash.html#DOC.91.4.2">Entry</A>> class <A HREF="#DOC.DOCU">EST_TIterator</A></H2></TD></H2></TD></TR></TABLE> <HR> <DL> <P><TABLE> <DT><H3>Public Methods</H3><DD><TR> <TD VALIGN=TOP><A HREF="#DOC.128.5"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A> </TD><TD><B>EST_TIterator</B> ()<BR> <I>Create an iterator not associated with any specific container</I> </TD></TR><TR> <TD VALIGN=TOP><A HREF="#DOC.128.6"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A> </TD><TD><B>EST_TIterator</B> (const Container &over)<BR> <I>Create an iterator ready to run over the given container</I> </TD></TR><TR> <TD VALIGN=TOP><A HREF="#DOC.128.7"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A><!1><A HREF="EST_TIterator.html#DOC.128.4">Iter</A>& </TD><TD><B>operator = </B> (const <!1><A HREF="EST_TIterator.html#DOC.128.4">Iter</A> &orig)<BR> <I>Copy an iterator by assignment</I> </TD></TR><TR> <TD VALIGN=TOP><A HREF="#DOC.128.8"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A><!1><A HREF="EST_TIterator.html#DOC.128.4">Iter</A>& </TD><TD><B>operator = </B> (const Container &over)<BR> <I>Assigning a container to an iterator sets it ready to start</I> </TD></TR><TR> <TD VALIGN=TOP><A HREF="#DOC.128.9"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>void </TD><TD><B>begin</B> (const Container &over)<BR> <I>Set the iterator ready to run over this container</I> </TD></TR><TR> <TD VALIGN=TOP><A HREF="#DOC.128.10"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>void </TD><TD><B>beginning</B> ()<BR> <I>Reset to the start of the container</I> </TD></TR><TR> <TD VALIGN=TOP><A HREF="#DOC.128.11"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A> </TD><TD><B>End Tests</B> <BR> <I></I> <P><TABLE> <TR> <TD VALIGN=TOP><A HREF="#DOC.128.11.1"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>bool </TD><TD><B>has_more_elements</B> () const <BR> <I>True if there are more elements to look at</I> </TD></TR><TR> <TD VALIGN=TOP><A HREF="#DOC.128.11.2"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>bool </TD><TD><B>at_end</B> () const <BR> <I>True when there are no more</I> </TD></TR><TR> <TD VALIGN=TOP><A HREF="#DOC.128.11.3"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A> </TD><TD><B>operator int</B> () const <BR> <I>Viewing the iterator as an integer (for instance in a test) sees a non-zero value iff there are elements still to look at</I> </TD></TR></TABLE></P> </TD></TR><TR> <TD VALIGN=TOP><A HREF="#DOC.128.12"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A> </TD><TD><B>Moving Forward</B> <BR> <I></I> <P><TABLE> <TR> <TD VALIGN=TOP><A HREF="#DOC.128.12.1"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>void </TD><TD><B>next</B> ()<BR> <I>Next moves to the next entry</I> </TD></TR><TR> <TD VALIGN=TOP><A HREF="#DOC.128.12.2"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A><!1><A HREF="EST_TIterator.html#DOC.128.4">Iter</A>& </TD><TD><B>operator ++</B> ()<BR> <I>The increment operator does the same as next</I> </TD></TR></TABLE></P> </TD></TR><TR> <TD VALIGN=TOP><A HREF="#DOC.128.13"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A> </TD><TD><B>Access</B> <BR> <I></I> <P><TABLE> <TR> <TD VALIGN=TOP><A HREF="#DOC.128.13.1"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>const <!1><A HREF="EST_TStringHash.html#DOC.91.4.2">Entry</A>& </TD><TD><B>current</B> () const <BR> <I>Return the element currentl pointed to</I> </TD></TR><TR> <TD VALIGN=TOP><A HREF="#DOC.128.13.2"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>const <!1><A HREF="EST_TStringHash.html#DOC.91.4.2">Entry</A>& </TD><TD><B>operator *</B> () const <BR> <I>The * operator returns the current element.</I> </TD></TR><TR> <TD VALIGN=TOP><A HREF="#DOC.128.13.3"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>const <!1><A HREF="EST_TStringHash.html#DOC.91.4.2">Entry</A>& </TD><TD><B>next_element</B> ()<BR> <I>Return the current element and move the pointer forwards</I> </TD></TR><TR> <TD VALIGN=TOP><A HREF="#DOC.128.13.4"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>unsigned int </TD><TD><B>n</B> () const <BR> <I>Return the current position</I> </TD></TR></TABLE></P> </TD></TR></TABLE></P> <P><TABLE> <DT><H3>Public</H3><DD><TR> <TD VALIGN=TOP><A HREF="#DOC.128.4"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>typedef <!1><A HREF="EST_TIterator.html">EST_TIterator</A><Container, IPointer, <!1><A HREF="EST_TStringHash.html#DOC.91.4.2">Entry</A>> </TD><TD><B>Iter</B> <BR> <I>Name for an itterator like this</I> </TD></TR></TABLE></P> <P><TABLE> <DT><H3>Protected Fields</H3><DD><TR> <TD VALIGN=TOP><A HREF="#DOC.128.1"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>Container* </TD><TD><B>cont</B> <BR> <I>The container we are looking at</I> </TD></TR><TR> <TD VALIGN=TOP><A HREF="#DOC.128.2"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>unsigned int </TD><TD><B>pos</B> <BR> <I>Position in the structure.</I> </TD></TR><TR> <TD VALIGN=TOP><A HREF="#DOC.128.3"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>IPointer </TD><TD><B>pointer</B> <BR> <I>Structure defined by the container class whcih contains the current state of the iteration</I> </TD></TR></TABLE></P> </DL> <A NAME="DOC.DOCU"></A> <HR> <H2>Documentation</H2> <DL> <A NAME="cont"></A> <A NAME="DOC.128.1"></A> <DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>Container* cont</B></TT> <DD>The container we are looking at <DL><DT><DD></DL><P> <A NAME="pos"></A> <A NAME="DOC.128.2"></A> <DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>unsigned int pos</B></TT> <DD>Position in the structure. May or may not be useful. <DL><DT><DD></DL><P> <A NAME="pointer"></A> <A NAME="DOC.128.3"></A> <DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>IPointer pointer</B></TT> <DD>Structure defined by the container class whcih contains the current state of the iteration <DL><DT><DD></DL><P> <A NAME="Iter"></A> <A NAME="DOC.128.4"></A> <DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>typedef <!1><A HREF="EST_TIterator.html">EST_TIterator</A><Container, IPointer, <!1><A HREF="EST_TStringHash.html#DOC.91.4.2">Entry</A>> Iter</B></TT> <DD>Name for an itterator like this <DL><DT><DD></DL><P> <A NAME="EST_TIterator"></A> <A NAME="DOC.128.5"></A> <DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> EST_TIterator()</B></TT> <DD>Create an iterator not associated with any specific container <DL><DT><DD></DL><P> <A NAME="EST_TIterator"></A> <A NAME="DOC.128.6"></A> <DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> EST_TIterator(const Container &over)</B></TT> <DD>Create an iterator ready to run over the given container <DL><DT><DD></DL><P> <A NAME="operator = "></A> <A NAME="DOC.128.7"></A> <DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B><!1><A HREF="EST_TIterator.html#DOC.128.4">Iter</A>& operator = (const <!1><A HREF="EST_TIterator.html#DOC.128.4">Iter</A> &orig)</B></TT> <DD>Copy an iterator by assignment <DL><DT><DD></DL><P> <A NAME="operator = "></A> <A NAME="DOC.128.8"></A> <DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B><!1><A HREF="EST_TIterator.html#DOC.128.4">Iter</A>& operator = (const Container &over)</B></TT> <DD>Assigning a container to an iterator sets it ready to start <DL><DT><DD></DL><P> <A NAME="begin"></A> <A NAME="DOC.128.9"></A> <DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void begin(const Container &over)</B></TT> <DD>Set the iterator ready to run over this container <DL><DT><DD></DL><P> <A NAME="beginning"></A> <A NAME="DOC.128.10"></A> <DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void beginning()</B></TT> <DD>Reset to the start of the container <DL><DT><DD></DL><P> <A NAME="End Tests"></A> <A NAME="DOC.128.11"></A> <DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> End Tests</B></TT> <DL><DT><DD></DL><P><DL> <A NAME="has_more_elements"></A> <A NAME="DOC.128.11.1"></A> <DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>bool has_more_elements() const </B></TT> <DD>True if there are more elements to look at <DL><DT><DD></DL><P> <A NAME="at_end"></A> <A NAME="DOC.128.11.2"></A> <DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>bool at_end() const </B></TT> <DD>True when there are no more <DL><DT><DD></DL><P> <A NAME="operator int"></A> <A NAME="DOC.128.11.3"></A> <DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> operator int() const </B></TT> <DD>Viewing the iterator as an integer (for instance in a test) sees a non-zero value iff there are elements still to look at <DL><DT><DD></DL><P></DL> <A NAME="Moving Forward"></A> <A NAME="DOC.128.12"></A> <DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> Moving Forward</B></TT> <DL><DT><DD></DL><P><DL> <A NAME="next"></A> <A NAME="DOC.128.12.1"></A> <DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void next()</B></TT> <DD>Next moves to the next entry <DL><DT><DD></DL><P> <A NAME="operator ++"></A> <A NAME="DOC.128.12.2"></A> <DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B><!1><A HREF="EST_TIterator.html#DOC.128.4">Iter</A>& operator ++()</B></TT> <DD>The increment operator does the same as next <DL><DT><DD></DL><P></DL> <A NAME="Access"></A> <A NAME="DOC.128.13"></A> <DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> Access</B></TT> <DL><DT><DD></DL><P><DL> <A NAME="current"></A> <A NAME="DOC.128.13.1"></A> <DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>const <!1><A HREF="EST_TStringHash.html#DOC.91.4.2">Entry</A>& current() const </B></TT> <DD>Return the element currentl pointed to <DL><DT><DD></DL><P> <A NAME="operator *"></A> <A NAME="DOC.128.13.2"></A> <DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>const <!1><A HREF="EST_TStringHash.html#DOC.91.4.2">Entry</A>& operator *() const </B></TT> <DD>The * operator returns the current element. <DL><DT><DD></DL><P> <A NAME="next_element"></A> <A NAME="DOC.128.13.3"></A> <DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>const <!1><A HREF="EST_TStringHash.html#DOC.91.4.2">Entry</A>& next_element()</B></TT> <DD>Return the current element and move the pointer forwards <DL><DT><DD></DL><P> <A NAME="n"></A> <A NAME="DOC.128.13.4"></A> <DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>unsigned int n() const </B></TT> <DD>Return the current position <DL><DT><DD></DL><P></DL> </DL> <HR><DL><DT><B>This class has no child classes.</B></DL> <DL><DT><DT><B>Friends:</B><DD> class EST_TStructIterator <Container, IPointer, <!1><A HREF="EST_TStringHash.html#DOC.91.4.2">Entry</A>><BR> class EST_TRwIterator <Container, IPointer, <!1><A HREF="EST_TStringHash.html#DOC.91.4.2">Entry</A>><BR> class EST_TRwStructIterator <Container, IPointer, <!1><A HREF="EST_TStringHash.html#DOC.91.4.2">Entry</A>><BR><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>