001 package com.github.sarxos.webcam;
002
003 import java.util.EventObject;
004
005
006 /**
007 * This event is generated when webcam has been found or lost.
008 *
009 * @author Bartosz Firyn (sarxos)
010 */
011 public class WebcamDiscoveryEvent extends EventObject {
012
013 private static final long serialVersionUID = 1L;
014
015 /**
016 * Event type informing about newly connected webcam.
017 */
018 public static final int ADDED = 1;
019
020 /**
021 * Event type informing about lately disconnected webcam.
022 */
023 public static final int REMOVED = 2;
024
025 /**
026 * Event type (webcam connected / disconnected).
027 */
028 private int type = -1;
029
030 /**
031 * Create new webcam discovery event.
032 *
033 * @param webcam the webcam which has been found or removed
034 * @param type the event type
035 * @see #ADDED
036 * @see #REMOVED
037 */
038 public WebcamDiscoveryEvent(Webcam webcam, int type) {
039 super(webcam);
040 this.type = type;
041 }
042
043 /**
044 * Return the webcam which has been found or removed.
045 *
046 * @return Webcam instance
047 */
048 public Webcam getWebcam() {
049 return (Webcam) getSource();
050 }
051
052 /**
053 * Return event type (webcam connected / disconnected)
054 *
055 * @return Integer value
056 * @see #ADDED
057 * @see #REMOVED
058 */
059 public int getType() {
060 return type;
061 }
062 }