A number of lightweight classes are used to represent primitive objects in support of the imaging framework.
The LTISample
class represents a single sample of a pixel; the properties of a sample include datatype, color, and an optional value. The LTIPixel
class represents a set of samples; the properties of a pixel include the samples themselves and a colorspace. The LTIPixelLookupTable
class is used to represent the concept of a set of pixels in a color lookup table.
The LTIGeoCoord
class represents simple geographic position information, analogous to the conventional AUX files or world files used in many GIS systems. The properties of this class include the projection system (WKT), the upper-left x- and y-position, the x- and y-resolution, and the two rotation terms. Every LTIImage
has associated LTIGeoCoord
information.
The SDK uses delegates (see delegates in Glossary) as a means of proving the functionality of callback functions in a more natural C++ style. The two most common delegate classes, LTIInterruptDelegate
and LTIProgressDelegate
, provide mechanisms for applications performing (potentially long-running) read() operations to make out-of-band requests to abort the operation and to receive out-of-band notifications of percent-complete. Examples of delegate usage can be found in the Reference Manual.
Finally, the LTIUtils
class contains a number of static methods generally useful for working with the SDK. These include conversion between dynamic range representations, conversion between scale/magnification representations, colorspace information, SDK version information, etc.