| 811 | } |
| 812 | |
| 813 | void LASbin::report(FILE* file, const CHAR* name, const CHAR* name_avg) const |
| 814 | { |
| 815 | I32 i, bin; |
| 816 | if (name) |
| 817 | { |
| 818 | if (values_pos) |
| 819 | { |
| 820 | if (name_avg) |
| 821 | fprintf(file, "%s histogram of %s averages with bin size %lf\012", name, name_avg, step); |
| 822 | else |
| 823 | fprintf(file, "%s histogram of averages with bin size %lf\012", name, step); |
| 824 | } |
| 825 | else |
| 826 | fprintf(file, "%s histogram with bin size %lf\012", name, step); |
| 827 | } |
| 828 | CHAR temp1[64]; |
| 829 | CHAR temp2[64]; |
| 830 | if (size_neg) |
| 831 | { |
| 832 | for (i = size_neg-1; i >= 0; i--) |
| 833 | { |
| 834 | if (bins_neg[i]) |
| 835 | { |
| 836 | bin = -(i+1) + anker; |
| 837 | if (step == 1) |
| 838 | { |
| 839 | if (values_neg) |
| 840 | fprintf(file, " bin %d has average %g (of %d)\012", bin, values_neg[i]/bins_neg[i], bins_neg[i]); |
| 841 | else |
| 842 | fprintf(file, " bin %d has %d\012", bin, bins_neg[i]); |
| 843 | } |
| 844 | else |
| 845 | { |
| 846 | lidardouble2string(temp1, ((F64)bin)*step, step); |
| 847 | lidardouble2string(temp2, ((F64)bin+1)*step, step); |
| 848 | if (values_neg) |
| 849 | fprintf(file, " bin [%s,%s] has average %g (of %d)\012", temp1, temp2, values_neg[i]/bins_neg[i], bins_neg[i]); |
| 850 | else |
| 851 | fprintf(file, " bin [%s,%s] has %d\012", temp1, temp2, bins_neg[i]); |
| 852 | } |
| 853 | } |
| 854 | } |
| 855 | } |
| 856 | if (size_pos) |
| 857 | { |
| 858 | for (i = 0; i < size_pos; i++) |
| 859 | { |
| 860 | if (bins_pos[i]) |
| 861 | { |
| 862 | bin = i + anker; |
| 863 | if (step == 1) |
| 864 | { |
| 865 | if (values_pos) |
| 866 | fprintf(file, " bin %d has average %g (of %d)\012", bin, values_pos[i]/bins_pos[i], bins_pos[i]); |
| 867 | else |
| 868 | fprintf(file, " bin %d has %d\012", bin, bins_pos[i]); |
| 869 | } |
| 870 | else |
no test coverage detected