Lines 546-551
Link Here
|
546 |
Range (*invf)(float x); |
548 |
Range (*invf)(float x); |
547 |
float (*f)(Range x); |
549 |
float (*f)(Range x); |
548 |
int vol_index, waveform; |
550 |
int vol_index, waveform; |
|
|
551 |
char *type_str; |
549 |
|
552 |
|
550 |
enum waveforms {surveillance=1, doppler_ambres, doppler_no_ambres, batch}; |
553 |
enum waveforms {surveillance=1, doppler_ambres, doppler_no_ambres, batch}; |
551 |
|
554 |
|
Lines 572-581
Link Here
|
572 |
if (wsr88d_ray.ray_hdr.dbptr_ref > 0) { |
575 |
if (wsr88d_ray.ray_hdr.dbptr_ref > 0) { |
573 |
vol_index = wsr88d_get_vol_index(wsr88d_ray.ref->data_hdr.dataname); |
576 |
vol_index = wsr88d_get_vol_index(wsr88d_ray.ref->data_hdr.dataname); |
574 |
switch (vol_index) { |
577 |
switch (vol_index) { |
575 |
case DZ_INDEX: f = DZ_F; invf = DZ_INVF; break; |
578 |
case DZ_INDEX: f = DZ_F; invf = DZ_INVF; type_str = "Reflectivity"; break; |
576 |
case VR_INDEX: f = VR_F; invf = VR_INVF; break; |
579 |
case VR_INDEX: f = VR_F; invf = VR_INVF; type_str = "Velocity"; break; |
577 |
case SW_INDEX: f = SW_F; invf = SW_INVF; break; |
580 |
case SW_INDEX: f = SW_F; invf = SW_INVF; type_str = "Spectrum width"; break; |
578 |
default: f = DZ_F; invf = DZ_INVF; break; |
581 |
default: f = DZ_F; invf = DZ_INVF; type_str = "Unknown"; break; |
579 |
} |
582 |
} |
580 |
/* If this is reflectivity, check the waveform type to make sure |
583 |
/* If this is reflectivity, check the waveform type to make sure |
581 |
* it isn't from a Doppler split cut. |
584 |
* it isn't from a Doppler split cut. |
Lines 591-596
Link Here
|
591 |
radar->v[vol_index] = RSL_new_volume(MAXSWEEPS); |
594 |
radar->v[vol_index] = RSL_new_volume(MAXSWEEPS); |
592 |
radar->v[vol_index]->h.f = f; |
595 |
radar->v[vol_index]->h.f = f; |
593 |
radar->v[vol_index]->h.invf = invf; |
596 |
radar->v[vol_index]->h.invf = invf; |
|
|
597 |
radar->v[vol_index]->h.type_str = type_str; |
594 |
} |
598 |
} |
595 |
if (radar->v[vol_index]->sweep[isweep] == NULL) { |
599 |
if (radar->v[vol_index]->sweep[isweep] == NULL) { |
596 |
radar->v[vol_index]->sweep[isweep] = RSL_new_sweep(MAXRAYS_M31); |
600 |
radar->v[vol_index]->sweep[isweep] = RSL_new_sweep(MAXRAYS_M31); |
Lines 608-622
Link Here
|
608 |
if (wsr88d_ray.ray_hdr.dbptr_vel > 0) { |
612 |
if (wsr88d_ray.ray_hdr.dbptr_vel > 0) { |
609 |
vol_index = wsr88d_get_vol_index(wsr88d_ray.vel->data_hdr.dataname); |
613 |
vol_index = wsr88d_get_vol_index(wsr88d_ray.vel->data_hdr.dataname); |
610 |
switch (vol_index) { |
614 |
switch (vol_index) { |
611 |
case DZ_INDEX: f = DZ_F; invf = DZ_INVF; break; |
615 |
case DZ_INDEX: f = DZ_F; invf = DZ_INVF; type_str = "Reflectivity"; break; |
612 |
case VR_INDEX: f = VR_F; invf = VR_INVF; break; |
616 |
case VR_INDEX: f = VR_F; invf = VR_INVF; type_str = "Velocity"; break; |
613 |
case SW_INDEX: f = SW_F; invf = SW_INVF; break; |
617 |
case SW_INDEX: f = SW_F; invf = SW_INVF; type_str = "Spectrum width"; break; |
614 |
default: f = DZ_F; invf = DZ_INVF; break; |
618 |
default: f = DZ_F; invf = DZ_INVF; type_str = "Unknown"; break; |
615 |
} |
619 |
} |
616 |
if (radar->v[vol_index] == NULL) { |
620 |
if (radar->v[vol_index] == NULL) { |
617 |
radar->v[vol_index] = RSL_new_volume(MAXSWEEPS); |
621 |
radar->v[vol_index] = RSL_new_volume(MAXSWEEPS); |
618 |
radar->v[vol_index]->h.f = f; |
622 |
radar->v[vol_index]->h.f = f; |
619 |
radar->v[vol_index]->h.invf = invf; |
623 |
radar->v[vol_index]->h.invf = invf; |
|
|
624 |
radar->v[vol_index]->h.type_str = type_str; |
620 |
} |
625 |
} |
621 |
if (radar->v[vol_index]->sweep[isweep] == NULL) { |
626 |
if (radar->v[vol_index]->sweep[isweep] == NULL) { |
622 |
radar->v[vol_index]->sweep[isweep] = RSL_new_sweep(MAXRAYS_M31); |
627 |
radar->v[vol_index]->sweep[isweep] = RSL_new_sweep(MAXRAYS_M31); |
Lines 633-647
Link Here
|
633 |
if (wsr88d_ray.ray_hdr.dbptr_sw > 0) { |
638 |
if (wsr88d_ray.ray_hdr.dbptr_sw > 0) { |
634 |
vol_index = wsr88d_get_vol_index(wsr88d_ray.sw->data_hdr.dataname); |
639 |
vol_index = wsr88d_get_vol_index(wsr88d_ray.sw->data_hdr.dataname); |
635 |
switch (vol_index) { |
640 |
switch (vol_index) { |
636 |
case DZ_INDEX: f = DZ_F; invf = DZ_INVF; break; |
641 |
case DZ_INDEX: f = DZ_F; invf = DZ_INVF; type_str = "Reflectivity"; break; |
637 |
case VR_INDEX: f = VR_F; invf = VR_INVF; break; |
642 |
case VR_INDEX: f = VR_F; invf = VR_INVF; type_str = "Velocity"; break; |
638 |
case SW_INDEX: f = SW_F; invf = SW_INVF; break; |
643 |
case SW_INDEX: f = SW_F; invf = SW_INVF; type_str = "Spectrum width"; break; |
639 |
default: f = DZ_F; invf = DZ_INVF; break; |
644 |
default: f = DZ_F; invf = DZ_INVF; type_str = "Unknown"; break; |
640 |
} |
645 |
} |
641 |
if (radar->v[vol_index] == NULL) { |
646 |
if (radar->v[vol_index] == NULL) { |
642 |
radar->v[vol_index] = RSL_new_volume(MAXSWEEPS); |
647 |
radar->v[vol_index] = RSL_new_volume(MAXSWEEPS); |
643 |
radar->v[vol_index]->h.f = f; |
648 |
radar->v[vol_index]->h.f = f; |
644 |
radar->v[vol_index]->h.invf = invf; |
649 |
radar->v[vol_index]->h.invf = invf; |
|
|
650 |
radar->v[vol_index]->h.type_str = type_str; |
645 |
} |
651 |
} |
646 |
if (radar->v[vol_index]->sweep[isweep] == NULL) { |
652 |
if (radar->v[vol_index]->sweep[isweep] == NULL) { |
647 |
radar->v[vol_index]->sweep[isweep] = RSL_new_sweep(MAXRAYS_M31); |
653 |
radar->v[vol_index]->sweep[isweep] = RSL_new_sweep(MAXRAYS_M31); |