GR-PEACH aligned_bufferモジュール (aligned_buffer)

aligned_buffer モジュールは、アライメントを指定したバッファを生成します。

IoT.js のBuffer型との互換性はないため、Buffer型として使用する場合はbuf.toBuffer()にて、変換する必要があります。 https://github.com/pando-project/iotjs/blob/acae9c8b2d40e7598b8d39b630b79113ce880a7e/docs/api/IoT.js-API-Buffer.md

new AlignedBuffer(length, alignment)

lengthの長さのバッファを新しく生成します。バッファの内容は0で初期化されます。 バッファはalignmentバイト境界のメモリアドレスに配置されます。

new AlignedBuffer(buffer, alignment)

既存のバッファのコピーを生成します。2つのバッファ間でデータは共有されません。 バッファはalignmentバイト境界のメモリアドレスに配置されます。 アライメント境界が異なるbufferのコピーにも使用できます。

buf.toBuffer([start[, end]])

既存のバッファからBuffer型のオブジェクトを生成します。 生成されるバッファはend - startの長さを持ち、start ~ (end-1)の範囲のデータがコピーされます。 2つのバッファ間でデータは共有されません。

使用例

var AlignedBuffer = require('aligned_buffer').AlignedBuffer;
var buf1 = new AlignedBuffer(128, 32);
var buf2 = buf1.toBuffer();
console.log(buf2 instanceof Buffer); // true

buf.alignment

buf.length

使用例

var AlignedBuffer = require('aligned_buffer').AlignedBuffer;
var buf = new AlignedBuffer(128, 32);
console.log(buf.alignment); // 32
console.log(buf.length); // 128