1 /**
2 * Emohawk Bot, an implementation of the environment interface standard that
3 * facilitates the connection between GOAL and Emohawk.
4 *
5 * Copyright (C) 2012 Emohawk Bot authors.
6 *
7 * This program is free software: you can redistribute it and/or modify it under
8 * the terms of the GNU General Public License as published by the Free Software
9 * Foundation, either version 3 of the License, or (at your option) any later
10 * version.
11 *
12 * This program is distributed in the hope that it will be useful, but WITHOUT
13 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
14 * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
15 * details.
16 *
17 * You should have received a copy of the GNU General Public License along with
18 * this program. If not, see <http://www.gnu.org/licenses/>.
19 */
20 package nl.tudelft.goal.emohawk.translators;
21
22
23 import cz.cuni.amis.pogamut.emohawk.agent.module.sensomotoric.Place;
24 import eis.eis2java.exception.TranslationException;
25 import eis.eis2java.translation.Java2Parameter;
26 import eis.eis2java.translation.Translator;
27 import eis.iilang.Identifier;
28 import eis.iilang.Numeral;
29 import eis.iilang.Parameter;
30
31 public class PlaceTranslator implements Java2Parameter<Place> {
32
33 @Override
34 public Parameter[] translate(Place o) throws TranslationException {
35 return new Parameter[] {
36 new Identifier(o.name().toLowerCase()),
37 Translator.getInstance().translate2Parameter(o.getPlaceLocation())[0],
38 new Numeral(o.getPlaceRadius()) };
39 }
40
41 @Override
42 public Class<? extends Place> translatesFrom() {
43 return Place.class;
44 }
45
46 }