public static void applyCritics(Object dm, Designer d, Vector critics, long reasonCode) { int size = critics.size(); // if (_hot) System.out.println("----------"); // if (_hot) System.out.println("HOT: " + // Long.toBinaryString(reasonCode) + // " " + dm); for (int i = 0; i < size; i++) { Critic c = (Critic) critics.elementAt(i); if (c.isActive() && c.matchReason(reasonCode)) { // if (_hot) System.out.println("hot: " + // Long.toBinaryString(c.getTriggerMask()) + // " " + c.getClass().getName()); try { //_numCriticsApplied++; c.critique(dm, d); } catch (Exception ex) { System.out.println("Exception raised in critique"); System.out.println(c.toString()); System.out.println(dm.toString()); ex.printStackTrace(); System.out.println("----------"); } } } }