linked list of FITS keywords More...
#include <fits.h>
Public Member Functions | |
FitsKeywordList () | |
~FitsKeywordList () | |
FitsKeywordList (const FitsKeywordList &) | |
FitsKeywordList (ConstFitsKeywordList &) | |
FitsKeywordList & | operator= (const FitsKeywordList &) |
std::string | toString () const |
Convert the list to a string containing the 80-byte FITS headers. | |
void | del () |
delete the current keyword (the thing returned by curr()) from the list | |
void | mk (FITS::ReservedName k, Bool v, const char *c=0) |
Add (make) a reserved keyword with the given value and optional comment The comment will be truncated if necessary to fit the available space. | |
void | mk (FITS::ReservedName k, const char *v=0, const char *c=0) |
void | mk (FITS::ReservedName k, Int v, const char *c=0) |
void | mk (FITS::ReservedName k, long v, const char *c=0) |
void | mk (FITS::ReservedName k, double v, const char *c=0) |
void | mk (int n, FITS::ReservedName k, Bool v, const char *c=0) |
Add (make) an indexed reserved keyword with the given value and optional comment The comment will be truncated if necessary to fit the available space. | |
void | mk (int n, FITS::ReservedName k, const char *v, const char *c=0) |
void | mk (int n, FITS::ReservedName k, Int v, const char *c=0) |
void | mk (int n, FITS::ReservedName k, long v, const char *c=0) |
void | mk (int n, FITS::ReservedName k, double v, const char *c=0) |
void | mk (const char *n, Bool v, const char *c=0) |
Add (make) a user defined keyword with the given name, value and optional comment. | |
void | mk (const char *n, const char *v=0, const char *c=0) |
void | mk (const char *n, Int v, const char *c=0) |
void | mk (const char *n, long v, const char *c=0) |
void | mk (const char *n, float v, const char *c=0) |
void | mk (const char *n, double v, const char *c=0) |
void | mk (const char *n, Int r, Int i, const char *c=0) |
void | mk (const char *n, float r, float i, const char *c=0) |
void | mk (const char *n, double r, double i, const char *c=0) |
void | spaces (const char *n=0, const char *c=0) |
add a spaces line | |
void | comment (const char *n=0, const char *c=0) |
add a comment card | |
void | history (const char *c=0) |
add a history card | |
void | end () |
add the end card. | |
FitsKeyword * | operator() (int) |
Retrieve specific keywords -- these also set the current mark. | |
FitsKeyword * | operator() (const FITS::ReservedName &) |
return first and next non-indexed reserved keyword | |
FitsKeyword * | next (const FITS::ReservedName &) |
FitsKeyword * | operator() (const FITS::ReservedName &, int) |
return first and next indexed reserved keyword | |
FitsKeyword * | next (const FITS::ReservedName &, int) |
FitsKeyword * | operator() (const char *) |
return first and next user-defined keyword | |
FitsKeyword * | next (const char *) |
Bool | isempty () const |
void | first () |
void | last () |
FitsKeyword * | next () |
FitsKeyword * | prev () |
FitsKeyword * | curr () |
void | delete_all () |
int | rules (FitsKeyword &, FITSErrorHandler errhandler=FITSError::defaultHandler) |
int | rules (FITSErrorHandler errhandler=FITSError::defaultHandler) |
Bool | basic_rules () |
void | parse (const char *, int) |
For parsing a single string. | |
int | no_parse_errs () const |
const char * | parse_err (int) const |
void | insert (FitsKeyword &) |
Private Member Functions | |
FitsKeyword & | make (const char *nm, FITS::ValueType t, const void *v, const char *c) |
FitsKeyword & | make (FITS::ReservedName nm, FITS::ValueType t, const void *v, const char *c) |
FitsKeyword & | make (int ind, FITS::ReservedName nm, FITS::ValueType t, const void *v, const char *c) |
FitsKeyword & | makeErrKeyword (const char *name, FITS::ValueType type, const void *val, const char *errmsg) |
construct an error keyword - this happens when a name is invalid (NULL or more than 8 characters) or a string value is too long (more than 69 characters). | |
Private Attributes | |
FitsKeyword * | beg_ |
FitsKeyword * | end_ |
FitsKeyword * | pos |
int | total |
int | cursor |
FitsParse | card |
linked list of FITS keywords
A linked list of FITS keywords.
Definition at line 746 of file fits.h.
casacore::FitsKeywordList::~FitsKeywordList | ( | ) | [inline] |
Definition at line 881 of file fits.h.
References delete_all().
casacore::FitsKeywordList::FitsKeywordList | ( | const FitsKeywordList & | ) |
casacore::FitsKeywordList::FitsKeywordList | ( | ConstFitsKeywordList & | ) |
Bool casacore::FitsKeywordList::basic_rules | ( | ) |
void casacore::FitsKeywordList::comment | ( | const char * | n = 0 , |
|
const char * | c = 0 | |||
) | [inline] |
add a comment card
Definition at line 947 of file fits.h.
References casacore::FITS::COMMENT, insert(), make(), and casacore::FITS::NOVALUE.
Referenced by casacore::HeaderDataUnit::comment().
FitsKeyword * casacore::FitsKeywordList::curr | ( | ) | [inline] |
Definition at line 885 of file fits.h.
References pos.
Referenced by casacore::ConstFitsKeywordList::curr(), and casacore::HeaderDataUnit::currkw().
void casacore::FitsKeywordList::del | ( | ) |
delete the current keyword (the thing returned by curr()) from the list
void casacore::FitsKeywordList::delete_all | ( | ) |
Referenced by ~FitsKeywordList().
void casacore::FitsKeywordList::end | ( | ) | [inline] |
add the end card.
This must be at the end of the list.
Definition at line 953 of file fits.h.
References casacore::FITS::END, insert(), make(), and casacore::FITS::NOVALUE.
void casacore::FitsKeywordList::first | ( | ) | [inline] |
Definition at line 883 of file fits.h.
References beg_, cursor, and pos.
Referenced by casacore::ConstFitsKeywordList::first(), casacore::HeaderDataUnit::firstkw(), and operator()().
void casacore::FitsKeywordList::history | ( | const char * | c = 0 |
) | [inline] |
add a history card
Definition at line 951 of file fits.h.
References casacore::FITS::HISTORY, insert(), make(), and casacore::FITS::NOVALUE.
Referenced by casacore::HeaderDataUnit::history().
void casacore::FitsKeywordList::insert | ( | FitsKeyword & | ) |
Bool casacore::FitsKeywordList::isempty | ( | ) | const [inline] |
Definition at line 882 of file fits.h.
References casacore::False, total, and casacore::True.
Referenced by casacore::ConstFitsKeywordList::isempty().
void casacore::FitsKeywordList::last | ( | ) | [inline] |
Definition at line 884 of file fits.h.
References cursor, end_, pos, and total.
Referenced by casacore::ConstFitsKeywordList::last(), and casacore::HeaderDataUnit::lastkw().
FitsKeyword& casacore::FitsKeywordList::make | ( | int | ind, | |
FITS::ReservedName | nm, | |||
FITS::ValueType | t, | |||
const void * | v, | |||
const char * | c | |||
) | [private] |
FitsKeyword& casacore::FitsKeywordList::make | ( | FITS::ReservedName | nm, | |
FITS::ValueType | t, | |||
const void * | v, | |||
const char * | c | |||
) | [private] |
FitsKeyword& casacore::FitsKeywordList::make | ( | const char * | nm, | |
FITS::ValueType | t, | |||
const void * | v, | |||
const char * | c | |||
) | [private] |
FitsKeyword& casacore::FitsKeywordList::makeErrKeyword | ( | const char * | name, | |
FITS::ValueType | type, | |||
const void * | val, | |||
const char * | errmsg | |||
) | [private] |
construct an error keyword - this happens when a name is invalid (NULL or more than 8 characters) or a string value is too long (more than 69 characters).
It is the responsibility of the caller to the several mk functions to ensure that that doesn't happen. By the time it gets here, it is assumed that such problems are true errors. This is used by the private make functions.
void casacore::FitsKeywordList::mk | ( | const char * | n, | |
double | r, | |||
double | i, | |||
const char * | c = 0 | |||
) | [inline] |
Definition at line 939 of file fits.h.
References casacore::FITS::DCOMPLEX, insert(), and make().
void casacore::FitsKeywordList::mk | ( | const char * | n, | |
float | r, | |||
float | i, | |||
const char * | c = 0 | |||
) | [inline] |
Definition at line 937 of file fits.h.
References casacore::FITS::COMPLEX, insert(), and make().
Definition at line 934 of file fits.h.
References casacore::FITS::ICOMPLEX, insert(), and make().
void casacore::FitsKeywordList::mk | ( | const char * | n, | |
double | v, | |||
const char * | c = 0 | |||
) | [inline] |
Definition at line 932 of file fits.h.
References casacore::FITS::DOUBLE, insert(), and make().
void casacore::FitsKeywordList::mk | ( | const char * | n, | |
float | v, | |||
const char * | c = 0 | |||
) | [inline] |
Definition at line 930 of file fits.h.
References casacore::FITS::FLOAT, insert(), and make().
void casacore::FitsKeywordList::mk | ( | const char * | n, | |
long | v, | |||
const char * | c = 0 | |||
) | [inline] |
Definition at line 928 of file fits.h.
References insert(), casacore::FITS::LONG, and make().
void casacore::FitsKeywordList::mk | ( | const char * | n, | |
Int | v, | |||
const char * | c = 0 | |||
) | [inline] |
Definition at line 926 of file fits.h.
References insert(), casacore::FITS::LONG, and make().
void casacore::FitsKeywordList::mk | ( | const char * | n, | |
const char * | v = 0 , |
|||
const char * | c = 0 | |||
) | [inline] |
Definition at line 924 of file fits.h.
References insert(), make(), and casacore::FITS::STRING.
void casacore::FitsKeywordList::mk | ( | const char * | n, | |
Bool | v, | |||
const char * | c = 0 | |||
) | [inline] |
Add (make) a user defined keyword with the given name, value and optional comment.
FitsKeyword constructors for User-Defined keywords.
The comment will be truncated if necessary to fit the available space. The name must be no longer than 8 characters. Names longer than that will result in an ERROR keyword instead of the desired keyword. String values must no longer than 69 characters. String values longer than that will result in an ERROR keyword instead of the desired keyword.
Definition at line 922 of file fits.h.
References insert(), casacore::FITS::LOGICAL, and make().
void casacore::FitsKeywordList::mk | ( | int | n, | |
FITS::ReservedName | k, | |||
double | v, | |||
const char * | c = 0 | |||
) | [inline] |
Definition at line 919 of file fits.h.
References casacore::FITS::DOUBLE, insert(), and make().
void casacore::FitsKeywordList::mk | ( | int | n, | |
FITS::ReservedName | k, | |||
long | v, | |||
const char * | c = 0 | |||
) | [inline] |
Definition at line 917 of file fits.h.
References insert(), casacore::FITS::LONG, and make().
void casacore::FitsKeywordList::mk | ( | int | n, | |
FITS::ReservedName | k, | |||
Int | v, | |||
const char * | c = 0 | |||
) | [inline] |
Definition at line 915 of file fits.h.
References insert(), casacore::FITS::LONG, and make().
void casacore::FitsKeywordList::mk | ( | int | n, | |
FITS::ReservedName | k, | |||
const char * | v, | |||
const char * | c = 0 | |||
) | [inline] |
Definition at line 913 of file fits.h.
References insert(), make(), and casacore::FITS::STRING.
void casacore::FitsKeywordList::mk | ( | int | n, | |
FITS::ReservedName | k, | |||
Bool | v, | |||
const char * | c = 0 | |||
) | [inline] |
Add (make) an indexed reserved keyword with the given value and optional comment The comment will be truncated if necessary to fit the available space.
FitsKeyword constructors for indexed Reserved keywords.
String values must be less than 69 characters. String values longer than that will result in an ERROR keyword instead of the desired keyword.
Definition at line 910 of file fits.h.
References insert(), casacore::FITS::LOGICAL, and make().
void casacore::FitsKeywordList::mk | ( | FITS::ReservedName | k, | |
double | v, | |||
const char * | c = 0 | |||
) | [inline] |
Definition at line 907 of file fits.h.
References casacore::FITS::DOUBLE, insert(), and make().
void casacore::FitsKeywordList::mk | ( | FITS::ReservedName | k, | |
long | v, | |||
const char * | c = 0 | |||
) | [inline] |
Definition at line 905 of file fits.h.
References insert(), casacore::FITS::LONG, and make().
void casacore::FitsKeywordList::mk | ( | FITS::ReservedName | k, | |
Int | v, | |||
const char * | c = 0 | |||
) | [inline] |
Definition at line 903 of file fits.h.
References insert(), casacore::FITS::LONG, and make().
void casacore::FitsKeywordList::mk | ( | FITS::ReservedName | k, | |
const char * | v = 0 , |
|||
const char * | c = 0 | |||
) | [inline] |
Definition at line 901 of file fits.h.
References insert(), make(), and casacore::FITS::STRING.
void casacore::FitsKeywordList::mk | ( | FITS::ReservedName | k, | |
Bool | v, | |||
const char * | c = 0 | |||
) | [inline] |
Add (make) a reserved keyword with the given value and optional comment The comment will be truncated if necessary to fit the available space.
FitsKeyword constructors for non-indexed Reserved keywords.
String values must be less than 69 characters. String values longer than that will result in an ERROR keyword instead of the desired keyword.
Definition at line 899 of file fits.h.
References insert(), casacore::FITS::LOGICAL, and make().
Referenced by casacore::HeaderDataUnit::mk().
FitsKeyword* casacore::FitsKeywordList::next | ( | ) |
Referenced by operator()().
FitsKeyword* casacore::FitsKeywordList::next | ( | const char * | ) |
FitsKeyword* casacore::FitsKeywordList::next | ( | const FITS::ReservedName & | , | |
int | ||||
) |
FitsKeyword* casacore::FitsKeywordList::next | ( | const FITS::ReservedName & | ) |
Referenced by casacore::ConstFitsKeywordList::next(), and casacore::HeaderDataUnit::nextkw().
int casacore::FitsKeywordList::no_parse_errs | ( | ) | const [inline] |
Definition at line 894 of file fits.h.
References card, and casacore::FitsParse::no_errs().
FitsKeyword * casacore::FitsKeywordList::operator() | ( | const char * | w | ) | [inline] |
FitsKeyword * casacore::FitsKeywordList::operator() | ( | const FITS::ReservedName & | n, | |
int | ndx | |||
) | [inline] |
FitsKeyword * casacore::FitsKeywordList::operator() | ( | const FITS::ReservedName & | n | ) | [inline] |
FitsKeyword* casacore::FitsKeywordList::operator() | ( | int | ) |
Retrieve specific keywords -- these also set the current mark.
return the i-th keyword -- keyword numbering starts with 0
FitsKeywordList& casacore::FitsKeywordList::operator= | ( | const FitsKeywordList & | ) |
void casacore::FitsKeywordList::parse | ( | const char * | s, | |
int | l | |||
) | [inline] |
For parsing a single string.
Definition at line 892 of file fits.h.
References card, insert(), and casacore::FitsParse::parse().
const char * casacore::FitsKeywordList::parse_err | ( | int | n | ) | const [inline] |
Definition at line 895 of file fits.h.
References card, and casacore::FitsParse::err().
FitsKeyword* casacore::FitsKeywordList::prev | ( | ) |
Referenced by casacore::ConstFitsKeywordList::prev(), and casacore::HeaderDataUnit::prevkw().
int casacore::FitsKeywordList::rules | ( | FITSErrorHandler | errhandler = FITSError::defaultHandler |
) |
int casacore::FitsKeywordList::rules | ( | FitsKeyword & | , | |
FITSErrorHandler | errhandler = FITSError::defaultHandler | |||
) |
void casacore::FitsKeywordList::spaces | ( | const char * | n = 0 , |
|
const char * | c = 0 | |||
) | [inline] |
add a spaces line
Additional keyword constructors for commentary, etc.
Definition at line 943 of file fits.h.
References insert(), make(), casacore::FITS::NOVALUE, and casacore::FITS::SPACES.
Referenced by casacore::HeaderDataUnit::spaces().
std::string casacore::FitsKeywordList::toString | ( | ) | const |
Convert the list to a string containing the 80-byte FITS headers.
FitsKeyword* casacore::FitsKeywordList::beg_ [private] |
FitsParse casacore::FitsKeywordList::card [private] |
Definition at line 874 of file fits.h.
Referenced by no_parse_errs(), parse(), and parse_err().
int casacore::FitsKeywordList::cursor [private] |
FitsKeyword* casacore::FitsKeywordList::end_ [private] |
FitsKeyword* casacore::FitsKeywordList::pos [private] |
int casacore::FitsKeywordList::total [private] |