172cf4fcafa54cfa04c5ec7cb8eaa3acb144712ddbungeman@google.com/*
272cf4fcafa54cfa04c5ec7cb8eaa3acb144712ddbungeman@google.com * Copyright 2014 Google Inc.
372cf4fcafa54cfa04c5ec7cb8eaa3acb144712ddbungeman@google.com *
472cf4fcafa54cfa04c5ec7cb8eaa3acb144712ddbungeman@google.com * Use of this source code is governed by a BSD-style license that can be
572cf4fcafa54cfa04c5ec7cb8eaa3acb144712ddbungeman@google.com * found in the LICENSE file.
672cf4fcafa54cfa04c5ec7cb8eaa3acb144712ddbungeman@google.com */
772cf4fcafa54cfa04c5ec7cb8eaa3acb144712ddbungeman@google.com
872cf4fcafa54cfa04c5ec7cb8eaa3acb144712ddbungeman@google.com#include "SkRemotableFontMgr.h"
972cf4fcafa54cfa04c5ec7cb8eaa3acb144712ddbungeman@google.com
1078358bf624c7e7c09ffccf638c50870808d884d6mtklein#include "SkLazyPtr.h"
1172cf4fcafa54cfa04c5ec7cb8eaa3acb144712ddbungeman@google.com
1272cf4fcafa54cfa04c5ec7cb8eaa3acb144712ddbungeman@google.comSkRemotableFontIdentitySet::SkRemotableFontIdentitySet(int count, SkFontIdentity** data)
1372cf4fcafa54cfa04c5ec7cb8eaa3acb144712ddbungeman@google.com      : fCount(count), fData(count)
1472cf4fcafa54cfa04c5ec7cb8eaa3acb144712ddbungeman@google.com{
1572cf4fcafa54cfa04c5ec7cb8eaa3acb144712ddbungeman@google.com    SkASSERT(data);
1672cf4fcafa54cfa04c5ec7cb8eaa3acb144712ddbungeman@google.com    *data = fData;
1772cf4fcafa54cfa04c5ec7cb8eaa3acb144712ddbungeman@google.com}
1872cf4fcafa54cfa04c5ec7cb8eaa3acb144712ddbungeman@google.com
19148ec59001ca7d7e54aec580a048c6dd2a085991mtklein// As a template argument, this must have external linkage.
20148ec59001ca7d7e54aec580a048c6dd2a085991mtkleinSkRemotableFontIdentitySet* sk_remotable_font_identity_set_new() {
2178358bf624c7e7c09ffccf638c50870808d884d6mtklein    return SkNEW(SkRemotableFontIdentitySet);
2272cf4fcafa54cfa04c5ec7cb8eaa3acb144712ddbungeman@google.com}
2372cf4fcafa54cfa04c5ec7cb8eaa3acb144712ddbungeman@google.com
24148ec59001ca7d7e54aec580a048c6dd2a085991mtkleinSK_DECLARE_STATIC_LAZY_PTR(SkRemotableFontIdentitySet, empty, sk_remotable_font_identity_set_new);
2572cf4fcafa54cfa04c5ec7cb8eaa3acb144712ddbungeman@google.comSkRemotableFontIdentitySet* SkRemotableFontIdentitySet::NewEmpty() {
2678358bf624c7e7c09ffccf638c50870808d884d6mtklein    return SkRef(empty.get());
2772cf4fcafa54cfa04c5ec7cb8eaa3acb144712ddbungeman@google.com}
28