19ff6425ce4a8deeb23b1c706b340d7d4e09f3f9bjoshualitt/*
29ff6425ce4a8deeb23b1c706b340d7d4e09f3f9bjoshualitt * Copyright 2015 Google Inc.
39ff6425ce4a8deeb23b1c706b340d7d4e09f3f9bjoshualitt *
49ff6425ce4a8deeb23b1c706b340d7d4e09f3f9bjoshualitt * Use of this source code is governed by a BSD-style license that can be
59ff6425ce4a8deeb23b1c706b340d7d4e09f3f9bjoshualitt * found in the LICENSE file.
69ff6425ce4a8deeb23b1c706b340d7d4e09f3f9bjoshualitt */
79ff6425ce4a8deeb23b1c706b340d7d4e09f3f9bjoshualitt
89ff6425ce4a8deeb23b1c706b340d7d4e09f3f9bjoshualitt#ifndef GrAAFillRectBatch_DEFINED
99ff6425ce4a8deeb23b1c706b340d7d4e09f3f9bjoshualitt#define GrAAFillRectBatch_DEFINED
109ff6425ce4a8deeb23b1c706b340d7d4e09f3f9bjoshualitt
119ff6425ce4a8deeb23b1c706b340d7d4e09f3f9bjoshualitt#include "GrColor.h"
129ff6425ce4a8deeb23b1c706b340d7d4e09f3f9bjoshualitt
13aa37a96d554c5be7907ce04ee1ef843d0521eafbjoshualittclass GrBatch;
14abd30f54b7ff1704a8930c4307ea242d09425d02bsalomonclass GrDrawBatch;
1537eb184e26a96f5c3593b7c2cf29f1a197eb5ac9joshualittclass SkMatrix;
1637eb184e26a96f5c3593b7c2cf29f1a197eb5ac9joshualittstruct SkRect;
179ff6425ce4a8deeb23b1c706b340d7d4e09f3f9bjoshualitt
1837eb184e26a96f5c3593b7c2cf29f1a197eb5ac9joshualittnamespace GrAAFillRectBatch {
19abd30f54b7ff1704a8930c4307ea242d09425d02bsalomonGrDrawBatch* Create(GrColor color,
20abd30f54b7ff1704a8930c4307ea242d09425d02bsalomon                    const SkMatrix& viewMatrix,
21abd30f54b7ff1704a8930c4307ea242d09425d02bsalomon                    const SkRect& rect,
22abd30f54b7ff1704a8930c4307ea242d09425d02bsalomon                    const SkRect& devRect);
23147dc06f3bda762f948cfdcc3fc43cecbf32e826joshualitt
24abd30f54b7ff1704a8930c4307ea242d09425d02bsalomonGrDrawBatch* Create(GrColor color,
25abd30f54b7ff1704a8930c4307ea242d09425d02bsalomon                    const SkMatrix& viewMatrix,
26abd30f54b7ff1704a8930c4307ea242d09425d02bsalomon                    const SkMatrix& localMatrix,
27c55271f2551533b37043aa2e37f754832a43073cbsalomon                    const SkRect& rect);
28c55271f2551533b37043aa2e37f754832a43073cbsalomon
29c55271f2551533b37043aa2e37f754832a43073cbsalomonGrDrawBatch* Create(GrColor color,
30c55271f2551533b37043aa2e37f754832a43073cbsalomon                    const SkMatrix& viewMatrix,
31c55271f2551533b37043aa2e37f754832a43073cbsalomon                    const SkMatrix& localMatrix,
32abd30f54b7ff1704a8930c4307ea242d09425d02bsalomon                    const SkRect& rect,
33abd30f54b7ff1704a8930c4307ea242d09425d02bsalomon                    const SkRect& devRect);
34aa37a96d554c5be7907ce04ee1ef843d0521eafbjoshualitt
35c55271f2551533b37043aa2e37f754832a43073cbsalomonGrDrawBatch* CreateWithLocalRect(GrColor color,
36c55271f2551533b37043aa2e37f754832a43073cbsalomon                                 const SkMatrix& viewMatrix,
37c55271f2551533b37043aa2e37f754832a43073cbsalomon                                 const SkRect& rect,
38c55271f2551533b37043aa2e37f754832a43073cbsalomon                                 const SkRect& localRect);
39c55271f2551533b37043aa2e37f754832a43073cbsalomon
40aa37a96d554c5be7907ce04ee1ef843d0521eafbjoshualittvoid Append(GrBatch*,
41aa37a96d554c5be7907ce04ee1ef843d0521eafbjoshualitt            GrColor,
42aa37a96d554c5be7907ce04ee1ef843d0521eafbjoshualitt            const SkMatrix& viewMatrix,
43aa37a96d554c5be7907ce04ee1ef843d0521eafbjoshualitt            const SkRect& rect,
44aa37a96d554c5be7907ce04ee1ef843d0521eafbjoshualitt            const SkRect& devRect);
45aa37a96d554c5be7907ce04ee1ef843d0521eafbjoshualitt
46aa37a96d554c5be7907ce04ee1ef843d0521eafbjoshualittvoid Append(GrBatch*,
47aa37a96d554c5be7907ce04ee1ef843d0521eafbjoshualitt            GrColor,
48aa37a96d554c5be7907ce04ee1ef843d0521eafbjoshualitt            const SkMatrix& viewMatrix,
49aa37a96d554c5be7907ce04ee1ef843d0521eafbjoshualitt            const SkMatrix& localMatrix,
50aa37a96d554c5be7907ce04ee1ef843d0521eafbjoshualitt            const SkRect& rect,
51aa37a96d554c5be7907ce04ee1ef843d0521eafbjoshualitt            const SkRect& devRect);
529ff6425ce4a8deeb23b1c706b340d7d4e09f3f9bjoshualitt};
539ff6425ce4a8deeb23b1c706b340d7d4e09f3f9bjoshualitt
549ff6425ce4a8deeb23b1c706b340d7d4e09f3f9bjoshualitt#endif
55