public final class HDF5GenericStorageFeatures
extends java.lang.Object
The ..._KEEP
variants denote that the specified storage features should only be
applied if a new data set has to be created. If the data set already exists, it will be kept with
whatever storage features it has.
Note that this may lead to an exception if the existing data set is non-extendable and the
dimensions of the new data set differ from the dimensions of the existing data set.
The ..._DELETE
variants denote that the specified storage features should always be
applied. If the data set already exists, it will be deleted before the new data set is written.
This is the default behavior. However, if the
IHDF5WriterConfigurator.keepDataSetsIfTheyExist()
setting is given, the
..._DELETE
variant can be used to override this setting on a case-by-case basis.
The available storage layouts are HDF5StorageLayout.COMPACT
,
HDF5StorageLayout.CONTIGUOUS
or HDF5StorageLayout.CHUNKED
can be chosen. Only
HDF5StorageLayout.CHUNKED
is extendable and can be compressed.
For generic (that is non-integer and non-float) data sets only one type of compression is
supported, which is deflation, the method used by gzip
. The deflation level
can be chosen to get the right balance between speed of compression and compression ratio. Often
the DEFAULT_DEFLATION_LEVEL
will be the right choice.
Modifier and Type | Class and Description |
---|---|
static class |
ch.systemsx.cisd.hdf5.HDF5AbstractStorageFeatures.DataSetReplacementPolicy
The policy on how to deal with write access to existing datasets.
|
static class |
ch.systemsx.cisd.hdf5.HDF5AbstractStorageFeatures.HDF5AbstractStorageFeatureBuilder |
static class |
HDF5GenericStorageFeatures.HDF5GenericStorageFeatureBuilder
A builder for storage features.
|
Modifier and Type | Field and Description |
---|---|
static byte |
DEFAULT_DEFLATION_LEVEL
A constant that specifies the default deflation level (gzip compression).
|
static HDF5GenericStorageFeatures |
GENERIC_CHUNKED
Represents a chunked storage layout.
|
static HDF5GenericStorageFeatures |
GENERIC_CHUNKED_DELETE
Represents a chunked storage layout.
|
static HDF5GenericStorageFeatures |
GENERIC_CHUNKED_KEEP
Represents a chunked storage layout.
|
static HDF5GenericStorageFeatures |
GENERIC_COMPACT
Represents a compact storage layout.
|
static HDF5GenericStorageFeatures |
GENERIC_COMPACT_DELETE
Represents a compact storage layout.
|
static HDF5GenericStorageFeatures |
GENERIC_COMPACT_KEEP
Represents a compact storage layout.
|
static HDF5GenericStorageFeatures |
GENERIC_CONTIGUOUS
Represents a contiguous storage layout.
|
static HDF5GenericStorageFeatures |
GENERIC_CONTIGUOUS_DELETE
Represents a contiguous storage layout.
|
static HDF5GenericStorageFeatures |
GENERIC_CONTIGUOUS_KEEP
Represents a contiguous storage layout.
|
static HDF5GenericStorageFeatures |
GENERIC_DEFLATE
Represents 'standard compression', that is deflation with the default deflation level.
|
static HDF5GenericStorageFeatures |
GENERIC_DEFLATE_DELETE
Represents 'standard compression', that is deflation with the default deflation level.
|
static HDF5GenericStorageFeatures |
GENERIC_DEFLATE_KEEP
Represents 'standard compression', that is deflation with the default deflation level.
|
static HDF5GenericStorageFeatures |
GENERIC_DEFLATE_MAX
Represents 'maximal compression', that is deflation with the maximal deflation level.
|
static HDF5GenericStorageFeatures |
GENERIC_DEFLATE_MAX_DELETE
Represents 'maximal compression', that is deflation with the maximal deflation level.
|
static HDF5GenericStorageFeatures |
GENERIC_DEFLATE_MAX_KEEP
Represents 'maximal compression', that is deflation with the maximal deflation level.
|
static HDF5GenericStorageFeatures |
GENERIC_NO_COMPRESSION
Represents 'no compression'.
|
static HDF5GenericStorageFeatures |
GENERIC_NO_COMPRESSION_DELETE
Represents 'no compression'.
|
static HDF5GenericStorageFeatures |
GENERIC_NO_COMPRESSION_KEEP
Represents 'no compression'.
|
static HDF5GenericStorageFeatures |
GENERIC_SHUFFLE_DEFLATE
Represents 'standard compression' with a pre-filter shuffle, that is deflation with the
default deflation level.
|
static HDF5GenericStorageFeatures |
GENERIC_SHUFFLE_DEFLATE_MAX
Represents 'maximal compression' with a pre-filter shuffle, that is deflation with the
default deflation level.
|
static byte |
MAX_DEFLATION_LEVEL
A constant that specifies the maximal deflation level (gzip compression).
|
static byte |
NO_DEFLATION_LEVEL
A constant that specifies that no deflation should be used.
|
Modifier and Type | Method and Description |
---|---|
static HDF5GenericStorageFeatures.HDF5GenericStorageFeatureBuilder |
build()
Returns a new storage feature builder.
|
static HDF5GenericStorageFeatures.HDF5GenericStorageFeatureBuilder |
build(ch.systemsx.cisd.hdf5.HDF5AbstractStorageFeatures template)
Returns a new storage feature builder, initializing from template.
|
static HDF5GenericStorageFeatures |
createDeflation(int deflationLevel)
Creates a
HDF5GenericStorageFeatures object that represents deflation with the given
deflationLevel. |
static HDF5GenericStorageFeatures |
createDeflationKeep(int deflationLevel)
Creates a
HDF5GenericStorageFeatures object that represents deflation with the given
deflationLevel. |
ch.systemsx.cisd.hdf5.HDF5AbstractStorageFeatures.DataSetReplacementPolicy |
getDatasetReplacementPolicy()
Returns the policy of this storage feature object regarding replacing or keeping already
existing datasets.
|
byte |
getDeflateLevel()
Returns the deflate level of this storage feature object.
|
byte |
getScalingFactor()
Returns the scaling factor of this storage feature object.
|
boolean |
isDeflating()
Returns
true , if this storage feature object deflates data. |
boolean |
isScaling()
Returns
true , if this storage feature object scales data. |
boolean |
isShuffleBeforeDeflate()
Returns
true , if this storage feature object performs shuffling before deflating
the data. |
HDF5StorageLayout |
tryGetProposedLayout()
Returns the proposed storage layout, or
null , if no particular storage layout
should be proposed. |
public static final HDF5GenericStorageFeatures GENERIC_NO_COMPRESSION
public static final HDF5GenericStorageFeatures GENERIC_NO_COMPRESSION_KEEP
Keep existing data set and apply only if a new data set has to be created.
public static final HDF5GenericStorageFeatures GENERIC_NO_COMPRESSION_DELETE
Delete an existing data set before writing the new one. Always apply the chosen settings.
This allows to overwrite the IHDF5WriterConfigurator.keepDataSetsIfTheyExist()
setting.
public static final HDF5GenericStorageFeatures GENERIC_COMPACT
public static final HDF5GenericStorageFeatures GENERIC_COMPACT_KEEP
Keep existing data set and apply only if a new data set has to be created.
public static final HDF5GenericStorageFeatures GENERIC_COMPACT_DELETE
Delete an existing data set before writing the new one. Always apply the chosen settings.
This allows to overwrite the IHDF5WriterConfigurator.keepDataSetsIfTheyExist()
setting.
public static final HDF5GenericStorageFeatures GENERIC_CONTIGUOUS
public static final HDF5GenericStorageFeatures GENERIC_CONTIGUOUS_KEEP
Keep existing data set and apply only if a new data set has to be created.
public static final HDF5GenericStorageFeatures GENERIC_CONTIGUOUS_DELETE
Delete an existing data set before writing the new one. Always apply the chosen settings.
This allows to overwrite the IHDF5WriterConfigurator.keepDataSetsIfTheyExist()
setting.
public static final HDF5GenericStorageFeatures GENERIC_CHUNKED
public static final HDF5GenericStorageFeatures GENERIC_CHUNKED_KEEP
Keep existing data set and apply only if a new data set has to be created.
public static final HDF5GenericStorageFeatures GENERIC_CHUNKED_DELETE
Delete an existing data set before writing the new one. Always apply the chosen settings.
This allows to overwrite the IHDF5WriterConfigurator.keepDataSetsIfTheyExist()
setting.
public static final HDF5GenericStorageFeatures GENERIC_DEFLATE
public static final HDF5GenericStorageFeatures GENERIC_SHUFFLE_DEFLATE
public static final HDF5GenericStorageFeatures GENERIC_DEFLATE_KEEP
Keep existing data set and apply only if a new data set has to be created.
public static final HDF5GenericStorageFeatures GENERIC_DEFLATE_DELETE
Delete an existing data set before writing the new one. Always apply the chosen settings.
This allows to overwrite the IHDF5WriterConfigurator.keepDataSetsIfTheyExist()
setting.
public static final HDF5GenericStorageFeatures GENERIC_DEFLATE_MAX
public static final HDF5GenericStorageFeatures GENERIC_SHUFFLE_DEFLATE_MAX
public static final HDF5GenericStorageFeatures GENERIC_DEFLATE_MAX_KEEP
Keep existing data set and apply only if a new data set has to be created.
public static final HDF5GenericStorageFeatures GENERIC_DEFLATE_MAX_DELETE
Delete an existing data set before writing the new one. Always apply the chosen settings.
This allows to overwrite the IHDF5WriterConfigurator.keepDataSetsIfTheyExist()
setting.
public static final byte NO_DEFLATION_LEVEL
public static final byte DEFAULT_DEFLATION_LEVEL
public static final byte MAX_DEFLATION_LEVEL
public static HDF5GenericStorageFeatures createDeflation(int deflationLevel)
HDF5GenericStorageFeatures
object that represents deflation with the given
deflationLevel.public static HDF5GenericStorageFeatures createDeflationKeep(int deflationLevel)
HDF5GenericStorageFeatures
object that represents deflation with the given
deflationLevel.
Keep existing data set and apply only if a new data set has to be created.
public static HDF5GenericStorageFeatures.HDF5GenericStorageFeatureBuilder build()
public static HDF5GenericStorageFeatures.HDF5GenericStorageFeatureBuilder build(ch.systemsx.cisd.hdf5.HDF5AbstractStorageFeatures template)
public HDF5StorageLayout tryGetProposedLayout()
null
, if no particular storage layout
should be proposed.public ch.systemsx.cisd.hdf5.HDF5AbstractStorageFeatures.DataSetReplacementPolicy getDatasetReplacementPolicy()
public boolean isDeflating()
true
, if this storage feature object deflates data.public boolean isScaling()
true
, if this storage feature object scales data.public boolean isShuffleBeforeDeflate()
true
, if this storage feature object performs shuffling before deflating
the data.public byte getDeflateLevel()
public byte getScalingFactor()