// This file has been automatically generated by writeMessageClasses.js import {UUID} from '../UUID'; import {MessageFlags} from '../../enums/MessageFlags'; import {MessageBase} from '../MessageBase'; import {Message} from '../../enums/Message'; export class AssetUploadRequestMessage implements MessageBase { name = 'AssetUploadRequest'; messageFlags = MessageFlags.FrequencyLow; id = Message.AssetUploadRequest; AssetBlock: { TransactionID: UUID; Type: number; Tempfile: boolean; StoreLocal: boolean; AssetData: Buffer; }; getSize(): number { return (this.AssetBlock['AssetData'].length + 2) + 19; } writeToBuffer(buf: Buffer, pos: number): number { const startPos = pos; this.AssetBlock['TransactionID'].writeToBuffer(buf, pos); pos += 16; buf.writeInt8(this.AssetBlock['Type'], pos++); buf.writeUInt8((this.AssetBlock['Tempfile']) ? 1 : 0, pos++); buf.writeUInt8((this.AssetBlock['StoreLocal']) ? 1 : 0, pos++); buf.writeUInt16LE(this.AssetBlock['AssetData'].length, pos); pos += 2; this.AssetBlock['AssetData'].copy(buf, pos); pos += this.AssetBlock['AssetData'].length; return pos - startPos; } readFromBuffer(buf: Buffer, pos: number): number { const startPos = pos; let varLength = 0; const newObjAssetBlock: { TransactionID: UUID, Type: number, Tempfile: boolean, StoreLocal: boolean, AssetData: Buffer } = { TransactionID: UUID.zero(), Type: 0, Tempfile: false, StoreLocal: false, AssetData: Buffer.allocUnsafe(0) }; newObjAssetBlock['TransactionID'] = new UUID(buf, pos); pos += 16; newObjAssetBlock['Type'] = buf.readInt8(pos++); newObjAssetBlock['Tempfile'] = (buf.readUInt8(pos++) === 1); newObjAssetBlock['StoreLocal'] = (buf.readUInt8(pos++) === 1); varLength = buf.readUInt16LE(pos); pos += 2; newObjAssetBlock['AssetData'] = buf.slice(pos, pos + varLength); pos += varLength; this.AssetBlock = newObjAssetBlock; return pos - startPos; } }