public class TLcdS57ModelDescriptor extends TLcdModelDescriptor implements ILcdDataModelDescriptor,ILcdFeaturedDescriptorProvider, Serializable
ILcdModelDescriptor
describes decoded S-57 models. It contains additional
information about the S-57 data set, if present: Modifier and Type | Field and Description |
---|---|
static String |
TYPE_NAME
Type name identifying the S-57 format type.
|
Constructor and Description |
---|
TLcdS57ModelDescriptor(String aSourceName,
String aDisplayName,
String[] aFeatureNames)
Deprecated.
Use the constructor with data model parameters instead.
|
TLcdS57ModelDescriptor(String aSourceName,
String aDisplayName,
TLcdDataModel aDataModel,
Set<TLcdDataType> aModelElementTypes,
Set<TLcdDataType> aModelTypes)
Creates a new TLcdS57ModelDescriptor.
|
Modifier and Type | Method and Description |
---|---|
void |
addWarnings(Collection<? extends Exception> aWarnings)
Adds warnings to the list of warnings encountered during decoding of this model.
|
double |
getAbsoluteMeasurementAccuracy()
Returns the absolute measurement accuracy of this cell (DSAC.HACC subfield).
|
double |
getAbsolutePositionalAccuracy()
Returns the absolute positional accuracy of this cell (DSAC.PACC subfield).
|
double |
getAbsoluteSoundingAccuracy()
Returns the absolute sounding accuracy of this cell (DSAC.SACC subfield).
|
int |
getApplicationProfileIdentification()
Returns the the application profile identification of this cell (DSID.PROF subfield).
|
int |
getATTFLexicalLevel() |
String |
getComment()
Returns the DSID comment of this cell (DSID.COMT subfield).
|
int |
getCompilationScale()
Returns the denominator of the compilation scale of this cell (DSPM.CSCL subfield).
|
TLcdDataModel |
getDataModel()
Returns the data model that describes the elements of the model.
|
String |
getDataSetName()
Returns the name of this cell (DSID.DSNM subfield).
|
int |
getEdgeCount() |
String |
getEditionNumber()
Returns the edition number of this cell (DSID.EDTN subfield).
|
String |
getEditionNumberOfS57()
Returns the edition number of S-57 of this cell (DSID.STED subfield).
|
int |
getExchangeUsage()
Returns the exchange purpose of this cell (DSID.EXPP subfield).
|
int |
getFaceCount()
Returns the number of unique S-57 faces contained in the model.
|
ILcdFeaturedDescriptor |
getFeaturedDescriptor(ILcdFeatured aFeatured)
Gets a
ILcdFeaturedDescriptor that describes the ILcdFeatured passed. |
int |
getHorizontalGeodeticDatum()
Returns the horizontal geodetic datum of this cell (DSPM.HDAT subfield).
|
int |
getIntendedUsage()
Returns the intended usage of this cell (DSID.INTU subfield).
|
Date |
getIssueDate()
Returns the issue date of this cell (DSID.ISDT subfield).
|
Set<TLcdDataType> |
getModelElementTypes()
Returns a set containing all the data types of which instances can be elements in the model
associated with this descriptor.
|
Set<TLcdDataType> |
getModelTypes()
Returns a set containing all the types of which instances can be used (including both
top-level elements and child objects) in the model associated with this descriptor.
|
int |
getNATFLexicalLevel() |
int |
getNodeCount()
Returns the number of unique S-57 nodes contained in the model.
|
int |
getProducingAgency()
Returns the producing agency of this cell (DSID.AGEN subfield).
|
int |
getProductSpecification()
Returns the product specification of this cell (DSID.PRSP subfield).
|
String |
getProductSpecificationDescription()
Returns the product specification description of this cell (DSID.PSDN subfield).
|
String |
getProductSpecificationEditionNumber()
Returns the product specification edition number of this cell (DSID.PRED subfield).
|
ELcdS57ProductType |
getProductType()
Returns the S-57 product type (ENC, AML, ...) of this model.
|
int |
getSoundingDatum()
Returns the sounding datum of this cell (DSPM.SDAT subfield).
|
int |
getUnitsOfDepthMeasurement()
Returns the units of depth measurement of this cell (DSPM.DUNI subfield).
|
int |
getUnitsOfHeightMeasurement()
Returns the units of height measurement of this cell (DSPM.HUNI subfield).
|
int |
getUnitsOfPositionalAccuracy()
Returns the units of positional accuracy of this cell (DSPM.PUNI subfield).
|
Date |
getUpdateApplicationDate()
Returns the update application date of this cell (DSID.UADT subfield).
|
String |
getUpdateNumber()
Returns the update number of this cell (DSID.UPDN subfield).
|
int |
getVerticalDatum()
Returns the vertical datum of this cell (DSPM.VDAT subfield).
|
List<Exception> |
getWarnings()
Returns the list of warnings (failed checksum, expired subscription license, ...), encountered
during decoding of this model.
|
void |
setAbsoluteMeasurementAccuracy(double aAbsoluteMeasurementAccuracy)
Sets the absolute measurement accuracy of this cell (DSAC.HACC subfield).
|
void |
setAbsolutePositionalAccuracy(double aAbsolutePositionalAccuracy)
Sets the absolute positional accuracy of this cell (DSAC.PACC subfield).
|
void |
setAbsoluteSoundingAccuracy(double aAbsoluteSoundingAccuracy)
Sets the absolute sounding accuracy of this cell (DSAC.SACC subfield).
|
void |
setApplicationProfileIdentification(int aApplicationProfileIdentification)
Sets the application profile identification of this cell (DSID.PROF subfield).
|
void |
setATTFLexicalLevel(int aATTFLexicalLevel) |
void |
setComment(String aComment)
Sets the DSID comment of this cell (DSID.COMT subfield).
|
void |
setCompilationScale(int aCompilationScale)
Sets the denominator of the compilation scale of this cell (DSPM.CSCL subfield).
|
void |
setDataSetName(String aDataSetName)
Sets the name of this cell (DSID.DSNM subfield).
|
void |
setEdgeCount(int aEdgeCount)
Sets the number of unique S-57 edges contained in the model.
|
void |
setEditionNumber(String aEditionNumber)
Sets the edition number of this cell (DSID.EDTN subfield).
|
void |
setEditionNumberOfS57(String aEditionNumberOfS57)
Sets the edition number of S-57 of this cell (DSID.STED subfield).
|
void |
setExchangeUsage(int aExchangeUsage)
Sets the exchange purpose of this cell (DSID.EXPP subfield).
|
void |
setFaceCount(int aFaceCount)
Sets the number of unique S-57 faces contained in the model.
|
void |
setHorizontalGeodeticDatum(int aHorizontalGeodeticDatum)
Sets the horizontal geodetic datum of this cell (DSPM.HDAT subfield).
|
void |
setIntendedUsage(int aIntendedUsage)
Sets the intended usage of this cell (DSID.INTU subfield).
|
void |
setIssueDate(Date aIssueDate)
Sets the issue date of this cell (DSID.ISDT subfield).
|
void |
setNATFLexicalLevel(int aNATFLexicalLevel) |
void |
setNodeCount(int aNodeCount)
Sets the number of unique S-57 nodes contained in the model.
|
void |
setProducingAgency(int aProducingAgency)
Sets the producing agency of this cell (DSID.AGEN subfield).
|
void |
setProductSpecification(int aProductSpecification)
Sets the product specification of this cell (DSID.PRSP subfield).
|
void |
setProductSpecificationDescription(String aProductSpecificationDescription)
Sets the product specification description of this cell (DSID.PSDN subfield).
|
void |
setProductSpecificationEditionNumber(String aProductSpecificationEditionNumber)
Sets the product specification edition number of this cell (DSID.PRED subfield).
|
void |
setProductType(ELcdS57ProductType aProductType)
Sets the S-57 product type (ENC, AML, ...) of this model.
|
void |
setSoundingDatum(int aSoundingDatum)
Sets the sounding datum of this cell (DSPM.SDAT subfield).
|
void |
setUnitsOfDepthMeasurement(int aUnitsOfDepthMeasurement)
Sets the units of depth measurement of this cell (DSPM.DUNI subfield).
|
void |
setUnitsOfHeightMeasurement(int aUnitsOfHeightMeasurement)
Sets the units of height measurement of this cell (DSPM.HUNI subfield).
|
void |
setUnitsOfPositionalAccuracy(int aUnitsOfPositionalAccuracy)
Sets the units of positional accuracy of this cell (DSPM.PUNI subfield).
|
void |
setUpdateApplicationDate(Date aUpdateApplicationDate)
Sets the update application date of this cell (DSID.UADT subfield).
|
void |
setUpdateNumber(String aUpdateNumber)
Sets the update number of this cell (DSID.UPDN subfield).
|
void |
setVerticalDatum(int aVerticalDatum)
Sets the vertical datum of this cell (DSPM.VDAT subfield).
|
getDisplayName, getSourceName, getTypeName, setDisplayName, setSourceName, setTypeName, sourceNameToDisplayName
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getDisplayName, getSourceName, getTypeName
public static final String TYPE_NAME
public TLcdS57ModelDescriptor(String aSourceName, String aDisplayName, String[] aFeatureNames)
aSourceName
- the name of the data source.aDisplayName
- the display name of the data source.aFeatureNames
- this value is not used.public TLcdS57ModelDescriptor(String aSourceName, String aDisplayName, TLcdDataModel aDataModel, Set<TLcdDataType> aModelElementTypes, Set<TLcdDataType> aModelTypes)
aSourceName
- the name of the data source.aDisplayName
- the display name of the data source.aDataModel
- the data model describing the structure of the model.aModelElementTypes
- set containing all the data types of which instances occur as
elements in the model.aModelTypes
- set containing all the types of which instances occur (including
both
top-level elements and child objects) in the model.public ELcdS57ProductType getProductType()
ELcdS57ProductType
public void setProductType(ELcdS57ProductType aProductType)
aProductType
- the S-57 product type of this model.ELcdS57ProductType
public List<Exception> getWarnings()
public void addWarnings(Collection<? extends Exception> aWarnings)
aWarnings
- the warnings to addpublic void setNodeCount(int aNodeCount)
aNodeCount
- the number of unique S-57 nodes contained in the model.getNodeCount()
public int getNodeCount()
setNodeCount(int)
public void setEdgeCount(int aEdgeCount)
aEdgeCount
- the number of unique S-57 edges contained in the model.getEdgeCount()
public int getEdgeCount()
setEdgeCount(int)
public void setFaceCount(int aFaceCount)
aFaceCount
- the number of unique S-57 faces contained in the model.getFaceCount()
public int getFaceCount()
setFaceCount(int)
public void setExchangeUsage(int aExchangeUsage)
aExchangeUsage
- the exchange purpose of this cellgetExchangeUsage()
public int getExchangeUsage()
public void setIntendedUsage(int aIntendedUsage)
aIntendedUsage
- the intended usage of this cellgetIntendedUsage()
public int getIntendedUsage()
public void setDataSetName(String aDataSetName)
aDataSetName
- the name of this datasetgetDataSetName()
public String getDataSetName()
public void setEditionNumber(String aEditionNumber)
aEditionNumber
- the edition number of this cellgetEditionNumber()
public String getEditionNumber()
public void setUpdateNumber(String aUpdateNumber)
aUpdateNumber
- the update number of this cellgetUpdateNumber()
public String getUpdateNumber()
public void setUpdateApplicationDate(Date aUpdateApplicationDate)
aUpdateApplicationDate
- the update application date of this cellgetUpdateApplicationDate()
public Date getUpdateApplicationDate()
public void setIssueDate(Date aIssueDate)
aIssueDate
- the issue date of this cellgetIssueDate()
public Date getIssueDate()
public void setEditionNumberOfS57(String aEditionNumberOfS57)
aEditionNumberOfS57
- the edition number of S-57 of this cellgetEditionNumberOfS57()
public String getEditionNumberOfS57()
public void setProductSpecification(int aProductSpecification)
aProductSpecification
- the product specification of this cellgetProductSpecification()
public int getProductSpecification()
public void setProductSpecificationDescription(String aProductSpecificationDescription)
aProductSpecificationDescription
- the product specification description of this cellgetProductSpecificationDescription()
public String getProductSpecificationDescription()
public void setProductSpecificationEditionNumber(String aProductSpecificationEditionNumber)
aProductSpecificationEditionNumber
- the product specification edition number of this cellgetProductSpecificationEditionNumber()
public String getProductSpecificationEditionNumber()
public void setApplicationProfileIdentification(int aApplicationProfileIdentification)
aApplicationProfileIdentification
- the application profile identification of this cellgetApplicationProfileIdentification()
public int getApplicationProfileIdentification()
public void setProducingAgency(int aProducingAgency)
aProducingAgency
- the producing agency of this cellgetProducingAgency()
public int getProducingAgency()
public void setComment(String aComment)
aComment
- the DSID comment of this cellgetComment()
public String getComment()
public void setHorizontalGeodeticDatum(int aHorizontalGeodeticDatum)
aHorizontalGeodeticDatum
- the horizontal geodetic datum of this cellgetHorizontalGeodeticDatum()
public int getHorizontalGeodeticDatum()
public void setVerticalDatum(int aVerticalDatum)
aVerticalDatum
- the vertical datum of this cellgetVerticalDatum()
public int getVerticalDatum()
public void setSoundingDatum(int aSoundingDatum)
aSoundingDatum
- the vertical datum of this cellgetSoundingDatum()
public int getSoundingDatum()
public void setCompilationScale(int aCompilationScale)
aCompilationScale
- the denominator of the compilation scale of this cellgetCompilationScale()
public int getCompilationScale()
public void setUnitsOfDepthMeasurement(int aUnitsOfDepthMeasurement)
aUnitsOfDepthMeasurement
- the units of depth measurement of this cellgetUnitsOfDepthMeasurement()
public int getUnitsOfDepthMeasurement()
public void setUnitsOfHeightMeasurement(int aUnitsOfHeightMeasurement)
aUnitsOfHeightMeasurement
- the units of height measurement of this cellgetUnitsOfHeightMeasurement()
public int getUnitsOfHeightMeasurement()
public void setUnitsOfPositionalAccuracy(int aUnitsOfPositionalAccuracy)
aUnitsOfPositionalAccuracy
- the units of positional accuracy of this cellgetUnitsOfPositionalAccuracy()
public int getUnitsOfPositionalAccuracy()
public void setAbsolutePositionalAccuracy(double aAbsolutePositionalAccuracy)
aAbsolutePositionalAccuracy
- the absolute positional accuracy of this cellgetAbsolutePositionalAccuracy()
public double getAbsolutePositionalAccuracy()
public void setAbsoluteMeasurementAccuracy(double aAbsoluteMeasurementAccuracy)
aAbsoluteMeasurementAccuracy
- the absolute positional accuracy of this cellgetAbsoluteMeasurementAccuracy()
public double getAbsoluteMeasurementAccuracy()
public void setAbsoluteSoundingAccuracy(double aAbsoluteSoundingAccuracy)
aAbsoluteSoundingAccuracy
- the absolute sounding accuracy of this cellgetAbsoluteSoundingAccuracy()
public double getAbsoluteSoundingAccuracy()
public int getATTFLexicalLevel()
public void setATTFLexicalLevel(int aATTFLexicalLevel)
public int getNATFLexicalLevel()
public void setNATFLexicalLevel(int aNATFLexicalLevel)
public TLcdDataModel getDataModel()
ILcdDataModelDescriptor
Returns the data model that describes the elements of the model. Note that not necessarily all data in the model will be of a type of this data model. Very likely, types from the dependencies of the returned data model are used as well.
In case the model accepts objects from multiple data models, an anonymous
data model that depends on all these data models should be returned
(see TLcdDataModelBuilder.createAnonymousDataModel(java.util.Collection)
).
getDataModel
in interface ILcdDataModelDescriptor
public Set<TLcdDataType> getModelElementTypes()
ILcdDataModelDescriptor
Returns a set containing all the data types of which instances can be elements in the model associated with this descriptor. Implementations are free to limit the result to only include the types of which there are actually elements in the model; but they are not required to do so.
Implementations should return null
in case they don't know
which element types are present in the model.
For each element of the model associated with this model descriptor, the following holds true :
getModelElementTypes().contains( element.getDataType() )
.
getModelElementTypes
in interface ILcdDataModelDescriptor
public Set<TLcdDataType> getModelTypes()
ILcdDataModelDescriptor
Returns a set containing all the types of which instances can be used (including both top-level elements and child objects) in the model associated with this descriptor. Implementations are free to limit the result to only include the types of which there are actually instances in the model; but they are not required to do so.
A simple and correct implementation would be to return
getDataModel().getTypes()
. Implementations are encouraged to return a subset of
this set if they can do so without spending an unreasonable amount of resources.
Implementations should return null
in case they don't know
which types are present in the model.
getModelTypes
in interface ILcdDataModelDescriptor
public ILcdFeaturedDescriptor getFeaturedDescriptor(ILcdFeatured aFeatured)
ILcdFeaturedDescriptorProvider
ILcdFeaturedDescriptor
that describes the ILcdFeatured
passed.getFeaturedDescriptor
in interface ILcdFeaturedDescriptorProvider
aFeatured
- a featured object to retrieve a featured descriptor for.ILcdFeaturedDescriptor
that describes the ILcdFeatured
passed.