848 #define SPCLEN (sizeof(struct spcprm)/sizeof(int)) 861 int spcx2s(
struct spcprm *spc,
int nx,
int sx,
int sspec,
862 const double x[],
double spec[],
int stat[]);
864 int spcs2x(
struct spcprm *spc,
int nspec,
int sspec,
int sx,
865 const double spec[],
double x[],
int stat[]);
867 int spctype(
const char ctype[9],
char stype[],
char scode[],
char sname[],
868 char units[],
char *ptype,
char *xtype,
int *restreq,
871 int spcspxe(
const char ctypeS[9],
double crvalS,
double restfrq,
872 double restwav,
char *ptype,
char *xtype,
int *restreq,
873 double *crvalX,
double *dXdS,
struct wcserr **err);
875 int spcxpse(
const char ctypeS[9],
double crvalX,
double restfrq,
876 double restwav,
char *ptype,
char *xtype,
int *restreq,
877 double *crvalS,
double *dSdX,
struct wcserr **err);
879 int spctrne(
const char ctypeS1[9],
double crvalS1,
double cdeltS1,
880 double restfrq,
double restwav,
char ctypeS2[9],
double *crvalS2,
881 double *cdeltS2,
struct wcserr **err);
883 int spcaips(
const char ctypeA[9],
int velref,
char ctype[9],
char specsys[9]);
887 #define spcini_errmsg spc_errmsg 888 #define spcprt_errmsg spc_errmsg 889 #define spcset_errmsg spc_errmsg 890 #define spcx2s_errmsg spc_errmsg 891 #define spcs2x_errmsg spc_errmsg 893 int spctyp(
const char ctype[9],
char stype[],
char scode[],
char sname[],
894 char units[],
char *ptype,
char *xtype,
int *restreq);
895 int spcspx(
const char ctypeS[9],
double crvalS,
double restfrq,
896 double restwav,
char *ptype,
char *xtype,
int *restreq,
897 double *crvalX,
double *dXdS);
898 int spcxps(
const char ctypeS[9],
double crvalX,
double restfrq,
899 double restwav,
char *ptype,
char *xtype,
int *restreq,
900 double *crvalS,
double *dSdX);
901 int spctrn(
const char ctypeS1[9],
double crvalS1,
double cdeltS1,
902 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:828
double crval
Definition: spc.h:807
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:822
#define SPX_ARGS
For use in declaring spectral conversion function prototypes.
Definition: spx.h:510
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:797
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:808
spc_errmsg_enum
Definition: spc.h:786
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:838
char code[4]
Definition: spc.h:805
char type[8]
Definition: spc.h:804
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:809
void * padding2
Definition: spc.h:837
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:800
int(* spxP2X)(SPX_ARGS)
Definition: spc.h:843
double pv[7]
Definition: spc.h:811
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:829
int spcperr(const struct spcprm *spc, const char *prefix)
Print error messages from a spcprm struct.
struct wcserr * err
Definition: spc.h:833
int(* spxP2S)(SPX_ARGS)
Definition: spc.h:839
int spcset(struct spcprm *spc)
Setup routine for the spcprm struct.
int(* spxS2P)(SPX_ARGS)
Definition: spc.h:842