#ifndef UI_COMPOSITOR_TEST_TEST_CONTEXT_FACTORIES_H_
#define UI_COMPOSITOR_TEST_TEST_CONTEXT_FACTORIES_H_
#include <memory>
#include "ui/compositor/test/in_process_context_factory.h"
namespace gl {
class DisableNullDrawGLBindings;
}
namespace viz {
class HostFrameSinkManager;
class FrameSinkManagerImpl;
}
namespace ui {
class TestContextFactories {
public:
explicit TestContextFactories(bool enable_pixel_output,
bool output_to_window = false);
~TestContextFactories();
TestContextFactories(const TestContextFactories&) = delete;
TestContextFactories& operator=(const TestContextFactories&) = delete;
ui::InProcessContextFactory* GetContextFactory() const;
private:
std::unique_ptr<gl::DisableNullDrawGLBindings> disable_null_draw_;
std::unique_ptr<viz::FrameSinkManagerImpl> frame_sink_manager_;
std::unique_ptr<viz::HostFrameSinkManager> host_frame_sink_manager_;
std::unique_ptr<ui::InProcessContextFactory> implicit_factory_;
};
}
#endif