001    // GraphLab Project: http://graphlab.sharif.edu
002    // Copyright (C) 2008 Mathematical Science Department of Sharif University of Technology
003    // Distributed under the terms of the GNU General Public License (GPL): http://www.gnu.org/licenses/
004    package graphlab.plugins.algorithmanimator.core;
005    
006    import graphlab.library.event.Event;
007    import graphlab.platform.core.BlackBoard;
008    
009    /**
010     * @author Azin Azadi
011     */
012    public interface AtomAnimator<EventType extends Event> {
013        /**
014         * @return true if the event is animatable by this animator
015         */
016        public boolean isAnimatable(Event event);
017    
018        /**
019         * animates event on the given blackboard as the world...
020         */
021        public EventType animate(EventType event, BlackBoard b);
022    }