Index: /trunk/PS-IPP-Config/lib/PS/IPP/Config.pm
===================================================================
--- /trunk/PS-IPP-Config/lib/PS/IPP/Config.pm	(revision 13166)
+++ /trunk/PS-IPP-Config/lib/PS/IPP/Config.pm	(revision 13167)
@@ -1,5 +1,5 @@
 # Copyright (c) 2006  Paul Price, Joshua Hoblitt
 #
-# $Id: Config.pm,v 1.36 2007-04-17 01:25:44 eugene Exp $
+# $Id: Config.pm,v 1.37 2007-05-03 01:17:40 price Exp $
 
 package PS::IPP::Config;
@@ -420,4 +420,40 @@
 }   
 
+# Return hash of tessellations, from TESSELLATIONS within the camera configuration
+sub tessellations
+{
+    my $self = shift;		# Configuration object
+
+    unless (defined $self) {
+	carp "Programming error";
+	exit($PS_EXIT_PROG_ERROR);
+    }
+
+    my $camera = $self->{camera}; # Camera configuration
+    unless (defined $camera) {
+	carp "Camera has not yet been defined.\n";
+	exit($PS_EXIT_PROG_ERROR);
+    }
+
+    my $tessellations = _mdLookupMD($camera, 'TESSELLATIONS'); # Tessellations
+    unless (defined $tessellations) {
+	carp "Can't find TESSELLATIONS in camera configuration.\n";
+	exit($PS_EXIT_CONFIG_ERROR);
+    }
+
+    my %tessellations;		# Tessellations hash to return
+    foreach my $tess ( @$tessellations ) {
+	unless ($tess->{type} eq "STR") {
+	    carp "Type for " . $tess->{name} . " within TESSELLATIONS in camera config is not STR.\n";
+	    next;
+	}
+
+	$tessellations{$tess->{name}} = $tess->{value};
+    }
+
+    return \%tessellations;
+}
+
+
 # Return the DVO.CAMERADIR in the camera configuration
 sub dvo_cameradir
