11cab2921ab279367f8206cdadc9259d12e603548Derek Sollenberger 21cab2921ab279367f8206cdadc9259d12e603548Derek Sollenberger/* 31cab2921ab279367f8206cdadc9259d12e603548Derek Sollenberger * Copyright 2006 The Android Open Source Project 41cab2921ab279367f8206cdadc9259d12e603548Derek Sollenberger * 51cab2921ab279367f8206cdadc9259d12e603548Derek Sollenberger * Use of this source code is governed by a BSD-style license that can be 61cab2921ab279367f8206cdadc9259d12e603548Derek Sollenberger * found in the LICENSE file. 71cab2921ab279367f8206cdadc9259d12e603548Derek Sollenberger */ 81cab2921ab279367f8206cdadc9259d12e603548Derek Sollenberger 90910916c0f7b951ee55c4b7c6358295b9bca0565The Android Open Source Project 100910916c0f7b951ee55c4b7c6358295b9bca0565The Android Open Source Project#ifndef SkDisplayEvents_DEFINED 110910916c0f7b951ee55c4b7c6358295b9bca0565The Android Open Source Project#define SkDisplayEvents_DEFINED 120910916c0f7b951ee55c4b7c6358295b9bca0565The Android Open Source Project 130910916c0f7b951ee55c4b7c6358295b9bca0565The Android Open Source Project#include "SkEvent.h" 140910916c0f7b951ee55c4b7c6358295b9bca0565The Android Open Source Project#include "SkDisplayEvent.h" 150910916c0f7b951ee55c4b7c6358295b9bca0565The Android Open Source Project 160910916c0f7b951ee55c4b7c6358295b9bca0565The Android Open Source Projectstruct SkEventState { 170910916c0f7b951ee55c4b7c6358295b9bca0565The Android Open Source Project SkEventState(); 180910916c0f7b951ee55c4b7c6358295b9bca0565The Android Open Source Project int fCode; 190910916c0f7b951ee55c4b7c6358295b9bca0565The Android Open Source Project SkBool fDisable; 200910916c0f7b951ee55c4b7c6358295b9bca0565The Android Open Source Project SkDisplayable* fDisplayable; 210910916c0f7b951ee55c4b7c6358295b9bca0565The Android Open Source Project SkScalar fX; 220910916c0f7b951ee55c4b7c6358295b9bca0565The Android Open Source Project SkScalar fY; 230910916c0f7b951ee55c4b7c6358295b9bca0565The Android Open Source Project}; 240910916c0f7b951ee55c4b7c6358295b9bca0565The Android Open Source Project 250910916c0f7b951ee55c4b7c6358295b9bca0565The Android Open Source Projectclass SkEvents { 260910916c0f7b951ee55c4b7c6358295b9bca0565The Android Open Source Projectpublic: 270910916c0f7b951ee55c4b7c6358295b9bca0565The Android Open Source Project SkEvents(); 280910916c0f7b951ee55c4b7c6358295b9bca0565The Android Open Source Project ~SkEvents(); 290910916c0f7b951ee55c4b7c6358295b9bca0565The Android Open Source Project void addEvent(SkDisplayEvent* evt) { *fEvents.append() = evt; } 300910916c0f7b951ee55c4b7c6358295b9bca0565The Android Open Source Project bool doEvent(SkAnimateMaker& , SkDisplayEvent::Kind , SkEventState* ); 310910916c0f7b951ee55c4b7c6358295b9bca0565The Android Open Source Project#ifdef SK_DUMP_ENABLED 320910916c0f7b951ee55c4b7c6358295b9bca0565The Android Open Source Project void dump(SkAnimateMaker& ); 330910916c0f7b951ee55c4b7c6358295b9bca0565The Android Open Source Project#endif 340910916c0f7b951ee55c4b7c6358295b9bca0565The Android Open Source Project void reset() { fEvents.reset(); } 350910916c0f7b951ee55c4b7c6358295b9bca0565The Android Open Source Project void removeEvent(SkDisplayEvent::Kind kind, SkEventState* ); 360910916c0f7b951ee55c4b7c6358295b9bca0565The Android Open Source Projectprivate: 370910916c0f7b951ee55c4b7c6358295b9bca0565The Android Open Source Project SkTDDisplayEventArray fEvents; 380910916c0f7b951ee55c4b7c6358295b9bca0565The Android Open Source Project SkBool fError; 390910916c0f7b951ee55c4b7c6358295b9bca0565The Android Open Source Project friend class SkDisplayXMLParser; 400910916c0f7b951ee55c4b7c6358295b9bca0565The Android Open Source Project}; 410910916c0f7b951ee55c4b7c6358295b9bca0565The Android Open Source Project 420910916c0f7b951ee55c4b7c6358295b9bca0565The Android Open Source Project#endif // SkDisplayEvents_DEFINED 430910916c0f7b951ee55c4b7c6358295b9bca0565The Android Open Source Project 44