33 #include <thrust/device_vector.h>
34 #include <thrust/transform_scan.h>
35 #include <thrust/sort.h>
120 template <
typename string_type>
122 const typename string_type::index_type string_len,
123 const string_type
string);
138 template <
typename string_type,
typename output_iterator>
141 const string_type
string,
142 output_iterator output,
178 template <
typename string_type,
typename output_handler>
180 const typename string_type::index_type string_len,
182 output_handler& output,
200 template <
typename string_type,
typename output_iterator>
201 typename string_type::index_type
bwt(
202 const typename string_type::index_type string_len,
204 output_iterator output,
229 template <
typename string_set_type,
typename output_handler>
231 const string_set_type& string_set,
232 output_handler& output,
261 template <u
int32 SYMBOL_SIZE,
bool BIG_ENDIAN,
typename storage_type,
typename output_handler>
266 output_handler& output,
301 template <u
int32 SYMBOL_SIZE,
bool BIG_ENDIAN,
typename storage_type,
typename output_handler>
303 const ConcatenatedStringSet<
304 PackedStream<storage_type,uint8,SYMBOL_SIZE,BIG_ENDIAN,uint64>,
306 output_handler& output,
307 BWTParams* params = NULL);