001package org.openimaj.picslurper.output;
002
003import org.kohsuke.args4j.CmdLineOptionsProvider;
004
005/**
006 * The various {@link OutputListener} modes for the command line tool
007 * @author Sina Samangooei (ss@ecs.soton.ac.uk)
008 *
009 */
010public enum OutputListenerMode implements CmdLineOptionsProvider {
011        /**
012         * an {@link OutputListener} which starts a Zmq publisher
013         */
014        ZMQ {
015                @Override
016                public OutputListener getOptions() {
017                        return new ZMQOutputListener();
018                }
019        },
020        /**
021         * Detect trends and output them as JSON every now and again
022         */
023        TRENDS{
024
025                @Override
026                public OutputListener getOptions() {
027                        return new TrendDetectionOutputListener();
028                }
029
030        }
031        ;
032
033        @Override
034        public abstract OutputListener getOptions() ;
035
036}