X-Git-Url: http://git.osdn.net/view?p=mikutoga%2FPmd2XML.git;a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fjp%2Fsfjp%2Fmikutoga%2Fpmd2xml%2FModelFileType.java;fp=src%2Fmain%2Fjava%2Fjp%2Fsfjp%2Fmikutoga%2Fpmd2xml%2FModelFileType.java;h=ae2c411205562f15f4e4954a9c5e7e9861aab247;hp=0000000000000000000000000000000000000000;hb=dc74351e0459ee0c5500f24d3080a92e1a1b9157;hpb=6b02dc790431f16012199924ee36816cef058954 diff --git a/src/main/java/jp/sfjp/mikutoga/pmd2xml/ModelFileType.java b/src/main/java/jp/sfjp/mikutoga/pmd2xml/ModelFileType.java new file mode 100644 index 0000000..ae2c411 --- /dev/null +++ b/src/main/java/jp/sfjp/mikutoga/pmd2xml/ModelFileType.java @@ -0,0 +1,124 @@ +/* + * MMD model file types. + * + * License : The MIT License + * Copyright(c) 2012 MikuToga Partners + */ + +package jp.sfjp.mikutoga.pmd2xml; + +import jp.sfjp.mikutoga.pmd.xml.XmlModelFileType; + +/** + * モデルファイル種別。 + */ +public enum ModelFileType { + + /** + * 不明。 + */ + NONE, + + /** + * MikuMikuDance ver7 前後で読み書きが可能なPMDファイル。 + */ + PMD, + + /** + * XMLファイル。 + *

読み込み時のスキーマ判別は自動。 + *

書き込み時のスキーマは最新。 + */ + XML_AUTO, + + /** + * スキーマ + * http://mikutoga.sourceforge.jp/xml/xsd/pmdxml-101009.xsd + * で定義されたXMLファイル。 + */ + XML_101009, + + /** + * スキーマ + * http://mikutoga.sourceforge.jp/xml/xsd/pmdxml-130128.xsd + * で定義されたXMLファイル。 + */ + XML_130128, + + ; + + + /** + * コンストラクタ。 + */ + private ModelFileType(){ + return; + } + + /** + * ファイル種別をXMLファイル種別に変換する。 + *

未定義の場合はXML_AUTOを返す。 + * @return XMLファイル種別 + */ + public XmlModelFileType toXmlType(){ + XmlModelFileType result; + + switch(this){ + case XML_101009: + result = XmlModelFileType.XML_101009; + break; + case XML_130128: + result = XmlModelFileType.XML_130128; + break; + case XML_AUTO: + result = XmlModelFileType.XML_AUTO; + break; + default: + result = XmlModelFileType.XML_AUTO; + break; + } + + return result; + } + + /** + * ファイル種別がXMLか判定する。 + * @return XMLならtrue + */ + public boolean isXml(){ + boolean result; + + switch(this){ + case XML_101009: + case XML_130128: + case XML_AUTO: + result = true; + break; + default: + result = false; + break; + } + + return result; + } + + /** + * ファイル種別がPMDか判定する。 + * @return PMDならtrue + */ + public boolean isPmd(){ + boolean result; + + switch(this){ + case PMD: + result = true; + break; + default: + result = false; + break; + } + + return result; + } + +}