package umontreal.iro.lecuyer.simprocs;
import java.lang.reflect.Method;
import nl.tudelft.simulation.dsol.interpreter.operations.custom.InterpreterOracleInterface;
/*
*
*
* (c) copyright 2004 Delft
* University of Technology , the Netherlands.
* See for project information
* www.simulation.tudelft.nl/dsol
* License of use: General Public
* License (GPL) , no warranty
*
* @author Peter
* Jacobs
* @version $Revision$ $Date$
* @since 1.2
*/
/**
* Determines which classes should be interpreted by the DSOL
* interpreter during process simulation.
*
*/
public class SSJInterpretationOracle implements InterpreterOracleInterface {
public boolean shouldBeInterpreted (final Method method) {
Class declClass = method.getDeclaringClass();
if (declClass == null)
// Should not happen
return true;
Package pack = declClass.getPackage();
String packName = pack == null ? null : pack.getName();
if (packName != null) {
if (packName.startsWith
("umontreal.iro.lecuyer.simevents"))
return false;
if (packName.startsWith
("umontreal.iro.lecuyer.stat"))
return false;
if (packName.startsWith
("umontreal.iro.lecuyer.util"))
return false;
if (packName.startsWith
("umontreal.iro.lecuyer.rng"))
return false;
if (packName.startsWith
("umontreal.iro.lecuyer.hups"))
return false;
if (packName.startsWith
("umontreal.iro.lecuyer.gof"))
return false;
if (packName.startsWith
("umontreal.iro.lecuyer.probdist"))
return false;
if (packName.startsWith
("umontreal.iro.lecuyer.randvar"))
return false;
if (packName.startsWith
("java"))
return false;
if (packName.startsWith
("nl.tudelft.simulation"))
return false;
}
if (declClass.equals (System.class))
return false;
return true;
}
}
Ads help maintain this website.