Module java.desktop
Package javax.imageio.plugins.tiff

# Class TIFFTagSet

java.lang.Object
javax.imageio.plugins.tiff.TIFFTagSet

Direct Known Subclasses:
  `BaselineTIFFTagSet`, `ExifGPSTagSet`, `ExifInteroperabilityTagSet`, `ExifParentTIFFTagSet`, `ExifTIFFTagSet`, `FaxTIFFTagSet`, `GeoTIFFTagSet`

public class TIFFTagSet extends Object
A class representing a set of TIFF tags. Each tag in the set must have a unique number (this is a limitation of the TIFF specification itself).

This class and its subclasses are responsible for mapping between raw tag numbers and `TIFFTag` objects, which contain additional information about each tag, such as the tag's name, legal data types, and mnemonic names for some or all of its data values.

Since:
  9
See Also:
  - `TIFFTag`

## Constructor Summary

Constructors
Constructor
Description
`TIFFTagSet(List<TIFFTag> tags)`
Constructs a `TIFFTagSet`, given a `List` of `TIFFTag` objects.

## Method Summary

Modifier and Type
Method
Description
`TIFFTag`
`getTag(int tagNumber)`
Returns the `TIFFTag` from this set that is associated with the given tag number, or `null` if no tag exists for that number.
`TIFFTag`
`getTag(String tagName)`
Returns the `TIFFTag` having the given tag name, or `null` if the named tag does not belong to this tag set.
`SortedSet<String>`
`getTagNames()`
Retrieves an unmodifiable lexicographically increasing set of tag names.
`SortedSet<Integer>`
`getTagNumbers()`
Retrieves an unmodifiable numerically increasing set of tag numbers.

### Methods declared in class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Constructor Details

### TIFFTagSet

public TIFFTagSet(List<TIFFTag> tags)
Constructs a `TIFFTagSet`, given a `List` of `TIFFTag` objects.

Parameters:
  `tags` - a `List` object containing `TIFFTag` objects to be added to this tag set.
Throws:
  `IllegalArgumentException` - if `tags` is `null`, or contains objects that are not instances of the `TIFFTag` class.

## Method Details

### getTag

public TIFFTag getTag(int tagNumber)
Returns the `TIFFTag` from this set that is associated with the given tag number, or `null` if no tag exists for that number.

Parameters:
  `tagNumber` - the number of the tag to be retrieved.
Returns:
  the numbered `TIFFTag`, or `null`.

### getTag

public TIFFTag getTag(String tagName)
Returns the `TIFFTag` having the given tag name, or `null` if the named tag does not belong to this tag set.

Parameters:
  `tagName` - the name of the tag to be retrieved, as a `String`.
Returns:
  the named `TIFFTag`, or `null`.
Throws:
  `IllegalArgumentException` - if `tagName` is `null`.

### getTagNumbers

public SortedSet<Integer> getTagNumbers()
Retrieves an unmodifiable numerically increasing set of tag numbers.

The returned object is unmodifiable and contains the tag numbers of all `TIFFTag`s in this `TIFFTagSet` sorted into ascending order according to `Comparable.compareTo(Object)`.

Returns:
  All tag numbers in this set.

### getTagNames

public SortedSet<String> getTagNames()
Retrieves an unmodifiable lexicographically increasing set of tag names.

The returned object is unmodifiable and contains the tag names of all `TIFFTag`s in this `TIFFTagSet` sorted into ascending order according to `Comparable.compareTo(Object)`.

Returns:
  All tag names in this set.