38 if (_compatible != value) {
40 CompatibleChanged (value);
90 EndianSet::const_iterator start2 = other.
endiannesses.begin();
91 EndianSet::const_iterator end2 = other.
endiannesses.end();
92 std::insert_iterator<EndianSet> insert (result->endiannesses, result->endiannesses.begin());
96 std::set_intersection (start1, end1, start2, end2, insert);
99 std::set_union (start1, end1, start2, end2, insert);
108 SampleFormatSet::const_iterator start2 = other.
sample_formats.begin();
109 SampleFormatSet::const_iterator end2 = other.
sample_formats.end();
110 std::insert_iterator<SampleFormatSet> insert (result->sample_formats, result->sample_formats.begin());
114 std::set_intersection (start1, end1, start2, end2, insert);
117 std::set_union (start1, end1, start2, end2, insert);
125 SampleRateSet::const_iterator start1 =
sample_rates.begin();
126 SampleRateSet::const_iterator end1 =
sample_rates.end();
127 SampleRateSet::const_iterator start2 = other.
sample_rates.begin();
128 SampleRateSet::const_iterator end2 = other.
sample_rates.end();
129 std::insert_iterator<SampleRateSet> insert (result->sample_rates, result->sample_rates.begin());
133 std::set_intersection (start1, end1, start2, end2, insert);
136 std::set_union (start1, end1, start2, end2, insert);
143 FormatSet::const_iterator start1 =
format_ids.begin();
144 FormatSet::const_iterator end1 =
format_ids.end();
145 FormatSet::const_iterator start2 = other.
format_ids.begin();
146 FormatSet::const_iterator end2 = other.
format_ids.end();
147 std::insert_iterator<FormatSet> insert (result->format_ids, result->format_ids.begin());
151 std::set_intersection (start1, end1, start2, end2, insert);
154 std::set_union (start1, end1, start2, end2, insert);
161 QualitySet::const_iterator start1 =
qualities.begin();
162 QualitySet::const_iterator end1 =
qualities.end();
163 QualitySet::const_iterator start2 = other.
qualities.begin();
164 QualitySet::const_iterator end2 = other.
qualities.end();
165 std::insert_iterator<QualitySet> insert (result->qualities, result->qualities.begin());
169 std::set_intersection (start1, end1, start2, end2, insert);
172 std::set_union (start1, end1, start2, end2, insert);
184 int smallest_diff = INT_MAX;
187 #define DO_SR_COMPARISON(rate) \
188 diff = std::fabs((double)((rate) - sample_rate)); \
189 if(diff < smallest_diff) { \
190 smallest_diff = diff; \
191 best_match = (rate); \
203 #undef DO_SR_COMPARISON