Guidelines for PIA programmers: (cg, July 7,1997) =============================== It is our intention to add routines to the PIA package, which are written by PIA users. In general, the idea is to distribute a PIA associated library together with the package, instead of integrating the user written routines. Integration within the GUI would only happen in case that we see a large convenience in doing so. To facilitate the use of such routines by other PIA users, we recommend to follow certain documentation rules. Doing so, a help for the routines will be available via the normal "old" IDL help system ('?' for IDL3.6, 'widget_olh' for >= IDL4.0) under the category 'PIA_contrib'. Our guidelines are based on the IDL documentation rules. At the top of the files please place a header like this: ;+ ; NAME: ; MUSTER_ROUTINE ; ; PURPOSE: ; Widget routine for graphical establishment of certain things. ; ; CATEGORY: ; PIA - contribution ; ; CALLING SEQUENCE: ; muster_routine, tmpdata, outcoming, pixel=pixel ; ; INPUT PARAMETERS: ; TMPDATA : Structure containing the SCP data to be processed ; ; OPTIONAL KEYWORD : ; PIXEL : indicating the detector pixel to start with ; ; OUTPUT: ; outcoming: hopefully something which helps ; ; RESTRICTIONS: ; tmpdata must be a valid phtscp temporary data structure ; ; PROCEDURES USED: ; Common Block(s) or @ procedure(s): ; colour_indices ; pia_dspchz_cmn ; PIA Procedure(s): ; pia_disp_print_file ; pia_graph_extract ; pia_xplot ; ; USE EXAMPLE: ; ; IDL> @pia_on_line ;get all commons ; IDL> PIA_LOAD_ISCP, phtscp(3), tmpdata ;extract meas. ; IDL> muster_routine, tmpdata, outcoming, pixel=2 ;run routine ; IDL> plot, outcoming ;see product ; ; MODIFICATION HISTORY: ; Written by: Y.O.U.R. Name (Institute) July 1997 ;- Please do not forget the ;+ and the ;- combinations at top and bottom of the header. They indicate begin and end of header for the help system to be built. Since the source of the routines are going to be distributed it would be of advantage for everyone (also for us in case of intending to integrate it into PIA) that they are good internally documented. If you use common blocks for passing data among different routines please put the common blocks in extra files and include them in the routines using the '@' sign. Please check that the name of your routine is not duplicating an already existing in IDL, PIA or astronomical library. Avoid names like Xplot, Xprint, or similars.