180bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru 280bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru/* 380bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru * Copyright 2006 The Android Open Source Project 480bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru * 580bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru * Use of this source code is governed by a BSD-style license that can be 680bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru * found in the LICENSE file. 780bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru */ 880bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru 980bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru 1080bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru#ifndef SkDisplayPost_DEFINED 1180bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru#define SkDisplayPost_DEFINED 1280bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru 1380bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru#include "SkDisplayable.h" 1480bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru#include "SkEvent.h" 1580bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru#include "SkEventSink.h" 1680bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru#include "SkMemberInfo.h" 1780bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru#include "SkIntArray.h" 1880bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru 1980bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queruclass SkDataInput; 2080bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queruclass SkAnimateMaker; 2180bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru 2280bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queruclass SkPost : public SkDisplayable { 2380bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru DECLARE_MEMBER_INFO(Post); 2480bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru enum Mode { 2580bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru kDeferred, 2680bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru kImmediate 2780bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru }; 2880bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru SkPost(); 2980bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru virtual ~SkPost(); 30363e546ed626b6dbbc42f5db87b3594bc0b5944bDerek Sollenberger virtual bool addChild(SkAnimateMaker& , SkDisplayable* child) SK_OVERRIDE; 3180bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru virtual bool childrenNeedDisposing() const; 3280bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru virtual void dirty(); 3380bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru#ifdef SK_DUMP_ENABLED 3480bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru virtual void dump(SkAnimateMaker* ); 3580bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru#endif 3680bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru virtual bool enable(SkAnimateMaker& ); 3780bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru virtual bool hasEnable() const; 3880bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru virtual void onEndElement(SkAnimateMaker& ); 3980bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru virtual void setChildHasID(); 4080bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru virtual bool setProperty(int index, SkScriptValue& ); 4180bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queruprotected: 4280bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru SkMSec delay; 4380bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru SkString sink; 4480bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru// SkBool initialized; 4580bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru Mode mode; 4680bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru SkEvent fEvent; 4780bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru SkAnimateMaker* fMaker; 4880bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru SkTDDataArray fParts; 4980bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru SkEventSinkID fSinkID; 5080bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru SkAnimateMaker* fTargetMaker; 5180bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru SkBool8 fChildHasID; 5280bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru SkBool8 fDirty; 5380bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queruprivate: 5480bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru void findSinkID(); 5580bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru friend class SkDataInput; 5680bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru typedef SkDisplayable INHERITED; 5780bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru}; 5880bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru 5980bacfeb4bda06541e8695bd502229727bccfeaJean-Baptiste Queru#endif //SkDisplayPost_DEFINED 60