Delegate DatasetIso8211Matcher
Decides, from the envelope of an ISO 8211-encoded dataset, whether the file
belongs to a particular product. Contributed per
ProductRegistration so an ISO 8211 product is
recognized in the same place it is constructed, rather than
in a central switch inside DatasetPipelineFactory. The
factory reads the envelope once (see Iso8211RootInfo) and
returns the spec of the first registered product whose matcher claims it.
Returns true when the file belongs to the registering
product.
This is the ISO 8211 sibling of DatasetGmlMatcher: the
.000 extension is shared by legacy S-57, S-101, and S-401 (inland
ENC), so the extension alone cannot route the file.
Matchers must be mutually exclusive: S-57 claims the files carrying
the S-57-only DSPM field, while the S-100 products claim their own
declared PRSP product identifier. At most one matcher claims any
valid dataset, so the result does not depend on the order registrations are
enumerated (the registry is unordered).
public delegate bool DatasetIso8211Matcher(Iso8211RootInfo root)
Parameters
rootIso8211RootInfoA cheap, parsed view of the dataset's ISO 8211 envelope.
Returns
- bool
- Decides, from the envelope of an ISO 8211-encoded dataset, whether the file belongs to a particular product. Contributed per so an ISO 8211 product is recognized in the same place it is constructed, rather than in a central switch inside . The factory reads the envelope once (see ) and returns the spec of the first registered product whose matcher claims it. Returns true when the file belongs to the registering product. This is the ISO 8211 sibling of : the .000 extension is shared by legacy S-57, S-101, and S-401 (inland ENC), so the extension alone cannot route the file. Matchers must be mutually exclusive: S-57 claims the files carrying the S-57-only DSPM field, while the S-100 products claim their own declared PRSP product identifier. At most one matcher claims any valid dataset, so the result does not depend on the order registrations are enumerated (the registry is unordered).