845 #define SPCLEN (sizeof(struct spcprm)/sizeof(int))
858 int spcx2s(
struct spcprm *spc,
int nx,
int sx,
int sspec,
859 const double x[],
double spec[],
int stat[]);
861 int spcs2x(
struct spcprm *spc,
int nspec,
int sspec,
int sx,
862 const double spec[],
double x[],
int stat[]);
864 int spctype(
const char ctype[9],
char stype[],
char scode[],
char sname[],
865 char units[],
char *ptype,
char *xtype,
int *restreq,
868 int spcspxe(
const char ctypeS[9],
double crvalS,
double restfrq,
869 double restwav,
char *ptype,
char *xtype,
int *restreq,
870 double *crvalX,
double *dXdS,
struct wcserr **err);
872 int spcxpse(
const char ctypeS[9],
double crvalX,
double restfrq,
873 double restwav,
char *ptype,
char *xtype,
int *restreq,
874 double *crvalS,
double *dSdX,
struct wcserr **err);
876 int spctrne(
const char ctypeS1[9],
double crvalS1,
double cdeltS1,
877 double restfrq,
double restwav,
char ctypeS2[9],
double *crvalS2,
878 double *cdeltS2,
struct wcserr **err);
880 int spcaips(
const char ctypeA[9],
int velref,
char ctype[9],
char specsys[9]);
884 #define spcini_errmsg spc_errmsg
885 #define spcprt_errmsg spc_errmsg
886 #define spcset_errmsg spc_errmsg
887 #define spcx2s_errmsg spc_errmsg
888 #define spcs2x_errmsg spc_errmsg
890 int spctyp(
const char ctype[9],
char stype[],
char scode[],
char sname[],
891 char units[],
char *ptype,
char *xtype,
int *restreq);
892 int spcspx(
const char ctypeS[9],
double crvalS,
double restfrq,
893 double restwav,
char *ptype,
char *xtype,
int *restreq,
894 double *crvalX,
double *dXdS);
895 int spcxps(
const char ctypeS[9],
double crvalX,
double restfrq,
896 double restwav,
char *ptype,
char *xtype,
int *restreq,
897 double *crvalS,
double *dSdX);
898 int spctrn(
const char ctypeS1[9],
double crvalS1,
double cdeltS1,
899 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:825
double crval
Definition: spc.h:804
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:819
#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:794
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:805
spc_errmsg_enum
Definition: spc.h:783
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:835
char code[4]
Definition: spc.h:802
char type[8]
Definition: spc.h:801
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:806
void * padding2
Definition: spc.h:834
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:797
int(* spxP2X)(SPX_ARGS)
Definition: spc.h:840
double pv[7]
Definition: spc.h:808
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:826
int spcperr(const struct spcprm *spc, const char *prefix)
Print error messages from a spcprm struct.
struct wcserr * err
Definition: spc.h:830
int(* spxP2S)(SPX_ARGS)
Definition: spc.h:836
int spcset(struct spcprm *spc)
Setup routine for the spcprm struct.
int(* spxS2P)(SPX_ARGS)
Definition: spc.h:839