A library for reading and writing DICOM objects.
A simple usage example:
import 'package:io3/io3.dart';
main() {
var awesome = new Awesome();
}
Extension Type
.dcm SOP Instance
.md Metadata
.bd Bulkdata
path format = root / studyUid / seriesUid / instanceUid.dcm ; Sop Instance
/ root / studyUid / seriesUid / instanceUid.md ; instance Metadata
/ root / studyUid / seriesUid / bulkdataUid.bd ; instance Bulkdata
Where, root, studyUid, and SeriesUid are strings naming directories, and instanceUid is a string naming a file. The studyUid, seriesUid and instancUid are strings containing UIDs.
path format = root / studyUid / instanceUid.dcm
Where, root, and studyUid are strings naming directories, and instanceUid is a string naming a file. The studyUid and instancUid are strings containing UIDs.
path format = root / studyUid / metadataUid.md ; constains study Metadata
/ root / studyUid / bulkdataUid.bd ; contain study Bulkdata
/ root / studyUid / series / metadataUid.md ; constain study & series Metadata
/ root / studyUid / series / bulkdataUid.md ; contains series Bulkdata
/ root / studyUid / seriesUid / instanceUid.dcm ; Sop Instance
/ root / studyUid / seriesUid / instanceUid.md ; instance Metadata
/ root / studyUid / seriesUid / bulkdataUid.bd ; instance Bulkdata
Where, root, and studyUid are strings naming directories, and instanceUid is a string naming a file. The studyUid and instancUid are strings containing UIDs.
Media Type Source Code
dicom dicomUtils.dart
dicom+json dicom_json_utils.dart
dicom+xml dicom_xml_utils.dart
json json.utils
Create a Path
String toPath(root, study, [series, instance, extension])
Read a File
bytes = file.read()
bytes = file.readSync()
Read a Directory
stream = directory.read()
List<Uint8List> = directory.readSync()
Write a File
void file.write(path, bytes)
void file writeSync(path, bytes)
Write a Directory
Sink directory.write(path)
void directory.writeSync(path, List<UintList>)
The libary is designed to support different file organizations:
-
SOP_Flat: All the files are in one directory specified by the [_StudyInstanceUID]. Each file contains a single SOP Instance
-
Structured: All the files are
Please file feature requests and bugs at the [issue tracker][tracker].
[StudyInstanceUID] [tracker]: http://example.com/issues/replaceme