NAME

Astro::Catalog::IO::JCMT - JCMT catalogue I/O for Astro::Catalog

SYNOPSIS

$cat = Astro::Catalog::IO::JCMT->_read_catalog( \@lines );
$arrref = Astro::Catalog::IO::JCMT->_write_catalog( $cat, %options );
$filename = Astro::Catalog::IO::JCMT->_default_file();

DESCRIPTION

This class provides read and write methods for catalogues in the JCMT pointing catalogue format. The methods are not public and should, in general, only be called from the Astro::Catalog write_catalog and read_catalog methods.

_default_file

Returns the location of the default JCMT pointing catalogue at the JCMT itself. This is purely for convenience of the caller when they are at the JCMT and wish to use the default catalogue without having to know explicitly where it is.

$filename = Astro::Catalog::IO::JCMT->_default_file();

Returns empty list/undef if the file is not available.

_read_catalog

Parses the catalogue lines and returns a new Astro::Catalog object containing the catalog entries.

$cat = Astro::Catalog::IO::JCMT->_read_catalog( \@lines, %options );

Supported options (with defaults) are:

telescope => Name of telescope to associate with each coordinate entry
             (defaults to JCMT). If the telescope option is specified
             but is undef or empty string, no telescope is used.

incplanets => Append planets to catalogue entries (default is true)
_write_catalog

Write the catalog to an array and return it. Returning a reference to an array provides more flexibility to the caller.

$ref = Astro::Catalog::IO::JCMT->_write_catalog( $cat );

Spaces are removed from source names. The contents of the catalog are sanity checked.

_parse_line

Parse a line from a JCMT format catalogue and return a corresponding Astro::Catalog::Star object. Returns empty list if the line can not be parsed or refers to a comment line (so that map can be used in the caller).

$star = Astro::Catalog::IO::JCMT->_parse_line( $line, $tel );

where $line is the line to be parsed and (optional) $tel is an Astro::Telescope object to be associated with the coordinate objects.

The line is parsed using a pattern match.

NOTES

Coordinates are stored as Astro::Coords objects inside Astro::Catalog::Star objects.

GLOBAL VARIABLES

The following global variables can be modified to control the state of the module:

$DEBUG

Controls debugging messages. Default state is false.

CONSTANTS

The following constants are available for querying:

MAX_SRC_LENGTH

The maximum length of sourcenames writable to a JCMT source catalogue.

COPYRIGHT

Copyright (C) 1999-2003 Particle Physics and Astronomy Research Council. All Rights Reserved.

AUTHORS

Tim Jenness <tjenness@cpan.org>