All files / uasc SequenceHeader.js

100% Statements 15/15
95.65% Branches 22/23
100% Functions 4/4
100% Lines 15/15

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28  56x 56x   56x 56x         2x 2x     1x 1x 1x 1x     1x 1x 1x 1x     56x  
"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
    return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const Bucket_1 = __importDefault(require("../ua/Bucket"));
// https://reference.opcfoundation.org/v104/Core/docs/Part6/6.7.2/#6.7.2.4
class SequenceHeader {
    constructor(options) {
        var _a, _b, _c, _d;
        this.SequenceNumber = (_b = (_a = options) === null || _a === void 0 ? void 0 : _a.SequenceNumber, (_b !== null && _b !== void 0 ? _b : 0));
        this.RequestId = (_d = (_c = options) === null || _c === void 0 ? void 0 : _c.RequestId, (_d !== null && _d !== void 0 ? _d : 0));
    }
    encode() {
        const bucket = new Bucket_1.default();
        bucket.writeUint32(this.SequenceNumber);
        bucket.writeUint32(this.RequestId);
        return bucket.bytes;
    }
    decode(b, position) {
        const bucket = new Bucket_1.default(b, position);
        this.SequenceNumber = bucket.readUint32();
        this.RequestId = bucket.readUint32();
        return bucket.position;
    }
}
exports.default = SequenceHeader;