You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

35 lines
694B

  1. #pragma once
  2. #include <vector>
  3. #include <common.hpp>
  4. namespace rack {
  5. /** Tags describing the functions of modules
  6. */
  7. namespace tag {
  8. /** List of tags and their aliases.
  9. The first alias of each tag `tag[tagId][0]` is the "canonical" alias.
  10. It is guaranteed to exist and should be used as the human-readable form.
  11. This list is manually alphabetized by the canonical alias.
  12. */
  13. extern const std::vector<std::vector<std::string>> tagAliases;
  14. /** Searches for a tag ID.
  15. Searches tag aliases.
  16. Case-insensitive.
  17. Returns -1 if not found.
  18. */
  19. int findId(const std::string& tag);
  20. /** Returns the main tag name by tag ID. */
  21. std::string getTag(int tagId);
  22. } // namespace tag
  23. } // namespace rack