4 * License : The MIT License
5 * Copyright(c) 2010 MikuToga Partners
8 package jp.sourceforge.mikutoga.pmd.model;
10 import java.util.ArrayList;
11 import java.util.Iterator;
12 import java.util.List;
13 import jp.sourceforge.mikutoga.corelib.I18nText;
14 import jp.sourceforge.mikutoga.pmd.MorphType;
19 public class MorphPart implements SerialNumbered, Iterable<MorphVertex> {
21 private final I18nText morphName = new I18nText();
23 private MorphType type;
25 private final List<MorphVertex> morphVertexList =
26 new ArrayList<MorphVertex>();
28 private int serialNo = -1;
42 public I18nText getMorphName(){
43 return this.morphName;
48 * @param typeArg モーフ種別
49 * @throws NullPointerException 引数がnull
51 public void setMorphType(MorphType typeArg) throws NullPointerException{
52 if(typeArg == null) throw new NullPointerException();
61 public MorphType getMorphType(){
69 public List<MorphVertex> getMorphVertexList(){
70 return this.morphVertexList;
75 * @return {@inheritDoc}
78 public Iterator<MorphVertex> iterator(){
79 return this.morphVertexList.iterator();
84 * @param num {@inheritDoc}
87 public void setSerialNumber(int num){
94 * @return {@inheritDoc}
97 public int getSerialNumber(){
102 public String toString(){
103 StringBuilder result = new StringBuilder();
105 result.append("Morph(").append(this.morphName).append(") ");
106 result.append("type=").append(this.type);
107 result.append(" vertexNum=").append(this.morphVertexList.size());
109 return result.toString();