/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ /* vim: set ts=8 sts=2 et sw=2 tw=80: */ /* 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 http://mozilla.org/MPL/2.0/. */
void EnsureIndependent() { if (!mDrawTarget) return;
DrawTargetWillChange();
}
private: friendclass DrawTargetD2D1;
bool EnsureRealizedBitmap();
// This function is called by the draw target this texture belongs to when // it is about to be changed. The texture will be required to make a copy // of itself when this happens. void DrawTargetWillChange();
// This will mark the surface as no longer depending on its drawtarget, // this may happen on destruction or copying. void MarkIndependent();
RefPtr<ID2D1Image> mImage; // This may be null if we were created for a non-bitmap image and have not // had a reason yet to realize ourselves.
RefPtr<ID2D1Bitmap1> mRealizedBitmap;
RefPtr<ID2D1DeviceContext> mDC; // Keep this around to verify whether out image is still valid in the future.
RefPtr<ID2D1Device> mDevice;
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung ist noch experimentell.