4 * License : The MIT License
5 * Copyright(c) 2010 MikuToga Partners
8 package jp.sfjp.mikutoga.pmd.model;
10 import java.util.ArrayList;
11 import java.util.Iterator;
12 import java.util.List;
13 import jp.sfjp.mikutoga.corelib.I18nText;
14 import jp.sfjp.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 morphSerialNo = -1;
44 public I18nText getMorphName(){
45 return this.morphName;
50 * @param typeArg モーフ種別
51 * @throws NullPointerException 引数がnull
53 public void setMorphType(MorphType typeArg) throws NullPointerException{
54 if(typeArg == null) throw new NullPointerException();
63 public MorphType getMorphType(){
71 public List<MorphVertex> getMorphVertexList(){
72 return this.morphVertexList;
77 * @return {@inheritDoc}
80 public Iterator<MorphVertex> iterator(){
81 return this.morphVertexList.iterator();
86 * @param num {@inheritDoc}
89 public void setSerialNumber(int num){
90 this.morphSerialNo = num;
96 * @return {@inheritDoc}
99 public int getSerialNumber(){
100 return this.morphSerialNo;
104 public String toString(){
105 StringBuilder result = new StringBuilder();
107 result.append("Morph(").append(this.morphName).append(") ");
108 result.append("type=").append(this.type);
109 result.append(" vertexNum=").append(this.morphVertexList.size());
111 return result.toString();