1
2/*
3 * Copyright 2011 Google Inc.
4 *
5 * Use of this source code is governed by a BSD-style license that can be
6 * found in the LICENSE file.
7 */
8#ifndef SkViewPriv_DEFINED
9#define SkViewPriv_DEFINED
10
11#include "SkView.h"
12#include "SkTagList.h"
13
14struct Layout_SkTagList : SkTagList {
15    SkView::Layout*    fLayout;
16
17    Layout_SkTagList(SkView::Layout* layout)
18        : SkTagList(kViewLayout_SkTagList), fLayout(layout)
19    {
20        SkASSERT(layout);
21        layout->ref();
22    }
23    virtual ~Layout_SkTagList()
24    {
25        fLayout->unref();
26    }
27};
28
29struct Artist_SkTagList : SkTagList {
30    SkView::Artist*    fArtist;
31
32    Artist_SkTagList(SkView::Artist* artist)
33        : SkTagList(kViewArtist_SkTagList), fArtist(artist)
34    {
35        SkASSERT(artist);
36        artist->ref();
37    }
38    virtual ~Artist_SkTagList()
39    {
40        fArtist->unref();
41    }
42};
43
44#endif
45