pngjs/lib/filter-async.js

25 lines
632 B
JavaScript

'use strict';
var util = require('util');
var ChunkStream = require('./chunkstream');
var Filter = require('./filter');
var FilterAsync = module.exports = function(width, height, Bpp, depth, interlace, options) {
ChunkStream.call(this);
var buffers = [];
var that = this;
this._filter = new Filter(width, height, Bpp, depth, interlace, options, {
read: this.read.bind(this),
complete: function() {
that.emit('complete', Buffer.concat(buffers), width, height);
},
write: function(buffer) {
buffers.push(buffer);
}
});
this._filter.start();
};
util.inherits(FilterAsync, ChunkStream);