001 package com.github.sarxos.webcam; 002 003 import java.util.List; 004 005 006 /** 007 * This is interface for all webcam drivers. 008 * 009 * @author Bartosz Firyn (SarXos) 010 */ 011 public interface WebcamDriver { 012 013 /** 014 * Return all registered webcam devices. 015 * 016 * @return List of webcam devices 017 */ 018 List<WebcamDevice> getDevices(); 019 020 /** 021 * Is driver thread-safe. Thread safe drivers operations does not have to be 022 * synchronized. 023 * 024 * @return True in case if driver is thread-safe, false otherwise 025 */ 026 boolean isThreadSafe(); 027 028 }