Existe-t-il de bonnes bibliothèques Trie de suffixes C ++?

Est-ce que quelqu’un connaît une bibliothèque C ++ extrêmement solide pour les tentatives de suffixe? Autre que celui de Mummer?
Idéalement, je voudrais:
Une certaine notion de concurrence.
Bon comportement de mise en cache.
Licence permissive.
Prise en charge des alphabets arbitraires.

Étant un bioinformaticien, mon choix serait SeqAn (consultez la section index de séquence ). Il implémente une arborescence de suffixes paresseux et un tableau de suffixes améliorés (une structure de données équivalente), qui ont tous deux un bon comportement en cache.

Ayant effectivement utilisé et ensuite oublié PATL, je voudrais insérer un lien dans une réponse.
http://code.google.com/p/patl/
Il possède quelques caractéristiques très distinctes et sa lecture est généralement agréable.

Il s’agit très probablement d’un tutoriel, mais l’OMI mérite d’être lu et avec le code source: http://marknelson.us/1996/08/01/suffix-trees .