| Index: third_party/WebKit/Source/core/html/canvas/CanvasAsyncBlobCreator.h
|
| diff --git a/third_party/WebKit/Source/core/html/canvas/CanvasAsyncBlobCreator.h b/third_party/WebKit/Source/core/html/canvas/CanvasAsyncBlobCreator.h
|
| index 0bb35edfa2a2d5354e7b6dc7849d45f17b674c76..611a790b0276adad34bb585e12d218f737f7c4d4 100644
|
| --- a/third_party/WebKit/Source/core/html/canvas/CanvasAsyncBlobCreator.h
|
| +++ b/third_party/WebKit/Source/core/html/canvas/CanvasAsyncBlobCreator.h
|
| @@ -18,7 +18,7 @@ class JPEGImageEncoderState;
|
|
|
| class CORE_EXPORT CanvasAsyncBlobCreator : public GarbageCollectedFinalized<CanvasAsyncBlobCreator> {
|
| public:
|
| - static CanvasAsyncBlobCreator* create(DOMUint8ClampedArray* unpremultipliedRGBAImageData, const String& mimeType, const IntSize&, BlobCallback*);
|
| + static CanvasAsyncBlobCreator* create(DOMUint8ClampedArray* unpremultipliedRGBAImageData, const String& mimeType, const IntSize&, BlobCallback*, double);
|
| void scheduleAsyncBlobCreation(bool canUseIdlePeriodScheduling, const double& quality = 0.0);
|
| virtual ~CanvasAsyncBlobCreator();
|
| enum MimeType {
|
| @@ -27,6 +27,7 @@ public:
|
| MimeTypeWebp,
|
| NumberOfMimeTypeSupported
|
| };
|
| + // enum used in histogram
|
| enum IdleTaskStatus {
|
| IdleTaskNotStarted,
|
| IdleTaskStarted,
|
| @@ -46,7 +47,7 @@ public:
|
| }
|
|
|
| protected:
|
| - CanvasAsyncBlobCreator(DOMUint8ClampedArray* data, MimeType, const IntSize&, BlobCallback*);
|
| + CanvasAsyncBlobCreator(DOMUint8ClampedArray* data, MimeType, const IntSize&, BlobCallback*, double);
|
| // Methods are virtual for unit testing
|
| virtual void scheduleInitiatePngEncoding();
|
| virtual void scheduleInitiateJpegEncoding(const double&);
|
| @@ -76,6 +77,9 @@ private:
|
| size_t m_pixelRowStride;
|
| const MimeType m_mimeType;
|
| Member<BlobCallback> m_callback;
|
| + double m_startTime;
|
| + double m_scheduleInitiateStartTime;
|
| + double m_elapsedTime;
|
|
|
| // PNG
|
| bool initializePngStruct();
|
| @@ -90,6 +94,7 @@ private:
|
|
|
| void idleTaskStartTimeoutEvent(double quality);
|
| void idleTaskCompleteTimeoutEvent();
|
| + void recordIdleTaskStatusHistogram();
|
| };
|
|
|
| } // namespace blink
|
|
|