Index of RSL routines grouped by functionality.
Input
Radar *RSL_anyformat_to_radar(char
*infile [, char *callid_or_first_file]);
Radar *RSL_kwaj_to_radar(char *infile);
Radar *RSL_lassen_to_radar(char
*infile);
Radar *RSL_mcgill_to_radar(char
*infile);
Radar *RSL_nsig_to_radar(char *infile);
Radar *RSL_nsig2_to_radar(char *infile);
Radar *RSL_radtec_to_radar(char
*infile);
Radar *RSL_read_radar(char *infile);
Radar *RSL_toga_to_radar(char *infile);
Radar *RSL_uf_to_radar(char *infile);
Radar *RSL_uf_to_radar_fp(FILE *fp);
Radar *RSL_wsr88d_to_radar(char
*infile, char *callid_or_first_file);
Volume *RSL_read_volume(FILE *fp);
Sweep *RSL_read_sweep (FILE *fp);
Ray *RSL_read_ray (FILE *fp);
void RSL_read_these_sweeps(char
*sweep#, ..., NULL);
void RSL_select_fields(char *field_type,
..., NULL);
void RSL_set_kwaj_parameters(float
mds, float calibr_slope, float calibr_intercept);
void RSL_radar_verbose_off(void);
void RSL_radar_verbose_on(void);
void RSL_wsr88d_keep_short_refl(void);
Output
void RSL_radar_to_uf(Radar *r, char *outfile);
void RSL_radar_to_uf_fp(Radar *r, FILE
*fp);
void RSL_radar_to_uf_gzip(Radar *r,
char *outfile);
int RSL_write_histogram(Histogram
*histogram, char *outfile);
int RSL_write_ray(Ray *r, FILE *fp);
int RSL_write_sweep(Sweep *s, FILE *fp);
int RSL_write_volume(Volume *v, FILE *fp);
int RSL_write_histogram(Histogram
*histogram, char *outfile);
int RSL_write_radar(Radar *radar, char
*outfile);
int RSL_write_radar_fp(Radar *radar,
FILE *fp);
int RSL_write_radar_gzip(Radar *radar,
char *outfile);
void RSL_print_version(void);
Memory management
Radar *RSL_new_radar(int nvolumes);
Radar *RSL_prune_radar(Radar *radar);
Radar *RSL_sort_radar(Radar *r);
Volume *RSL_clear_volume(Volume *v);
Volume *RSL_copy_volume(Volume *v);
Volume *RSL_new_volume(int max_sweeps);
Volume *RSL_prune_volume(Volume *v);
Sweep *RSL_clear_sweep(Sweep *s);
Sweep *RSL_copy_sweep(Sweep *s);
Sweep *RSL_new_sweep(int max_rays);
Sweep *RSL_prune_sweep(Sweep *s);
Ray *RSL_clear_ray(Ray *r);
Ray *RSL_copy_ray(Ray *r);
Ray *RSL_new_ray(int max_bins);
Ray *RSL_prune_ray(Ray *ray);
Cappi *RSL_new_cappi(Sweep *sweep, float
height);
Carpi *RSL_new_carpi(int xdim, int ydim);
void RSL_free_cappi(Cappi *c);
void RSL_free_histogram(Histogram
*histogram);
void RSL_free_radar(Radar *r);
void RSL_free_ray(Ray *r);
void RSL_free_sweep(Sweep *s);
void RSL_free_volume(Volume *v);
Image generation
void RSL_bscan_ray(Ray *r, FILE *fp);
void RSL_bscan_sweep(Sweep *s, char *outfile);
void RSL_bscan_volume(Volume *v, char *basename);
void RSL_get_color_table(int icolor,
char buffer[256], int *ncolors);
void RSL_set_color_table(int icolor,
char buffer[256], int *ncolors);
void RSL_load_color_table(char
*infile, char buffer[256], int *ncolors);
void RSL_load_green_table(char
*infile);
void RSL_load_blue_table(char *infile);
void RSL_load_height_color_table();
void RSL_load_rainfall_color_table();
void RSL_load_red_table(char *infile);
void RSL_load_refl_color_table();
void RSL_load_sw_color_table();
void RSL_load_vel_color_table();
void RSL_load_zdr_color_table();
void RSL_rebin_velocity_ray(Ray *r);
void RSL_rebin_velocity_sweep(Sweep
*s);
void RSL_rebin_velocity_volume(Volume
*v);
void RSL_rebin_ray(Ray *r);
void RSL_rebin_sweep(Sweep *s);
void RSL_rebin_volume(Volume *v);
void RSL_sweep_to_gif(Sweep *s, char *outfile,
int xdim, int ydim, float range);
void RSL_sweep_to_pgm(Sweep *s, char *outfile,
int xdim, int ydim, float range);
void RSL_sweep_to_pict(Sweep *s, char *outfile,
int xdim, int ydim, float range);
void RSL_sweep_to_ppm(Sweep *s, char *outfile,
int xdim, int ydim, float range);
void RSL_volume_to_gif(Volume *v, char
*basename, int xdim, int ydim, float range);
void RSL_volume_to_pgm(Volume *v, char
*basename, int xdim, int ydim, float range);
void RSL_volume_to_pict(Volume *v, char
*basename, int xdim, int ydim, float range) ;
void RSL_volume_to_ppm(Volume *v, char
*basename, int xdim, int ydim, float range);
void RSL_write_gif(char *outfile, unsigned
char *image, int xdim, int ydim, char c_t able[256][3]);
void RSL_write_pict(char *outfile, unsigned
char *image, int xdim, int ydim, char c_ table[256][3]);
void RSL_write_pgm(char *outfile, unsigned
char *image, int xdim, int ydim);
void RSL_write_ppm(char *outfile, unsigned
char *image, int xdim, int ydim, char c_t able[256][3]);
unsigned char *RSL_sweep_to_cart(Sweep
*s, int xdim, int ydim, float range);
Get something from objects
Volume *RSL_get_volume(Radar *r, int type_wanted);
Volume *RSL_get_window_from_volume(Volume
*v, float min_range, float max_range, float low_azim, float hi_azim);
Volume *RSL_reverse_sweep_order(Volume *v);
Sweep *RSL_get_closest_sweep(Volume
*v,float sweep_angle,float limit);
Sweep *RSL_get_first_sweep_of_volume(Volume
*v);
Sweep *RSL_get_sweep(Volume *v, float
elev);
Sweep *RSL_get_window_from_sweep(Sweep *s,
float min_range, float max_range, float low_azim, float hi_azim);
Ray *RSL_get_closest_ray_from_sweep(Sweep
*s,float ray_angle,float limit);
Ray *RSL_get_first_ray_of_sweep(Sweep
*s);
Ray *RSL_get_first_ray_of_volume(Volume
*v);
Ray *RSL_get_next_ccwise_ray(Sweep
*s, Ray *ray);
Ray *RSL_get_next_cwise_ray(Sweep
*s, Ray *ray);
Ray *RSL_get_ray(Volume *v, float elev,
float azimuth);
Ray *RSL_get_ray_from_sweep(Sweep
*s, float azim);
Ray *RSL_get_ray_above(Volume
*v, Ray *current_ray);
Ray *RSL_get_ray_below(Volume
*v, Ray *current_ray);
Ray *RSL_get_window_from_ray(Ray *r, float
min_range, float max_range, float low_azim, float hi_azim);
float RSL_get_linear_value(Volume
*v,float srange,float azim,float elev,float limit);
float RSL_get_nyquist_from_radar(Radar
*radar);
float RSL_get_range_of_range_index(Ray
*ray, int index);
float RSL_get_value(Volume *v, float elev,
float azimuth, float range);
float RSL_get_value_at_h(Volume *v, float
azim, float grnd_r, float h);
float RSL_get_value_from_cappi(Cappi
*cappi, float rng, float azm);
float RSL_get_value_from_ray(Ray *ray,
float r);
float RSL_get_value_from_sweep(Sweep *s,
float elev, float azim, float r);
Radar *RSL_get_window_from_radar(Radar *r,
float min_range, float max_range, float low_azim, float hi_azim);
int RSL_get_sweep_index_from_volume(Volume
*v, float elev,int *next_closest);
Sorting
Volume *RSL_sort_rays_in_volume(Volume *v);
Volume *RSL_sort_sweeps_in_volume(Volume *v);
Volume *RSL_sort_volume(Volume *v);
Sweep *RSL_sort_rays_in_sweep(Sweep *s);
Sweep *RSL_sort_rays_by_time(Sweep *s);
Math
Volume *RSL_volume_z_to_r(Volume *z_volume, float
k, float a);
Sweep *RSL_sweep_z_to_r(Sweep *z_sweep, float
k, float a);
Ray *RSL_ray_z_to_r(Ray *z_ray, float k,
float a);
float RSL_z_to_r(float z, float k, float
a);
float RSL_area_of_ray(Ray *r, float
lo, float hi, float max_range);
float RSL_fraction_of_ray(Ray *r, float
lo, float hi, float range);
float RSL_fraction_of_sweep(Sweep *s,
float lo, float hi, float range);
float RSL_fraction_of_volume(Volume
*v, float lo, float hi, float range);
float RSL_fractional_area_of_sweep(Sweep
*s, float lo, float hi, float max_rng);
void RSL_add_dbz_offset_to_ray(Ray *r, float dbz_offset);
void RSL_add_dbz_offset_to_sweep(Sweep *s, float dbz_offset);
void RSL_add_dbz_offset_to_volume(Volume *v, float dbz_offset);
void RSL_find_rng_azm(float *r, float *ang, float x, float y);
void RSL_fix_time(Ray *ray);
void RSL_get_groundr_and_h(float
slant_r, float elev, float *gr, float *h);
void RSL_get_gr_slantr_h(Ray *ray,
int i, float *gr, float *slantr, float *h)
void RSL_get_slantr_and_elev(float
gr, float h, float *slant_r, float *elev);
void RSL_get_slantr_and_h(float
gr, float elev, float *slant_r, float *h);
Cappi/Carpi
Cappi *RSL_cappi_at_h(Volume *v, float h,
float grnd_range);
Carpi *RSL_cappi_to_carpi(Cappi *cappi,
float dx, float dy, float lat, float lon, int nx, int ny, int radar_x,
int radar_y);
Carpi *RSL_volume_to_carpi(Volume
*v, float h, float grnd_r, float dx, float dy, int nx, int ny, int radar_x,
int radar_y, float lat, float lon);
int RSL_fill_cappi(Volume *v, Cappi *cap,
int method);
Cube
Cube *RSL_volume_to_cube(Volume *v, float
dx, float dy, float dz, int nx, int ny, int nz, float grnd_r, int radar_x,
int radar_y, int radar_z);
Slice *RSL_get_slice_from_cube(Cube
*cube, int x, int y, int z);
Histogram
Histogram *RSL_allocate_histogram(int
low, int hi);
Histogram *RSL_get_histogram_from_ray(Ray
*ray, Histogram *histogram, int low, int hi, int min_range, int max_range);
Histogram *RSL_get_histogram_from_sweep(Sweep
*sweep, Histogram *histogram, int low, int hi, int min_range, int max_range);
Histogram *RSL_get_histogram_from_volume(Volume
*volume, Histogram *histogram, int low, int hi, int min_range, int max_range);
void RSL_print_histogram(Histogram
*histogram, int min_range, int max_range, char *filename);
Histogram *RSL_read_histogram(char
*infile);
Author: John H. Merritt.