00001 /* syllableentry.h $Revision: 1.2 $ $Date: 2005/12/10 20:33:54 $ 00002 Copyright (C) 2000 University of Bonn. 00003 http://www.ikp.uni-bonn.de/boss 00004 00005 This program is free software; you can redistribute it and/or 00006 modify it under the terms of the GNU General Public License 00007 as published by the Free Software Foundation; either version 2 00008 of the License, or (at your option) any later version. 00009 00010 This program is distributed in the hope that it will be useful, 00011 but WITHOUT ANY WARRANTY; without even the implied warranty of 00012 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00013 GNU General Public License for more details. 00014 00015 You should have received a copy of the GNU General Public License 00016 along with this program; if not, write to the Free Software 00017 Foundation, Inc., 59 Temple Place - Suite 330, 00018 Boston, MA 02111-1307, USA. 00019 */ 00020 00025 #ifndef SYLLABLEENTRY_H 00026 #define SYLLABLEENTRY_H 00027 00028 #include "phoneentry.h" 00029 00034 class c_SyllableEntry { 00035 00036 string key; 00037 string real; 00038 unsigned stress; 00039 string sb_sym; 00040 unsigned first; 00041 unsigned last; 00042 vector< c_PhoneEntry > phones; 00043 00044 public: 00045 friend ostream & operator << (ostream & out, const c_SyllableEntry & s); 00046 c_SyllableEntry() : stress(0) {} 00047 void add(const c_LabelEntry & l); 00048 void setFirst(const unsigned & f) { first = f; } 00049 void setLast(const unsigned & l) { last = l; } 00050 ostream & printXML(ostream & out, const string & indent) const; 00051 }; 00052 00053 inline ostream & operator << (ostream & out, const c_SyllableEntry & s) 00054 { return out << s.key << " " << s.real << endl; } 00055 00056 #endif