public class DicomWriter extends FormatWriter
| Modifier and Type | Class and Description |
|---|---|
(package private) class |
DicomWriter.PlaneOffset |
(package private) class |
DicomWriter.UIDCreator
Helper class for creating UIDs.
|
| Modifier and Type | Field and Description |
|---|---|
private int |
baseTileHeight |
private int |
baseTileWidth |
private long[] |
compressionMethodPointer |
private java.lang.Integer |
currentPlane |
private long |
fileMetaLengthPointer |
private java.lang.String |
implementationUID |
private java.lang.String |
instanceUIDValue |
private long[] |
pixelDataLengthPointer |
private int[] |
pixelDataSize |
private DicomWriter.PlaneOffset[][] |
planeOffsets |
private static java.lang.String |
SOP_CLASS_UID_VALUE |
private int[] |
tileHeight |
private int[] |
tileWidth |
private long[] |
transferSyntaxPointer |
static java.lang.String |
UID_DEFAULT_ROOT |
static java.lang.String |
UID_ROOT_KEY
Option for setting the organization root for UIDs.
|
private DicomWriter.UIDCreator |
uids |
cm, compression, compressionTypes, fps, initialized, interleaved, metadataRetrieve, options, out, resolution, resolutionData, sequential, series, validBitsCOMPRESSION_SUFFIXES, currentId, format, LOGGER, metadataOptions, suffixes| Constructor and Description |
|---|
DicomWriter() |
| Modifier and Type | Method and Description |
|---|---|
boolean |
canDoStacks()
Reports whether the writer can save multiple images to a single file.
|
void |
close() |
private Codec |
getCodec() |
private java.lang.String |
getCompressionMethod() |
private java.lang.String |
getFilename(int pyramid,
int res) |
private java.lang.String |
getImageType(java.lang.String pyramidName,
int res,
boolean hasPyramid,
int resolutionCount) |
private int |
getIndex(int pyramid,
int res) |
int[] |
getPixelTypes(java.lang.String codec)
Gets the supported pixel types for the given codec.
|
private int |
getStoredLength(DicomTag tag) |
int |
getTileSizeX()
Retrieves the current tile width
Defaults to 0 if not supported
|
int |
getTileSizeY()
Retrieves the current tile height
Defaults to 0 if not supported
|
private java.lang.String |
getTransferSyntax() |
java.lang.String |
getUIDRoot() |
private int[] |
getZCTCoords(int no) |
private boolean |
isReallySequential() |
private DicomTag |
makeItem() |
private DicomTag |
makeItemDelimitation() |
private short[] |
makeShortArray(int v) |
private void |
openFile(int pyramid,
int res) |
private java.lang.String |
padString(java.lang.String value)
Pad the given string so that the length is a multiple of 2.
|
private java.lang.String |
padString(java.lang.String value,
java.lang.String append) |
private java.lang.String |
padUID(java.lang.String value)
Pad the given string so that the length is a multiple of 2.
|
void |
saveBytes(int no,
byte[] buf,
int x,
int y,
int w,
int h)
Saves the given image tile to the current series in the current file.
|
void |
setId(java.lang.String id)
Initializes a writer from the input file name.
|
void |
setResolution(int r)
Set the resolution level.
|
void |
setSeries(int s)
Sets the current series.
|
int |
setTileSizeX(int tileSize)
Will attempt to set the tile width to the desired value and return the actual value which will be used
|
int |
setTileSizeY(int tileSize)
Will attempt to set the tile height to the desired value and return the actual value which will be used
|
private void |
writeHeader()
Write the preamble, prefix, and file meta elements.
|
private void |
writeTag(DicomTag tag) |
changeOutputFile, checkParams, createOutputStream, getColorModel, getCompression, getCompressionTypes, getFramesPerSecond, getMetadataRetrieve, getPixelTypes, getPlaneCount, getPlaneCount, getResolution, getResolutionCount, getResolutions, getSamplesPerPixel, getSamplesPerPixel, getSeries, getSizeX, getSizeY, hasResolutions, isFullPlane, isInterleaved, isSupportedType, saveBytes, saveBytes, savePlane, savePlane, savePlane, seekToPlaneOffset, setCodecOptions, setColorModel, setCompression, setFramesPerSecond, setInterleaved, setMetadataRetrieve, setResolutions, setValidBitsPerPixel, setWriteSequentiallycheckSuffix, checkSuffix, getFormat, getMetadataOptions, getNativeDataType, getSuffixes, getSupportedMetadataLevels, isThisType, setMetadataOptionsclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetFormat, getNativeDataType, getSuffixes, isThisTypegetMetadataOptions, getSupportedMetadataLevels, setMetadataOptionspublic static final java.lang.String UID_ROOT_KEY
public static final java.lang.String UID_DEFAULT_ROOT
private static final java.lang.String SOP_CLASS_UID_VALUE
private long[] pixelDataLengthPointer
private int[] pixelDataSize
private long[] transferSyntaxPointer
private long[] compressionMethodPointer
private long fileMetaLengthPointer
private int baseTileWidth
private int baseTileHeight
private int[] tileWidth
private int[] tileHeight
private DicomWriter.PlaneOffset[][] planeOffsets
private java.lang.Integer currentPlane
private DicomWriter.UIDCreator uids
private java.lang.String instanceUIDValue
private java.lang.String implementationUID
public void setSeries(int s)
throws FormatException
IFormatWritersetSeries in interface IFormatWritersetSeries in class FormatWriters - the series index, starting from 0.FormatException - if the specified series is invalid.public void setResolution(int r)
IPyramidHandlersetResolution in interface IPyramidHandlersetResolution in class FormatWriterIPyramidHandler.getResolutionCount()public void saveBytes(int no,
byte[] buf,
int x,
int y,
int w,
int h)
throws FormatException,
java.io.IOException
IFormatWriterno - the plane index within the series.buf - the byte array that represents the image tile.x - the X coordinate of the upper-left corner of the image tile.y - the Y coordinate of the upper-left corner of the image tile.w - the width (in pixels) of the image tile.h - the height (in pixels) of the image tile.FormatException - if one of the parameters is invalid.java.io.IOException - if there was a problem writing to the file.IFormatWriter.saveBytes(int, byte[], int, int, int, int)public boolean canDoStacks()
IFormatWritercanDoStacks in interface IFormatWritercanDoStacks in class FormatWriterpublic int[] getPixelTypes(java.lang.String codec)
IFormatWritergetPixelTypes in interface IFormatWritergetPixelTypes in class FormatWriterpublic void setId(java.lang.String id)
throws FormatException,
java.io.IOException
FormatWriterRandomAccessOutputStream for the output
file and initializes the metadata for all the series using
FormatWriter.setSeries(int).setId in interface IFormatHandlersetId in class FormatWriterid - a String specifying the path to the fileFormatExceptionjava.io.IOExceptionpublic void close()
throws java.io.IOException
close in interface java.io.Closeableclose in interface java.lang.AutoCloseableclose in class FormatWriterjava.io.IOExceptionpublic int setTileSizeX(int tileSize)
throws FormatException
IFormatWritersetTileSizeX in interface IFormatWritersetTileSizeX in class FormatWritertileSize - The tile width you wish to use. Setting to 0 will disable tilingFormatException - Tile size must be greater than or equal to 0 and less than the image widthpublic int getTileSizeX()
IFormatWritergetTileSizeX in interface IFormatWritergetTileSizeX in class FormatWriterpublic int setTileSizeY(int tileSize)
throws FormatException
IFormatWritersetTileSizeY in interface IFormatWritersetTileSizeY in class FormatWritertileSize - The tile height you wish to use. Setting to 0 will disable tilingFormatException - Tile size must be greater than or equal to 0 and less than the image heightpublic int getTileSizeY()
IFormatWritergetTileSizeY in interface IFormatWritergetTileSizeY in class FormatWriterpublic java.lang.String getUIDRoot()
private int getStoredLength(DicomTag tag)
private void writeTag(DicomTag tag) throws java.io.IOException
java.io.IOExceptionprivate java.lang.String padString(java.lang.String value)
value - original stringprivate java.lang.String padUID(java.lang.String value)
value - original stringprivate java.lang.String padString(java.lang.String value,
java.lang.String append)
private java.lang.String getTransferSyntax()
private java.lang.String getCompressionMethod()
private Codec getCodec()
private void openFile(int pyramid,
int res)
throws java.io.IOException
java.io.IOExceptionprivate void writeHeader()
throws java.io.IOException
java.io.IOExceptionprivate java.lang.String getFilename(int pyramid,
int res)
private int getIndex(int pyramid,
int res)
private int[] getZCTCoords(int no)
private boolean isReallySequential()
private java.lang.String getImageType(java.lang.String pyramidName,
int res,
boolean hasPyramid,
int resolutionCount)
private DicomTag makeItem()
private DicomTag makeItemDelimitation()
private short[] makeShortArray(int v)
Copyright © 2023 Open Microscopy Environment