#ifndef ASH_TEST_PIXEL_ASH_PIXEL_DIFF_UTIL_H_
#define ASH_TEST_PIXEL_ASH_PIXEL_DIFF_UTIL_H_
#include <string>
#include <vector>
#include "ui/gfx/geometry/rect.h"
namespace aura {
class Window;
}
namespace views {
class View;
class Widget;
}
namespace ash {
std::string GetScreenshotPrefixForCurrentTestInfo();
gfx::Rect GetUiComponentScreenBounds(views::View* view);
gfx::Rect GetUiComponentScreenBounds(views::Widget* widget);
gfx::Rect GetUiComponentScreenBounds(aura::Window* window);
void PopulateUiComponentScreenBounds(std::vector<gfx::Rect>* rects);
template <typename U, typename... T>
void PopulateUiComponentScreenBounds(std::vector<gfx::Rect>* rects,
U ui_component,
T... ui_components) {
rects->push_back(GetUiComponentScreenBounds(ui_component));
PopulateUiComponentScreenBounds(rects, ui_components...);
}
}
#endif