| Index: Source/WebCore/svg/animation/SMILTimeContainer.h
|
| ===================================================================
|
| --- Source/WebCore/svg/animation/SMILTimeContainer.h (revision 132107)
|
| +++ Source/WebCore/svg/animation/SMILTimeContainer.h (working copy)
|
| @@ -46,17 +46,19 @@
|
|
|
| class SMILTimeContainer : public RefCounted<SMILTimeContainer> {
|
| public:
|
| - static PassRefPtr<SMILTimeContainer> create(SVGSVGElement* owner) { return adoptRef(new SMILTimeContainer(owner)); }
|
| + static PassRefPtr<SMILTimeContainer> create(SVGSVGElement* owner) { return adoptRef(new SMILTimeContainer(owner)); }
|
| + ~SMILTimeContainer();
|
|
|
| - void schedule(SVGSMILElement*);
|
| - void unschedule(SVGSMILElement*);
|
| -
|
| + void schedule(SVGSMILElement*, SVGElement*, const QualifiedName&);
|
| + void unschedule(SVGSMILElement*, SVGElement*, const QualifiedName&);
|
| + void notifyIntervalsChanged();
|
| +
|
| SMILTime elapsed() const;
|
|
|
| bool isActive() const;
|
| bool isPaused() const;
|
| bool isStarted() const;
|
| -
|
| +
|
| void begin();
|
| void pause();
|
| void resume();
|
| @@ -66,14 +68,14 @@
|
|
|
| private:
|
| SMILTimeContainer(SVGSVGElement* owner);
|
| -
|
| +
|
| void timerFired(Timer<SMILTimeContainer>*);
|
| void startTimer(SMILTime fireTime, SMILTime minimumDelay = 0);
|
| void updateAnimations(SMILTime elapsed, bool seekToTime = false);
|
|
|
| void updateDocumentOrderIndexes();
|
| void sortByPriority(Vector<SVGSMILElement*>& smilElements, SMILTime elapsed);
|
| -
|
| +
|
| double m_beginTime;
|
| double m_pauseTime;
|
| double m_accumulatedPauseTime;
|
| @@ -83,10 +85,16 @@
|
|
|
| Timer<SMILTimeContainer> m_timer;
|
|
|
| - typedef HashSet<SVGSMILElement*> TimingElementSet;
|
| - TimingElementSet m_scheduledAnimations;
|
| + typedef pair<SVGElement*, QualifiedName> ElementAttributePair;
|
| + typedef Vector<SVGSMILElement*> AnimationsVector;
|
| + typedef HashMap<ElementAttributePair, AnimationsVector* > GroupedAnimationsMap;
|
| + GroupedAnimationsMap m_scheduledAnimations;
|
|
|
| SVGSVGElement* m_ownerSVGElement;
|
| +
|
| +#ifndef NDEBUG
|
| + bool m_preventScheduledAnimationsChanges;
|
| +#endif
|
| };
|
| }
|
|
|
|
|