當前位置: 首頁>>代碼示例>>TypeScript>>正文


TypeScript OutputBinaryStream.writeUInt8方法代碼示例

本文整理匯總了TypeScript中node-opcua-binary-stream.OutputBinaryStream.writeUInt8方法的典型用法代碼示例。如果您正苦於以下問題:TypeScript OutputBinaryStream.writeUInt8方法的具體用法?TypeScript OutputBinaryStream.writeUInt8怎麽用?TypeScript OutputBinaryStream.writeUInt8使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在node-opcua-binary-stream.OutputBinaryStream的用法示例。


在下文中一共展示了OutputBinaryStream.writeUInt8方法的6個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的TypeScript代碼示例。

示例1: _encodeNodeId

function _encodeNodeId(encodingByte: number, nodeId: NodeId, stream: OutputBinaryStream) {

    stream.writeUInt8(encodingByte); // encoding byte

    /*jslint bitwise: true */
    encodingByte &= 0x3f;

    switch (encodingByte) {
        case EnumNodeIdEncoding.TwoBytes:
            stream.writeUInt8(nodeId ? nodeId.value as number : 0);
            break;
        case EnumNodeIdEncoding.FourBytes:
            stream.writeUInt8(nodeId.namespace);
            stream.writeUInt16(nodeId.value as number);
            break;
        case EnumNodeIdEncoding.Numeric:
            stream.writeUInt16(nodeId.namespace);
            stream.writeUInt32(nodeId.value as number);
            break;
        case EnumNodeIdEncoding.String:
            stream.writeUInt16(nodeId.namespace);
            encodeString(nodeId.value as string, stream);
            break;
        case EnumNodeIdEncoding.ByteString:
            stream.writeUInt16(nodeId.namespace);
            encodeByteString(nodeId.value as Buffer, stream);
            break;
        default:
            assert(encodingByte === EnumNodeIdEncoding.Guid);
            stream.writeUInt16(nodeId.namespace);
            encodeGuid(nodeId.value as Guid, stream);
            break;
    }
}
開發者ID:node-opcua,項目名稱:node-opcua,代碼行數:34,代碼來源:nodeid.ts

示例2: write_UInt8

 function write_UInt8(starts: number[]) {
     const n = starts.length;
     for (let i = 0; i < n; i++) {
         const start = starts[i];
         stream.writeUInt8(parseInt(guid.substr(start, 2), 16));
     }
 }
開發者ID:node-opcua,項目名稱:node-opcua,代碼行數:7,代碼來源:guid.ts

示例3: writeTCPMessageHeader

export function writeTCPMessageHeader(msgType: string, chunkType: string, totalLength: number, stream: OutputBinaryStream) {

    if (stream instanceof Buffer) {
        stream = new BinaryStream(stream);
    }
    assert(is_valid_msg_type(msgType));
    assert(["A", "F", "C"].indexOf(chunkType) !== -1);

    stream.writeUInt8(msgType.charCodeAt(0));
    stream.writeUInt8(msgType.charCodeAt(1));
    stream.writeUInt8(msgType.charCodeAt(2));
    // Chunk type
    stream.writeUInt8(chunkType.charCodeAt(0)); // reserved

    stream.writeUInt32(totalLength);
}
開發者ID:node-opcua,項目名稱:node-opcua,代碼行數:16,代碼來源:tools.ts

示例4: encodeExtensionObject

export function encodeExtensionObject(object: ExtensionObject | null, stream: OutputBinaryStream): void {

    if (!object) {
        encodeNodeId(makeNodeId(0), stream);
        stream.writeUInt8(0x00); // no body is encoded
        // note : Length shall not hbe specified, end of the job!
    } else {
        /* istanbul ignore next */
        if (!((object as any) instanceof ExtensionObject)) {
            throw new Error("Expecting a extension object");
        }
        // ensure we have a valid encoding Default Binary ID !!!
        /* istanbul ignore next */
        if (!object.schema) {
            debugLog(" object = ", object);
            throw new Error("object has no schema " + object.constructor.name);
        }
        const encodingDefaultBinary = object.schema.encodingDefaultBinary;
        /* istanbul ignore next */
        if (!encodingDefaultBinary) {
            debugLog(chalk.yellow("xxxxxxxxx encoding ExtObj "), object);
            throw new Error("Cannot find encodingDefaultBinary for this object");
        }
        /* istanbul ignore next */
        if (encodingDefaultBinary.isEmpty()) {
            debugLog(chalk.yellow("xxxxxxxxx encoding ExtObj "), (object.constructor as any).encodingDefaultBinary.toString());
            throw new Error("Cannot find encodingDefaultBinary for this object");
        }
        /* istanbul ignore next */
        if (is_internal_id(encodingDefaultBinary.value)) {
            debugLog(chalk.yellow("xxxxxxxxx encoding ExtObj "),
              (object.constructor as any).encodingDefaultBinary.toString(), object.schema.name);
            throw new Error("Cannot find valid OPCUA encodingDefaultBinary for this object");
        }

        encodeNodeId(encodingDefaultBinary, stream);
        stream.writeUInt8(0x01); // 0x01 The body is encoded as a ByteString.
        stream.writeUInt32(object.binaryStoreSize());
        object.encode(stream);
    }
}
開發者ID:node-opcua,項目名稱:node-opcua,代碼行數:41,代碼來源:extension_object.ts

示例5: encodeBoolean

export function encodeBoolean(value: boolean, stream: OutputBinaryStream): void {
    assert(isValidBoolean(value));
    stream.writeUInt8(value ? 1 : 0);
}
開發者ID:node-opcua,項目名稱:node-opcua,代碼行數:4,代碼來源:boolean.ts

示例6: encodeUInt8

export function encodeUInt8(value: UInt8, stream: OutputBinaryStream): void {
    stream.writeUInt8(value);
}
開發者ID:node-opcua,項目名稱:node-opcua,代碼行數:3,代碼來源:integers.ts


注:本文中的node-opcua-binary-stream.OutputBinaryStream.writeUInt8方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。