1 /*****************************************************************************
2 * Virtual Mockup for Machine Vision
3 * Copyright (C) 2001-2003 Fabio R. de Miranda, João E. Kogler Jr.,
4 * Carlos S. Santos.
5 * Virtual Mockup for Machine Vision Project funded by SENAC-SP
6 *
7 * Permission is granted to redistribute and/or modify this
8 * software under the terms of the GNU Lesser General Public
9 * License as published by the Free Software Foundation; either
10 * version 2.1 of the License, or (at your option) any later version.
11 *
12 * This software is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 * Lesser General Public License (http://www.gnu.org/copyleft/lesser.html)
16 * for more details.
17 *
18 *****************************************************************************/
19
20 package camera3d;
21
22 /***
23 * Defines the modes of tranformations allowed. It is an implementation of the
24 * typesafe enumeration design pattern.
25 *
26 * @author Fábio Roberto de Miranda, Carlos da Silva dos Santos
27 * @version 1.0
28 */
29 public class TransformMode {
30
31 private final String mode;
32
33 private TransformMode(String mode) {
34 this.mode = mode;
35 }
36
37 /***
38 * Returns a String identifying the transformation mode.
39 */
40 public String toString(){
41 return this.mode;
42 }
43
44 /***
45 * Returns the TransformMode correspondent to the input name. The valid name of
46 * one TransformMode instance is retrieved by calling the toString() method on
47 * that instance.
48 * @param name Name of desired mode.
49 * @throws IllegalArgumentException if name is not a valid name of any TransformMode.
50 */
51 public static TransformMode modeForString(String name){
52 if (RELATIVE.mode.equalsIgnoreCase(name)) return RELATIVE;
53 else if (ABSOLUTE.mode.equalsIgnoreCase(name)) return ABSOLUTE;
54 else throw new IllegalArgumentException("Invalid TransformMode name: "+ name);
55 }
56
57 /*** Relative transformation mode */
58 public static final TransformMode RELATIVE = new TransformMode("Relative");
59 /*** Absolute transformation mode*/
60 public static final TransformMode ABSOLUTE = new TransformMode("Absolute");
61 }
This page was automatically generated by Maven