OSDN Git Service

ce3beed3b8bb54cb0b70f22cd4261d2e7616c0a9
[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.sourceforge.mikutoga.parser.MmdFormatException;
17 import jp.sourceforge.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
56         return;
57     }
58
59     public static void main(String[] args){
60         String fname;
61         if(args.length == 1) fname = args[0];
62         else                 fname = VMDFILE;
63
64         InputStream source = buildSource(fname);
65
66         VmdParser parser = new VmdParser(source);
67
68         setupHandler(parser);
69         parser.setStrictMode(true);
70
71         try{
72             parser.parseVmd();
73         }catch(IOException e){
74             System.err.println(e);
75             System.exit(1);
76         }catch(MmdFormatException e){
77             System.err.println(e);
78             System.exit(1);
79         }
80
81         System.exit(0);
82
83         return;
84     }
85
86 }