| 534 | } |
| 535 | |
| 536 | char *gmode_enum(int gm, char *buf) // convert mode bitmask to string with sorted list of mode acronyms |
| 537 | { |
| 538 | vector<const char *> mas; |
| 539 | loopi(GMODE_NUM) if(gm & (1 << i)) mas.add(modeacronymnames[i + 1]); |
| 540 | mas.sort(stringsortignorecase); |
| 541 | buf[0] = '\0'; |
| 542 | loopv(mas) concatformatstring(buf, "%s%s", i ? "|" : "", mas[i]); |
| 543 | filtertext(buf, buf, FTXT_TOLOWER); |
| 544 | return buf; |
| 545 | } |
| 546 | |
| 547 | int encodepitch(float p) // pitch value quantisation: use double resolution for -30°..30° and half resolution for -90°..-30° and 30°..90° |
| 548 | { |
no test coverage detected