UNPKG

@abasb75/dicom-parser

Version:

a javascript powerfull dicom parser

129 lines (128 loc) 4.15 kB
import TagsDictionaryEnums from "./enums/TagsDictionary"; var Tag = /** @class */ (function () { function Tag(group, element, vr, valueLength, offset, value, name) { Object.defineProperty(this, "name", { enumerable: true, configurable: true, writable: true, value: void 0 }); Object.defineProperty(this, "vr", { enumerable: true, configurable: true, writable: true, value: void 0 }); Object.defineProperty(this, "group", { enumerable: true, configurable: true, writable: true, value: void 0 }); Object.defineProperty(this, "element", { enumerable: true, configurable: true, writable: true, value: void 0 }); Object.defineProperty(this, "value", { enumerable: true, configurable: true, writable: true, value: void 0 }); Object.defineProperty(this, "valueLength", { enumerable: true, configurable: true, writable: true, value: void 0 }); Object.defineProperty(this, "offset", { enumerable: true, configurable: true, writable: true, value: void 0 }); this.group = group; this.element = element; this.vr = vr; this.name = name || Tag.getTagNameFromDictionary(this.group, this.element) || ''; this.value = value || undefined; this.valueLength = valueLength; this.offset = offset; if (this.name === '') { } } Object.defineProperty(Tag.prototype, "generateKey", { enumerable: false, configurable: true, writable: true, value: function () { var group = Tag.intTo4digitString(this.group); var element = Tag.intTo4digitString(this.element); return "0x".concat(group).concat(element); } }); Object.defineProperty(Tag, "getTagNameFromDictionary", { enumerable: false, configurable: true, writable: true, value: function (groupInt, elementInt) { var group = Tag.intTo4digitString(groupInt); var element = Tag.intTo4digitString(elementInt); var groupItems = TagsDictionaryEnums[group]; if (!groupItems) return ""; var elementItem = groupItems[element]; if (!elementItem) return ""; return elementItem[1]; } }); Object.defineProperty(Tag, "getTagVRFromDictionary", { enumerable: false, configurable: true, writable: true, value: function (group, element) { var _group, _element; if (typeof group === "number") { _group = Tag.intTo4digitString(group); } if (typeof element === "number") { _element = Tag.intTo4digitString(element); } var groupItems = TagsDictionaryEnums[_group || group]; if (!groupItems) return ""; var elementItem = groupItems[_element || element]; if (!elementItem) return ""; return elementItem[0]; } }); Object.defineProperty(Tag, "intTo4digitString", { enumerable: false, configurable: true, writable: true, value: function (int) { return ('0000' + int.toString(16).toUpperCase()).slice(-4); } }); Object.defineProperty(Tag, "int8digitString", { enumerable: false, configurable: true, writable: true, value: function (int) { return ('00000000' + int.toString(16).toUpperCase()).slice(-8); } }); Object.defineProperty(Tag.prototype, "getValue", { enumerable: false, configurable: true, writable: true, value: function () { } }); return Tag; }()); export default Tag;