PRO cafe_export_sav, env, filename, group, $ xvar,yvar,errvar, $ help=help, shorthelp=shorthelp ;+ ; NAME: ; export_sav ; ; PURPOSE: ; Write out data to IDL save file. ; ; CATEGORY: ; cafe ; ; SUBCATEGORY: ; data ; ; DATA FORMAT: ; Save x/y/error data into IDL save file. ; Parameter should be given or the variable names X/Y/ERROR ; are used. ; ; PARAMETER: ; X - The variable name of the X data. Default: "X". ; Y - The variable name of the Y data. Default: "Y". ; ERR - The variable name of the error data (if ; existing). Default: "ERROR" ; ; ; SIDE EFFECTS: ; Writes all subgroup data to IDL save file. ; ; EXAMPLE: ; ; > export, test.sav[time,rate,error]:4, ; -> writes all data (all subgroups) of group 4 into ; IDL save file test.sav with variable names time (x), ; rate(y) and error (err). ; ; HISTORY: ; $Id: cafe_export_sav.pro,v 1.3 2005/02/16 13:32:08 goehler Exp $ ; ;- ; ; $Log: cafe_export_sav.pro,v $ ; Revision 1.3 2005/02/16 13:32:08 goehler ; replaced parameter passing with a simpler approach using cafequotestr ; ; Revision 1.2 2003/05/23 21:22:13 goehler ; fix: quote filename string properly for non-error case also ; ; Revision 1.1 2003/05/23 19:21:22 goehler ; export type to save into IDL file ; ; ; ; ; ;; command name of this source (needed for automatic help) name="export_sav" ;; ------------------------------------------------------------ ;; HELP ;; ------------------------------------------------------------ ;; if help given -> print the specification above (from this file) IF keyword_set(help) THEN BEGIN cafe_help,env, name return ENDIF ;; ------------------------------------------------------------ ;; SHORT HELP ;; ------------------------------------------------------------ IF keyword_set(shorthelp) THEN BEGIN print, "export - IDL save export type" return ENDIF ;; ------------------------------------------------------------ ;; EXTRACT DATA ;; ------------------------------------------------------------ cafeextract,env,x,y,error,"*","*",group ;; ------------------------------------------------------------ ;; BUILD VARIABLES ;; ------------------------------------------------------------ ;; assign names: IF n_elements(xvar) EQ 0 THEN XVAR="X" IF n_elements(yvar) EQ 0 THEN YVAR="Y" IF n_elements(errvar) EQ 0 THEN ERRVAR="ERROR" ;; define variables: IF NOT execute(XVAR+"=x") THEN $ cafereport,env,"Error:"+!ERR_STRING IF NOT execute(YVAR+"=y") THEN $ cafereport,env,"Error:"+!ERR_STRING ;; error exists -> save it: IF n_elements(error) NE 0 THEN BEGIN IF NOT execute(ERRVAR+"=error") THEN $ cafereport,env,"Error:"+!ERR_STRING IF NOT execute("save,"+XVAR+","+YVAR+","+ERRVAR+",filename='"+filename+"'") THEN $ cafereport,env,"Error: "+!ERR_STRING ENDIF ELSE BEGIN IF NOT execute("save,"+XVAR+","+YVAR+",filename='"+filename+"'") THEN $ cafereport,env,"Error: "+!ERR_STRING ENDELSE RETURN END