slimfits
Version:
Package for loading data stored in FITS data format
30 lines • 1.35 kB
JavaScript
import { PromiseUtils } from '../utils/PromiseUtils';
import { ArrayUtils } from '../utils/ArrayUtils';
var SingleRequestFile = /** @class */ (function () {
function SingleRequestFile(url) {
this.url = url;
}
SingleRequestFile.prototype.initialize = function () {
var _this = this;
return PromiseUtils.getRequestAsync(this.url).then(function (xhr) {
_this.data = xhr.response;
return (_this.getByteLength() % 2880 === 0);
});
};
SingleRequestFile.prototype.getByteLength = function () {
var byteLength = this.data.byteLength;
return this.data != null ? this.data.byteLength : 0;
};
SingleRequestFile.prototype.getStringAsync = function (start, length) {
return Promise.resolve(String.fromCharCode.apply(null, new Uint8Array(this.data, start, length)));
};
SingleRequestFile.prototype.getDataAsync = function (start, length, bitPix, changeEndian) {
if (changeEndian === void 0) { changeEndian = true; }
var typedArray = ArrayUtils.generateTypedArray(bitPix, length);
ArrayUtils.copy(this.data, typedArray.buffer, start, length, bitPix, changeEndian);
return Promise.resolve(typedArray);
};
return SingleRequestFile;
}());
export { SingleRequestFile };
//# sourceMappingURL=SingleRequestFile.js.map