Modifier and Type | Field and Description |
---|---|
protected HashMap |
mapOfDirectoryRecordsToSequenceItems |
Constructor and Description |
---|
DicomDirectory()
Create an empty DicomDirectory
|
DicomDirectory(AttributeList list)
Create a DicomDirectory from a DICOMDIR instance already read as an AttributeList
|
DicomDirectory(AttributeList list,
boolean doConcatenations)
Create a DicomDirectory from a DICOMDIR instance already read as an AttributeList, optionally creating synthetic concatenation records
|
DicomDirectory(File rootDirectory,
String[] fileNames)
Create a new DicomDirectory from a list of existing DICOM files contained within a specified root directory.
|
DicomDirectory(String[] fileNames)
Create a new DicomDirectory from a list of existing DICOM files contained within the current working directory.
|
Modifier and Type | Method and Description |
---|---|
void |
addAttributeListFromDicomFileToDirectory(AttributeList list,
String fileName)
Add an instance described by a list of attributes to this directory.
|
void |
addTreeModelListener(TreeModelListener tml) |
static Vector<String> |
findAllContainedReferencedFileNames(DicomDirectoryRecord record,
String parentFilePath)
Get all the referenced file names at or below the specified directory record.
|
Vector<String> |
findAllContainedReferencedFileNames(String parentFilePath)
Get all the referenced file names in the entire directory.
|
static HashMap<String,DicomDirectoryRecord> |
findAllContainedReferencedFileNamesAndTheirRecords(DicomDirectoryRecord record,
String parentFilePath)
Get all the referenced file names at or below the specified directory record, and a map to the directory records that reference them.
|
HashMap<String,DicomDirectoryRecord> |
findAllContainedReferencedFileNamesAndTheirRecords(String parentFilePath)
Get all the referenced file names in the entire directory, and a map to the directory records that reference them.
|
Vector<AttributeList> |
findAllImagesForFrameOfReference(String frameOfReferenceUID)
Get the attribute lists from all the IMAGE level directory records which have a particular FrameOfReferenceUID.
|
Object |
getChild(Object node,
int index) |
int |
getChildCount(Object parent) |
int |
getIndexOfChild(Object parent,
Object child) |
Map<String,String> |
getMapOfSOPInstanceUIDToReferencedFileName(String parentFilePath)
Build a map of file names indexed by SOP Instance UID.
|
String |
getReferencedFileNameForSOPInstanceUID(String sopInstanceUID)
Get the file name for the specified SOP Instance UID.
|
Object |
getRoot() |
boolean |
isLeaf(Object node) |
static void |
main(String[] arg)
Read DICOM files and create a DICOMDIR.
|
void |
readDicomFileAndAddToDirectory(File rootDirectory,
String fileName)
Read DICOM file and add it to this directory.
|
void |
readDicomFileAndAddToDirectory(String fileName)
Read DICOM file and add it to this directory.
|
void |
removeTreeModelListener(TreeModelListener tml) |
String |
toString() |
void |
valueForPathChanged(TreePath path,
Object newValue) |
void |
write(String name)
Write the directory to the named file.
|
protected HashMap mapOfDirectoryRecordsToSequenceItems
public DicomDirectory()
public DicomDirectory(AttributeList list) throws DicomException
list
- a list of attributes describing a DICOMDIR instanceDicomException
- if error in DICOM encodingpublic DicomDirectory(AttributeList list, boolean doConcatenations) throws DicomException
list
- a list of attributes describing a DICOMDIR instancedoConcatenations
- true if synthetic concatenation records are to be createdDicomException
- if error in DICOM encodingpublic DicomDirectory(File rootDirectory, String[] fileNames)
Create a new DicomDirectory from a list of existing DICOM files contained within a specified root directory.
The specified root directory will NOT be included in the referenced file name in the DICOMDIR records.
Filenames are NOT checked for compliance with restrictions on length and character set.
rootDirectory
- the name of the directory to use as the root, which contains the DICOM filefileNames
- the names of the DICOM files (relative to rootDirectory)public DicomDirectory(String[] fileNames)
Create a new DicomDirectory from a list of existing DICOM files contained within the current working directory.
The filenames must be relative to the current working directory, and not absolute paths, since the full name will be used in the DICOMDIR records.
Filenames are NOT checked for compliance with restrictions on length and character set.
fileNames
- the names of the DICOM files (relative to the current working directory)public void addAttributeListFromDicomFileToDirectory(AttributeList list, String fileName) throws DicomException, IOException
list
- the list of attributes containing the attributes to add to this directoryfileName
- the name of the DICOM fileIOException
- if an I/O error occursDicomException
- if error in DICOM encoding, or the SOP Class is not recognized, or the instance already exists in the directorypublic void addTreeModelListener(TreeModelListener tml)
addTreeModelListener
in interface TreeModel
public static Vector<String> findAllContainedReferencedFileNames(DicomDirectoryRecord record, String parentFilePath)
Get all the referenced file names at or below the specified directory record.
public Vector<String> findAllContainedReferencedFileNames(String parentFilePath)
Get all the referenced file names in the entire directory.
public static HashMap<String,DicomDirectoryRecord> findAllContainedReferencedFileNamesAndTheirRecords(DicomDirectoryRecord record, String parentFilePath)
Get all the referenced file names at or below the specified directory record, and a map to the directory records that reference them.
public HashMap<String,DicomDirectoryRecord> findAllContainedReferencedFileNamesAndTheirRecords(String parentFilePath)
Get all the referenced file names in the entire directory, and a map to the directory records that reference them.
public Vector<AttributeList> findAllImagesForFrameOfReference(String frameOfReferenceUID)
Get the attribute lists from all the IMAGE level directory records which have a particular FrameOfReferenceUID.
Useful for finding potential localizers and orthogonal images.
Note that even though FrameOfReference is a series level entity, in the CT/MR profiles it is specified at the IMAGE directory record level.
frameOfReferenceUID
- the frame of reference UID to search forVector
of AttributeList
public int getChildCount(Object parent)
getChildCount
in interface TreeModel
public int getIndexOfChild(Object parent, Object child)
getIndexOfChild
in interface TreeModel
public Map<String,String> getMapOfSOPInstanceUIDToReferencedFileName(String parentFilePath)
Build a map of file names indexed by SOP Instance UID.
parentFilePath
- the path to the root of the file names encoded in this directorypublic String getReferencedFileNameForSOPInstanceUID(String sopInstanceUID) throws DicomException
Get the file name for the specified SOP Instance UID.
sopInstanceUID
- the SOP Instance UID wantedDicomException
- if map has not been initializedpublic static void main(String[] arg)
Read DICOM files and create a DICOMDIR.
arg
- optionally the folder in which the files and DICOMDIR are rooted, the filename of the DICOMDIR to be created, then optionally a list of all the filenames of the DICOM files to include (otherwise the folder will be searched)public void readDicomFileAndAddToDirectory(File rootDirectory, String fileName) throws DicomException, IOException
rootDirectory
- the name of the directory to use as the root, which contains the DICOM filefileName
- the name of the DICOM file (relative to rootDirectory)IOException
- if an I/O error occursDicomException
- if error in DICOM encodingpublic void readDicomFileAndAddToDirectory(String fileName) throws DicomException, IOException
fileName
- the name of the DICOM file (relative to the current working directory)IOException
- if an I/O error occursDicomException
- if error in DICOM encodingpublic void removeTreeModelListener(TreeModelListener tml)
removeTreeModelListener
in interface TreeModel
public void valueForPathChanged(TreePath path, Object newValue)
valueForPathChanged
in interface TreeModel
public void write(String name) throws IOException, DicomException
Write the directory to the named file.
name
- the file name to write toIOException
- if an I/O error occursDicomException
- if error in DICOM encoding