| Index: dm/DMWriteTask.h
|
| diff --git a/dm/DMWriteTask.h b/dm/DMWriteTask.h
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..fb80058fd092f89914e471badd43f92b8c76da79
|
| --- /dev/null
|
| +++ b/dm/DMWriteTask.h
|
| @@ -0,0 +1,45 @@
|
| +#ifndef DMWriteTask_DEFINED
|
| +#define DMWriteTask_DEFINED
|
| +
|
| +#include "DMTask.h"
|
| +#include "SkBitmap.h"
|
| +#include "SkStream.h"
|
| +#include "SkString.h"
|
| +#include "SkTArray.h"
|
| +
|
| +
|
| +// Writes a bitmap to a file.
|
| +
|
| +namespace DM {
|
| +
|
| +class WriteTask : public CpuTask {
|
| +
|
| +public:
|
| + WriteTask(const Task& parent, // WriteTask must be a child task.
|
| + const char* sourceType, // E.g. "GM", "SKP". For humans.
|
| + SkBitmap bitmap); // Bitmap to encode to PNG and write to disk.
|
| +
|
| + // Takes ownership of SkStreamAsset
|
| + WriteTask(const Task& parent, // WriteTask must be a child task.
|
| + const char* sourceType, // E.g. "GM", "SKP". For humans.
|
| + SkStreamAsset* data, // Pre-encoded data to write to disk.
|
| + const char* ext); // File extension.
|
| +
|
| + void draw() SK_OVERRIDE;
|
| + bool shouldSkip() const SK_OVERRIDE;
|
| + SkString name() const SK_OVERRIDE;
|
| +
|
| +private:
|
| + SkTArray<SkString> fSuffixes;
|
| + const SkString fBaseName;
|
| + const SkString fSourceType;
|
| + const SkBitmap fBitmap;
|
| + SkAutoTDelete<SkStreamAsset> fData;
|
| + const char* fExtension;
|
| +
|
| + void makeDirOrFail(SkString dir);
|
| +};
|
| +
|
| +} // namespace DM
|
| +
|
| +#endif // DMWriteTask_DEFINED
|
|
|