853 #define SPCLEN (sizeof(struct spcprm)/sizeof(int)) 866 int spcx2s(
struct spcprm *spc,
int nx,
int sx,
int sspec,
867 const double x[],
double spec[],
int stat[]);
869 int spcs2x(
struct spcprm *spc,
int nspec,
int sspec,
int sx,
870 const double spec[],
double x[],
int stat[]);
872 int spctype(
const char ctype[9],
char stype[],
char scode[],
char sname[],
873 char units[],
char *ptype,
char *xtype,
int *restreq,
876 int spcspxe(
const char ctypeS[9],
double crvalS,
double restfrq,
877 double restwav,
char *ptype,
char *xtype,
int *restreq,
878 double *crvalX,
double *dXdS,
struct wcserr **err);
880 int spcxpse(
const char ctypeS[9],
double crvalX,
double restfrq,
881 double restwav,
char *ptype,
char *xtype,
int *restreq,
882 double *crvalS,
double *dSdX,
struct wcserr **err);
884 int spctrne(
const char ctypeS1[9],
double crvalS1,
double cdeltS1,
885 double restfrq,
double restwav,
char ctypeS2[9],
double *crvalS2,
886 double *cdeltS2,
struct wcserr **err);
888 int spcaips(
const char ctypeA[9],
int velref,
char ctype[9],
char specsys[9]);
892 #define spcini_errmsg spc_errmsg 893 #define spcprt_errmsg spc_errmsg 894 #define spcset_errmsg spc_errmsg 895 #define spcx2s_errmsg spc_errmsg 896 #define spcs2x_errmsg spc_errmsg 898 int spctyp(
const char ctype[9],
char stype[],
char scode[],
char sname[],
899 char units[],
char *ptype,
char *xtype,
int *restreq);
900 int spcspx(
const char ctypeS[9],
double crvalS,
double restfrq,
901 double restwav,
char *ptype,
char *xtype,
int *restreq,
902 double *crvalX,
double *dXdS);
903 int spcxps(
const char ctypeS[9],
double crvalX,
double restfrq,
904 double restwav,
char *ptype,
char *xtype,
int *restreq,
905 double *crvalS,
double *dSdX);
906 int spctrn(
const char ctypeS1[9],
double crvalS1,
double cdeltS1,
907 double restfrq,
double restwav,
char ctypeS2[9],
double *crvalS2,
int spcprt(const struct spcprm *spc)
Print routine for the spcprm struct.
int spcxpse(const char ctypeS[9], double crvalX, double restfrq, double restwav, char *ptype, char *xtype, int *restreq, double *crvalS, double *dSdX, struct wcserr **err)
Spectral keyword synthesis.
int isGrism
Definition: spc.h:833
double crval
Definition: spc.h:812
int spcs2x(struct spcprm *spc, int nspec, int sspec, int sx, const double spec[], double x[], int stat[])
Transform spectral coordinates.
Error message handling.
Definition: wcserr.h:225
int spcfree(struct spcprm *spc)
Destructor for the spcprm struct.
double w[6]
Definition: spc.h:827
#define SPX_ARGS
For use in declaring spectral conversion function prototypes.
Definition: spx.h:543
int spcspxe(const char ctypeS[9], double crvalS, double restfrq, double restwav, char *ptype, char *xtype, int *restreq, double *crvalX, double *dXdS, struct wcserr **err)
Spectral keyword analysis.
Spectral transformation parameters.
Definition: spc.h:802
int spcspx(const char ctypeS[9], double crvalS, double restfrq, double restwav, char *ptype, char *xtype, int *restreq, double *crvalX, double *dXdS)
double restfrq
Definition: spc.h:813
spc_errmsg_enum
Definition: spc.h:791
int spctype(const char ctype[9], char stype[], char scode[], char sname[], char units[], char *ptype, char *xtype, int *restreq, struct wcserr **err)
Spectral CTYPEia keyword analysis.
int spcxps(const char ctypeS[9], double crvalX, double restfrq, double restwav, char *ptype, char *xtype, int *restreq, double *crvalS, double *dSdX)
int(* spxX2P)(SPX_ARGS)
Definition: spc.h:843
char code[4]
Definition: spc.h:810
char type[8]
Definition: spc.h:809
int spcini(struct spcprm *spc)
Default constructor for the spcprm struct.
int spcaips(const char ctypeA[9], int velref, char ctype[9], char specsys[9])
Translate AIPS-convention spectral keywords.
double restwav
Definition: spc.h:814
void * padding2
Definition: spc.h:842
int spctrne(const char ctypeS1[9], double crvalS1, double cdeltS1, double restfrq, double restwav, char ctypeS2[9], double *crvalS2, double *cdeltS2, struct wcserr **err)
Spectral keyword translation.
int spctyp(const char ctype[9], char stype[], char scode[], char sname[], char units[], char *ptype, char *xtype, int *restreq)
const char * spc_errmsg[]
Status return messages.
int spcx2s(struct spcprm *spc, int nx, int sx, int sspec, const double x[], double spec[], int stat[])
Transform to spectral coordinates.
int flag
Definition: spc.h:805
int(* spxP2X)(SPX_ARGS)
Definition: spc.h:848
double pv[7]
Definition: spc.h:816
int spctrn(const char ctypeS1[9], double crvalS1, double cdeltS1, double restfrq, double restwav, char ctypeS2[9], double *crvalS2, double *cdeltS2)
int padding1
Definition: spc.h:834
int spcperr(const struct spcprm *spc, const char *prefix)
Print error messages from a spcprm struct.
struct wcserr * err
Definition: spc.h:838
int(* spxP2S)(SPX_ARGS)
Definition: spc.h:844
int spcset(struct spcprm *spc)
Setup routine for the spcprm struct.
int(* spxS2P)(SPX_ARGS)
Definition: spc.h:847