@abasb75/dicom-parser
Version:
a javascript powerfull dicom parser
129 lines (128 loc) • 4.15 kB
JavaScript
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;