ImageGear for C and C++ on Windows v19.3 - Updated
Work with Tags
User Guide > How to Work with... > Common Operations > Scanning > ISIS Scanning > Work with Tags

All parameters that drivers use are set and retrieved by using tags. A tag is a data storage area that has a specific, predefined purpose or definition. Tags are used within ISIS both to describe data and to control the behavior of drivers. Each ISIS tag that a driver implements has a current value, a default value, a set of legal values, and perhaps one or more saved values.

As you work with tags, keep in mind that some tags are critical and required by all drivers; other tags are optional and may or may not be available in some drivers. When a tag is not available in a driver, the driver returns the error IG_ISIS_ERR_BADTAG indicating that the tag is not available, and ignores the settings that were carried by that tag. The string constant defined for IG_ISIS_ERR_BADTAG is "Tag not found." It is up to the application to determine whether or not this error message is actually an error or just a driver responding that it does not contain that tag. In many cases, it is safe, and probably desirable, for the application to continue.

Another important point about setting tags: tag values are set for all drivers in a pipe instantaneously. The parameters carried by tags are not stored for later implementation by a driver. A tag must take effect when it is received by a driver (assuming the driver contains that tag), and the driver (in most cases) then forwards the tag to other drivers in the ISIS pipe. If the driver is not ready to accept the parameter that the tag is carrying, the parameter will not be set. For example, if you set IG_ISIS_TAG_OUTPUTNAME on the head driver of a pipe before the pipe is linked with a file writing driver, the filename to be used when saving the file will not be set when the driver is eventually linked into the pipe.

This section provides information in the following sections: