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.
- clean_target_name
-
Method to take a general target name and clean it up so that it is suitable for writing in a JCMT source catalog. This routine is used by the catalog writing code but can also be used publically in order to make sure that a target name to be written to the catalogue is guaranteed to match that used in another location (e.g. when writing an a document to accompany the catalogue which refers to targets within it).
The source name can be truncated.
$cleaned = Astro::Catalog::IO::JCMT->clean_target_name( $dirty );
Will return undef if the argument is not defined.
Punctuation such as "," and ";" are replaced with underscores. ".", "()" and "+-" are allowed.
- _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.
If the environment variable ASTRO_CATALOG_JCMT is defined (and exists) this will be used as the default.
- _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 anAstro::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:
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>