diff options
author | Robin Gareus <robin@gareus.org> | 2014-11-19 20:38:50 +0100 |
---|---|---|
committer | Robin Gareus <robin@gareus.org> | 2014-11-19 20:38:50 +0100 |
commit | e3e85a92dbb1bbca64d3e183ab9adefa32c49a6c (patch) | |
tree | b4536ced491d67caf9add57191df330025d5fa6c /libs/panners | |
parent | cc5f5c77388a7e326dab249047891c88c79bffdd (diff) |
some const'ness and hints for clang
Diffstat (limited to 'libs/panners')
-rw-r--r-- | libs/panners/vbap/vbap.cc | 8 | ||||
-rw-r--r-- | libs/panners/vbap/vbap_speakers.cc | 8 |
2 files changed, 12 insertions, 4 deletions
diff --git a/libs/panners/vbap/vbap.cc b/libs/panners/vbap/vbap.cc index 70e9f38aa2..9276dd1256 100644 --- a/libs/panners/vbap/vbap.cc +++ b/libs/panners/vbap/vbap.cc @@ -162,6 +162,8 @@ VBAPanner::compute_gains (double gains[3], int speaker_ids[3], int azi, int ele) int i,j,k; double small_g; double big_sm_g, gtmp[3]; + const int dimension = _speakers->dimension(); + assert(dimension == 2 || dimension == 3); spherical_to_cartesian (azi, ele, 1.0, cartdir[0], cartdir[1], cartdir[2]); big_sm_g = -100000.0; @@ -173,12 +175,12 @@ VBAPanner::compute_gains (double gains[3], int speaker_ids[3], int azi, int ele) small_g = 10000000.0; - for (j = 0; j < _speakers->dimension(); j++) { + for (j = 0; j < dimension; j++) { gtmp[j] = 0.0; - for (k = 0; k < _speakers->dimension(); k++) { - gtmp[j] += cartdir[k] * _speakers->matrix(i)[j*_speakers->dimension()+k]; + for (k = 0; k < dimension; k++) { + gtmp[j] += cartdir[k] * _speakers->matrix(i)[j * dimension + k]; } if (gtmp[j] < small_g) { diff --git a/libs/panners/vbap/vbap_speakers.cc b/libs/panners/vbap/vbap_speakers.cc index 1a420b2b2a..898a95de51 100644 --- a/libs/panners/vbap/vbap_speakers.cc +++ b/libs/panners/vbap/vbap_speakers.cc @@ -559,6 +559,11 @@ VBAPSpeakers::choose_speaker_pairs (){ } /* sort loudspeakers according their aximuth angle */ +#ifdef __clang_analyzer__ + // sort_2D_lss() assigns values to all of sorted_speakers + // "uninitialized value" + memset(sorted_speakers, 0, sizeof(*sorted_speakers)); +#endif sort_2D_lss (sorted_speakers); /* adjacent loudspeakers are the loudspeaker pairs to be used.*/ @@ -626,13 +631,14 @@ VBAPSpeakers::sort_2D_lss (int* sorted_speakers) vector<Speaker> tmp = _speakers; vector<Speaker>::iterator s; azimuth_sorter sorter; - int n; + unsigned int n; sort (tmp.begin(), tmp.end(), sorter); for (n = 0, s = tmp.begin(); s != tmp.end(); ++s, ++n) { sorted_speakers[n] = (*s).id; } + assert(n == _speakers.size ()); } int |