/* * Copyright (C) 2009. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 3 or * version 2 as published by the Free Software Foundation. * * This program is distributed in the hope that it will be useful, but * WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * General Public License for more details. */ package uk.me.parabola.imgfmt.app.mdr; /** * The records in MDR 4 are a list of poi types with an unknown byte. */ public class Mdr4Record implements Comparable<Mdr4Record> { private int type; private int subtype; private int unknown; public int compareTo(Mdr4Record o) { int t1 = ((type<<8) + subtype) & 0xffff; int t2 = ((o.type<<8) + o.subtype) & 0xffff; if (t1 == t2) return 0; else if (t1 < t2) return -1; else return 1; } public boolean equals(Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; Mdr4Record that = (Mdr4Record) o; if (subtype != that.subtype) return false; if (type != that.type) return false; return true; } public int hashCode() { int result = type; result = 31 * result + subtype; return result; } public int getType() { return type; } public void setType(int type) { this.type = type; } public int getSubtype() { return subtype; } public void setSubtype(int subtype) { this.subtype = subtype; } public int getUnknown() { return unknown; } public void setUnknown(int unknown) { this.unknown = unknown; } }