cql-execution
Version:
An execution framework for the Clinical Quality Language (CQL)
530 lines (380 loc) • 12.9 kB
JavaScript
// Generated by CoffeeScript 1.9.3
(function() {
var Address, Attachment, BackboneElement, CORE, CodeableConcept, Coding, ContactPoint, DT, DomainResource, Element, ElementDefinition, Extension, HumanName, Identifier, ImagingStudy, ImagingStudySeriesComponent, ImagingStudySeriesInstanceComponent, Narrative, Parameters, Period, Quantity, Range, Ratio, Reference, Resource, SampledData, Timing,
extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },
hasProp = {}.hasOwnProperty;
DT = require('../cql-datatypes');
CORE = require('./core');
Element = CORE.Element;
Resource = CORE.Resource;
Timing = CORE.Timing;
Period = CORE.Period;
Parameters = CORE.Parameters;
Coding = CORE.Coding;
Resource = CORE.Resource;
Range = CORE.Range;
Quantity = CORE.Quantity;
Attachment = CORE.Attachment;
BackboneElement = CORE.BackboneElement;
DomainResource = CORE.DomainResource;
ContactPoint = CORE.ContactPoint;
ElementDefinition = CORE.ElementDefinition;
Extension = CORE.Extension;
HumanName = CORE.HumanName;
Address = CORE.Address;
Ratio = CORE.Ratio;
SampledData = CORE.SampledData;
Reference = CORE.Reference;
CodeableConcept = CORE.CodeableConcept;
Identifier = CORE.Identifier;
Narrative = CORE.Narrative;
Element = CORE.Element;
/**
Embedded class
@class ImagingStudySeriesInstanceComponent
@exports ImagingStudySeriesInstanceComponent as ImagingStudySeriesInstanceComponent
*/
ImagingStudySeriesInstanceComponent = (function(superClass) {
extend(ImagingStudySeriesInstanceComponent, superClass);
function ImagingStudySeriesInstanceComponent(json) {
this.json = json;
ImagingStudySeriesInstanceComponent.__super__.constructor.call(this, this.json);
}
/**
The number of this image in the series.
@returns {Array} an array of {@link Number} objects
*/
ImagingStudySeriesInstanceComponent.prototype.number = function() {
return this.json['number'];
};
/**
Formal identifier for this image.
@returns {oid}
*/
ImagingStudySeriesInstanceComponent.prototype.uid = function() {
if (this.json['uid']) {
return new oid(this.json['uid']);
}
};
/**
DICOM Image type.
@returns {oid}
*/
ImagingStudySeriesInstanceComponent.prototype.sopclass = function() {
if (this.json['sopclass']) {
return new oid(this.json['sopclass']);
}
};
/**
The type of the instance.
@returns {Array} an array of {@link String} objects
*/
ImagingStudySeriesInstanceComponent.prototype.type = function() {
return this.json['type'];
};
/**
The description of the instance.
@returns {Array} an array of {@link String} objects
*/
ImagingStudySeriesInstanceComponent.prototype.title = function() {
return this.json['title'];
};
/**
WADO-RS url where image is available.
@returns {Array} an array of {@link String} objects
*/
ImagingStudySeriesInstanceComponent.prototype.url = function() {
return this.json['url'];
};
/**
A FHIR resource with content for this instance.
@returns {Reference}
*/
ImagingStudySeriesInstanceComponent.prototype.attachment = function() {
if (this.json['attachment']) {
return new Reference(this.json['attachment']);
}
};
return ImagingStudySeriesInstanceComponent;
})(BackboneElement);
/**
Embedded class
@class ImagingStudySeriesComponent
@exports ImagingStudySeriesComponent as ImagingStudySeriesComponent
*/
ImagingStudySeriesComponent = (function(superClass) {
extend(ImagingStudySeriesComponent, superClass);
function ImagingStudySeriesComponent(json) {
this.json = json;
ImagingStudySeriesComponent.__super__.constructor.call(this, this.json);
}
/**
The Numeric identifier of this series in the study.
@returns {Array} an array of {@link Number} objects
*/
ImagingStudySeriesComponent.prototype.number = function() {
return this.json['number'];
};
/**
The modality of this series sequence.
@returns {Array} an array of {@link String} objects
*/
ImagingStudySeriesComponent.prototype.modality = function() {
return this.json['modality'];
};
/**
Formal identifier for this series.
@returns {oid}
*/
ImagingStudySeriesComponent.prototype.uid = function() {
if (this.json['uid']) {
return new oid(this.json['uid']);
}
};
/**
A description of the series.
@returns {Array} an array of {@link String} objects
*/
ImagingStudySeriesComponent.prototype.description = function() {
return this.json['description'];
};
/**
Sequence that contains attributes from the.
@returns {Array} an array of {@link Number} objects
*/
ImagingStudySeriesComponent.prototype.numberOfInstances = function() {
return this.json['numberOfInstances'];
};
/**
Availability of series (online, offline or nearline).
@returns {Array} an array of {@link String} objects
*/
ImagingStudySeriesComponent.prototype.availability = function() {
return this.json['availability'];
};
/**
WADO-RS URI where Series is available.
@returns {Array} an array of {@link String} objects
*/
ImagingStudySeriesComponent.prototype.url = function() {
return this.json['url'];
};
/**
Body part examined. See DICOM Part 16 Annex L for the mapping from DICOM to Snomed.
@returns {Coding}
*/
ImagingStudySeriesComponent.prototype.bodySite = function() {
if (this.json['bodySite']) {
return new Coding(this.json['bodySite']);
}
};
/**
The date when the series was started.
@returns {Array} an array of {@link Date} objects
*/
ImagingStudySeriesComponent.prototype.dateTime = function() {
if (this.json['dateTime']) {
return DT.DateTime.parse(this.json['dateTime']);
}
};
/**
A single image taken from a patient.
@returns {Array} an array of {@link ImagingStudySeriesInstanceComponent} objects
*/
ImagingStudySeriesComponent.prototype.instance = function() {
var i, item, len, ref, results;
if (this.json['instance']) {
ref = this.json['instance'];
results = [];
for (i = 0, len = ref.length; i < len; i++) {
item = ref[i];
results.push(new ImagingStudySeriesInstanceComponent(item));
}
return results;
}
};
return ImagingStudySeriesComponent;
})(BackboneElement);
/**
Representation of the content produced in a DICOM imaging study. A study comprises a set of Series, each of which includes a set of Service-Object Pair Instances (SOP Instances - images or other data) acquired or produced in a common context. A Series is of only one modality (e.g., X-ray, CT, MR, ultrasound), but a Study may have multiple Series of different modalities.
@class ImagingStudy
@exports ImagingStudy as ImagingStudy
*/
ImagingStudy = (function(superClass) {
extend(ImagingStudy, superClass);
function ImagingStudy(json) {
this.json = json;
ImagingStudy.__super__.constructor.call(this, this.json);
}
/**
Date and Time the study started.
@returns {Array} an array of {@link Date} objects
*/
ImagingStudy.prototype.started = function() {
if (this.json['started']) {
return DT.DateTime.parse(this.json['started']);
}
};
/**
The patient for whom the images are of.
@returns {Reference}
*/
ImagingStudy.prototype.patient = function() {
if (this.json['patient']) {
return new Reference(this.json['patient']);
}
};
/**
Formal identifier for the study.
@returns {oid}
*/
ImagingStudy.prototype.uid = function() {
if (this.json['uid']) {
return new oid(this.json['uid']);
}
};
/**
Accession Number.
@returns {Identifier}
*/
ImagingStudy.prototype.accession = function() {
if (this.json['accession']) {
return new Identifier(this.json['accession']);
}
};
/**
Other identifiers for the study.
@returns {Array} an array of {@link Identifier} objects
*/
ImagingStudy.prototype.identifier = function() {
var i, item, len, ref, results;
if (this.json['identifier']) {
ref = this.json['identifier'];
results = [];
for (i = 0, len = ref.length; i < len; i++) {
item = ref[i];
results.push(new Identifier(item));
}
return results;
}
};
/**
A list of the diagnostic orders that resulted in this imaging study being performed.
@returns {Array} an array of {@link Reference} objects
*/
ImagingStudy.prototype.order = function() {
var i, item, len, ref, results;
if (this.json['order']) {
ref = this.json['order'];
results = [];
for (i = 0, len = ref.length; i < len; i++) {
item = ref[i];
results.push(new Reference(item));
}
return results;
}
};
/**
A list of all the Series.ImageModality values that are actual acquisition modalities, i.e. those in the DICOM Context Group 29 (value set OID 1.2.840.10008.6.1.19).
@returns {Array} an array of {@link String} objects
*/
ImagingStudy.prototype.modalityList = function() {
return this.json['modalityList'];
};
/**
The requesting/referring physician.
@returns {Reference}
*/
ImagingStudy.prototype.referrer = function() {
if (this.json['referrer']) {
return new Reference(this.json['referrer']);
}
};
/**
Availability of study (online, offline or nearline).
@returns {Array} an array of {@link String} objects
*/
ImagingStudy.prototype.availability = function() {
return this.json['availability'];
};
/**
WADO-RS URI where Study is available.
@returns {Array} an array of {@link String} objects
*/
ImagingStudy.prototype.url = function() {
return this.json['url'];
};
/**
Number of Series in Study.
@returns {Array} an array of {@link Number} objects
*/
ImagingStudy.prototype.numberOfSeries = function() {
return this.json['numberOfSeries'];
};
/**
Number of SOP Instances in Study.
@returns {Array} an array of {@link Number} objects
*/
ImagingStudy.prototype.numberOfInstances = function() {
return this.json['numberOfInstances'];
};
/**
Diagnoses etc provided with request.
@returns {Array} an array of {@link String} objects
*/
ImagingStudy.prototype.clinicalInformation = function() {
return this.json['clinicalInformation'];
};
/**
Type of procedure performed.
@returns {Array} an array of {@link Coding} objects
*/
ImagingStudy.prototype.procedure = function() {
var i, item, len, ref, results;
if (this.json['procedure']) {
ref = this.json['procedure'];
results = [];
for (i = 0, len = ref.length; i < len; i++) {
item = ref[i];
results.push(new Coding(item));
}
return results;
}
};
/**
Who read study and interpreted the images.
@returns {Reference}
*/
ImagingStudy.prototype.interpreter = function() {
if (this.json['interpreter']) {
return new Reference(this.json['interpreter']);
}
};
/**
Institution-generated description or classification of the Study (component) performed.
@returns {Array} an array of {@link String} objects
*/
ImagingStudy.prototype.description = function() {
return this.json['description'];
};
/**
Each study has one or more series of image instances.
@returns {Array} an array of {@link ImagingStudySeriesComponent} objects
*/
ImagingStudy.prototype.series = function() {
var i, item, len, ref, results;
if (this.json['series']) {
ref = this.json['series'];
results = [];
for (i = 0, len = ref.length; i < len; i++) {
item = ref[i];
results.push(new ImagingStudySeriesComponent(item));
}
return results;
}
};
return ImagingStudy;
})(DomainResource);
module.exports.ImagingStudy = ImagingStudy;
}).call(this);
//# sourceMappingURL=imagingstudy.js.map