001 package edu.jhu.mb.ernst.engine.event; 002 003 import java.util.Comparator; 004 005 import edu.jhu.mb.ernst.engine.DiscreteEvent; 006 007 /*********************************************************************** 008 * Default implementation of a DiscreteEvent Comparator. 009 * 010 * @version 011 * $Date: 2012-04-15 13:06:25 -0500 (Sun, 15 Apr 2012) $ 012 * $Rev: 7 $ 013 * $Author: croft $ 014 * @since 015 * 2012-02-19 016 * @author 017 * David Wallace Croft 018 ***********************************************************************/ 019 public final class DefaultDiscreteEventComparatorImp 020 implements Comparator<DiscreteEvent> 021 //////////////////////////////////////////////////////////////////////// 022 //////////////////////////////////////////////////////////////////////// 023 { 024 025 public static final DefaultDiscreteEventComparatorImp 026 INSTANCE = new DefaultDiscreteEventComparatorImp ( ); 027 028 //////////////////////////////////////////////////////////////////////// 029 //////////////////////////////////////////////////////////////////////// 030 031 public DefaultDiscreteEventComparatorImp ( ) 032 //////////////////////////////////////////////////////////////////////// 033 { 034 // public no-argument constructor to support dynamic class loading 035 } 036 037 //////////////////////////////////////////////////////////////////////// 038 //////////////////////////////////////////////////////////////////////// 039 040 @Override 041 public int compare ( 042 final DiscreteEvent discreteEvent0, 043 final DiscreteEvent discreteEvent1 ) 044 //////////////////////////////////////////////////////////////////////// 045 { 046 final double 047 time0 = discreteEvent0.getTime ( ), 048 time1 = discreteEvent1.getTime ( ); 049 050 if ( time0 < time1 ) 051 { 052 return -1; 053 } 054 055 if ( time0 > time1 ) 056 { 057 return 1; 058 } 059 060 return 0; 061 } 062 063 //////////////////////////////////////////////////////////////////////// 064 //////////////////////////////////////////////////////////////////////// 065 }