OSDN Git Service

Merge release/v3.122.2
[mikutoga/TogaGem.git] / src / test / java / sample / vmd / DummyMain.java
1 /*
2  * sample parser
3  *
4  * License : The MIT License
5  * Copyright(c) 2011 MikuToga Partners
6  */
7
8 package sample.vmd;
9
10 import java.io.BufferedInputStream;
11 import java.io.File;
12 import java.io.FileInputStream;
13 import java.io.FileNotFoundException;
14 import java.io.IOException;
15 import java.io.InputStream;
16 import jp.sfjp.mikutoga.bin.parser.MmdFormatException;
17 import jp.sfjp.mikutoga.vmd.parser.VmdParser;
18
19 /**
20  * パーサ利用のサンプルプログラム。
21  * これはユニットテストではない。
22  */
23 public class DummyMain {
24
25     private static final String VMDFILE;
26     private static final int BUF_SZ = 4086;
27     private static final DummyHandler handler = new DummyHandler();
28
29     static{
30         VMDFILE = "D:\\Test\\test.vmd";
31 //        VMDFILE = "D:\\Test\\camera.vmd";
32     }
33
34     private static InputStream buildSource(String fname){
35         File file = new File(fname);
36
37         InputStream is;
38         try{
39             is = new FileInputStream(file);
40         }catch(FileNotFoundException e){
41             System.err.println(e);
42             System.exit(1);
43             return null;
44         }
45
46         is = new BufferedInputStream(is, BUF_SZ);
47
48         return is;
49     }
50
51     private static void setupHandler(VmdParser parser){
52         parser.setBasicHandler(handler);
53         parser.setLightingHandler(handler);
54         parser.setCameraHandler(handler);
55         parser.setBoolHandler(handler);
56
57         return;
58     }
59
60     public static void main(String[] args){
61         String fname;
62         if(args.length == 1) fname = args[0];
63         else                 fname = VMDFILE;
64
65         InputStream source = buildSource(fname);
66
67         VmdParser parser = new VmdParser(source);
68
69         setupHandler(parser);
70         parser.setRedundantCheck(false);
71
72         try{
73             parser.parseVmd();
74         }catch(IOException e){
75             System.err.println(e);
76             System.exit(1);
77         }catch(MmdFormatException e){
78             System.err.println(e);
79             System.exit(1);
80         }
81
82         System.exit(0);
83
84         return;
85     }
86
87 }