You are here: The SDK Base Classes > Base Classes

## Base Classes

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.