package ru.yandex.qatools.ashot.shooting; import org.openqa.selenium.WebDriver; import ru.yandex.qatools.ashot.coordinates.Coords; import java.awt.image.BufferedImage; import java.io.Serializable; import java.util.Set; /** * @author <a href="pazone@yandex-team.ru">Pavel Zorin</a> */ public interface ShootingStrategy extends Serializable { /** * Get's screenshot of whole page or viewport (depends on browser) * * @param wd WebDrvier * @return image of the whole page or viewport */ BufferedImage getScreenshot(WebDriver wd); /** * Get's screenshot of area or areas that are defined by {@link Coords} * * @param wd WebDriver * @param coords Set of coordinates to shoot * @return minimal image with required coords */ BufferedImage getScreenshot(WebDriver wd, Set<Coords> coords); /** * Prepares coordinated for cropper and ignored areas * * @param coordsSet to prepare * @return New set of prepared coordinates */ Set<Coords> prepareCoords(Set<Coords> coordsSet); }