view src/fdl/test/debug2/TupleId.java @ 92:ea4ee892baf5

commit
author kazz <kazz@cr.ie.u-ryukyu.ac.jp>
date Thu, 22 Apr 2010 16:13:03 +0900
parents
children 29ed7feebf2a
line wrap: on
line source

package fdl.test.debug2;

import java.util.HashMap;

public enum TupleId {
	BODY		(100),
	START		(BODY.id+1),
	FINISH		(BODY.id+2),
	MANAGE		(60000),
	TREETOP		(MANAGE.id+1),
	TREELEFT	(MANAGE.id+2) { public TupleId getMirrorId() { return TREERIGHT; } },
	TREERIGHT	(MANAGE.id+3) { public TupleId getMirrorId() { return TREELEFT; } },
	DEBUG		(61000),
	RINGLEFT	(DEBUG.id+1) { public TupleId getMirrorId() { return RINGRIGHT; } },
	RINGRIGHT	(DEBUG.id+2) { public TupleId getMirrorId() { return RINGLEFT; } },
	DEBUGSTART	(DEBUG.id+3);
	
	public int id;
	public static HashMap<Integer, TupleId> hash = new HashMap<Integer, TupleId>();
	
	private TupleId(int id) {
		this.id = id;
	}
	public TupleId getMirrorId() {
		return this;
	}
	public static TupleId getTupleIdFromId(int id) {
//		for (TupleId tid : TupleId.values()) {
//			if (tid.id == id) {
//				return tid;
//			}
//		}
		return hash.get(id);
	}
	static {
		for (TupleId tid : TupleId.values()) {
			hash.put(tid.id, tid);
		}
	}
	
}