| Name | Description |
| Analysis::Focus | Best focus point analysis |
| Analysis::RayFan | RayFan diagram analysis |
| Analysis::Spot | Spot diagram analysis |
| Curve::Array | Enable definition of curve as square and hexagonal array of an other curve |
| Curve::Base | Base class for surface curvature models |
| Curve::Composer | Enable definition of curve as composition of other curves |
| Curve::Composer::Attributes | Curve::Composer base curve attributes. |
| Curve::Conic | General purpose conic curve model |
| Curve::Flat | Flat curve |
| Curve::Foucault | Define surface curve from Foucault test data. |
| Curve::Grid | Define surface curve from interpolated grid data set. |
| Curve::Parabola | Parabola curve model |
| Curve::Polynomial | Even and odd polynomial curve implementation. |
| Curve::Sphere | Spherical curve model |
| Curve::Spline | Rotationally symmetric spline curve implementation |
| Curve::Zernike | Define surface curve from Zernike polynomials |
| Curve::ConicBase | Base class for conic family of curves |
| Curve::CurveRoc | Base class for curves with a radius of curvature |
| Curve::Rotational | Base class for rotationally symmetric curves. |
| Data::DiscreteSet | 1d numerical data set with interpolation |
| Data::Grid | 2d numerical data set with interpolation. |
| Data::Plot | Data plots container |
| Data::PlotData | Data set plot |
| Data::SampleSet | 1d fixed interval numerical data set with interpolation |
| Data::Set | Base class for numerical data sets. |
| Data::Set1d | Base class for 1d y = f(x) numerical data set |
| Design::Telescope::Cassegrain | Cassegrain telescopes model |
| Design::Telescope::Newton | Newton telescope optical design |
| Design::Telescope::Telescope | Base class for telescope optical designs |
| Error | Base class used for Goptical exceptions. |
| Io::ImportOslo | Oslo files loader |
| Io::ImportZemax | Zemax files loader (experimental) |
| Io::Renderer | Base class for rendering drivers |
| Io::RendererDxf | DXF rendering driver base (experimental) |
| Io::RendererGd | GD rendering driver |
| Io::RendererOpengl | OpenGL rendering driver |
| Io::RendererPlplot | Plplot rendering driver |
| Io::RendererSvg | SVG file rendering driver |
| Io::RendererX11 | X11 rendering driver |
| Io::RendererX3d | X3d rendering driver (experimental) |
| Io::Export | File export class interface |
| Io::Import | File import class interface |
| Io::RendererAxes | RendererAxes rendering descriptor |
| Io::RendererViewport | Base class for viewport based rendering drivers |
| Io::Rgb | RGB color descriptor |
| Light::Ray | Describe a ray of light |
| Light::SpectralLine | Describe a spectral line |
| Material::Abbe | Abbe model for optical glass material |
| Material::Air | Air optical material model |
| Material::Base | Optical material base class. |
| Material::Catalog | Hold a glass material catalog |
| Material::Conrady | Conrady model for optical glass material |
| Material::DispersionTable | Interpolated refractive index data set model |
| Material::Herzberger | Herzberger model for optical glass material |
| Material::Metal | Metal optical material model. |
| Material::Mil | Mil glass code material model |
| Material::Mirror | Simple mirror optical material model. |
| Material::Schott | Schott model for optical glass material |
| Material::Sellmeier | Sellmeier model for optical glass material |
| Material::SellmeierMod | Modified sellmeier model for optical glass material |
| Material::Vacuum | Vacuum optical material model |
| Material::Dielectric | Dielectric optical material model base class. |
| Material::Proxy | Optical material proxy class. |
| Material::Solid | Solid optical material base class. |
| Math::Matrix | NxN square matrix class. |
| Math::Quaternion | Quaternion class. |
| Math::Transform<3> | 3d linear and affine transformation class. |
| Math::Transform<2> | 2d linear and affine transformation class. |
| Math::Triangle | N dimension triangle class |
| Math::Triangle<3> | 3d triangle class |
| Math::Vector | N dimension vector class |
| Math::Vector<3, T> | 3d vector class |
| Math::Vector<2, T> | 2d vector class |
| Math::VectorPair | Vector pair class |
| Math::VectorPair<2> | Vector pair class |
| Math::VectorPair<3> | Vector pair class |
| Shape::Base | Base class for contour 2d shapes |
| Shape::Composer | Enable definition of shape as composition ot other shapes (experimental) |
| Shape::Composer::Attributes | Enable definition of shape as composition ot other shapes (experimental) |
| Shape::Disk | Disk shape |
| Shape::Ellipse | Ellipse shape |
| Shape::EllipticalRing | Elliptical ring shape |
| Shape::Infinite | Borderless shape |
| Shape::Polygon | Polygon shape |
| Shape::Rectangle | Rectangle and square shape |
| Shape::RegularPolygon | Regular Polygon shape |
| Shape::Ring | Ring shape |
| Sys::Group | Optical elements group element |
| Sys::Image | Image plane optical element |
| Sys::Lens | Lens optical element |
| Sys::Mirror | Reflecting optical surface element |
| Sys::OpticalSurface | Optical surface element |
| Sys::SourcePoint | Point light source |
| Sys::SourceRays | Custom rays light source |
| Sys::System | Optical system |
| Sys::Container | Base class for System and Group |
| Sys::Element | Optical element base class |
| Sys::Source | Base class for light sources |
| Sys::Stop | Aperture stop element |
| Sys::Surface | Base class for surfaces |
| Trace::Distribution | Ray distribution pattern descriptor |
| Trace::Params | Light propagation parameters descriptor |
| Trace::Result | Store light propagation result |
| Trace::Sequence | Defines light propagation elemets order for sequential light propagation |
| Trace::Tracer | Light propagation algorithms |
| Trace::Ray | Propagated light ray class |