Source code

Revision control

Copy as Markdown

Other Tools

/* -*- Mode: C++; tab-width: 20; indent-tabs-mode: nil; c-basic-offset: 2 -*-
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at */
#include "PrintTarget.h"
namespace mozilla {
namespace gfx {
* Recording printing target.
* This exists for use on e10s's content process in order to record print
* output, send it over to the parent process, and replay it on a DrawTarget
* there for printing.
class PrintTargetRecording final : public PrintTarget {
static already_AddRefed<PrintTargetRecording> CreateOrNull(
const IntSize& aSize);
already_AddRefed<DrawTarget> MakeDrawTarget(
const IntSize& aSize, DrawEventRecorder* aRecorder = nullptr) override;
PrintTargetRecording(cairo_surface_t* aCairoSurface, const IntSize& aSize);
already_AddRefed<DrawTarget> CreateWrapAndRecordDrawTarget(
DrawEventRecorder* aRecorder, DrawTarget* aDrawTarget);
} // namespace gfx
} // namespace mozilla