NVBIO
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Types | Public Methods | List of all members
nvbio::PrefixSet< SequenceType, PrefixIterator > Struct Template Reference

Detailed description

template< typename SequenceType, typename PrefixIterator>
struct nvbio::PrefixSet< SequenceType, PrefixIterator >

Represent a set of prefixes of a string or string-set. An PrefixSet is a String Set.
For a string T[0,...,n-1], a prefix is a substring T[0,j). An PrefixSet is hence defined by a string and a collection of indices { i_0, ..., i_m }. These coordinates must be of type string_suffix_coord_type or long_string_suffix_coord_type.
For a string-set, an prefix is instead defined as a pair (k,i), where k denotes the string index in the set and i denotes the prefix ending coordinate. These coordinates must be of type string_set_prefix_coord_type or long_string_set_prefix_coord_type.
Template Parameters
SequenceTypethe string or string-set type
PrefixIteratorthe prefix iterator type - value_type can be string_prefix_coord_type for strings, string_set_prefix_coord_type for string-sets

Definition at line 439 of file prefix.h.

#include <prefix.h>

Inheritance diagram for nvbio::PrefixSet< SequenceType, PrefixIterator >:
nvbio::PrefixSetCore< SequenceType, PrefixIterator, vector_traits< std::iterator_traits< PrefixIterator >::value_type >::DIM >

Public Types

typedef PrefixSetCore
< SequenceType, PrefixIterator,
vector_traits< typename
std::iterator_traits
< PrefixIterator >::value_type >
::DIM > 
base_type
 
typedef SequenceType sequence_type
 the underlying sequence type More...
 
typedef PrefixIterator prefix_iterator
 the underlingy prefix iterator type More...
 
typedef iterator_system
< PrefixIterator >::type 
system_tag
 the system tag More...
 
typedef base_type::coord_type coord_type
 the prefix coordinates type More...
 
typedef base_type::string_type string_type
 the prefix string type More...
 
typedef StringSetIterator
< PrefixSet< SequenceType,
InfixIterator > > 
iterator
 the iterator type More...
 
typedef StringSetIterator
< PrefixSet< SequenceType,
InfixIterator > > 
const_iterator
 the const_iterator type More...
 

Public Methods

NVBIO_FORCEINLINE NVBIO_HOST_DEVICE PrefixSet ()
 
NVBIO_FORCEINLINE NVBIO_HOST_DEVICE PrefixSet (const uint32 size, const sequence_type sequence, const prefix_iterator prefixes)
 
const_iterator begin () const
 
const_iterator end () const
 
iterator begin ()
 
iterator end ()
 

Member Typedef Documentation

template<typename SequenceType , typename PrefixIterator >
typedef PrefixSetCore< SequenceType, PrefixIterator, vector_traits<typename std::iterator_traits<PrefixIterator>::value_type>::DIM> nvbio::PrefixSet< SequenceType, PrefixIterator >::base_type

Definition at line 447 of file prefix.h.

template<typename SequenceType , typename PrefixIterator >
typedef StringSetIterator< PrefixSet<SequenceType,InfixIterator> > nvbio::PrefixSet< SequenceType, PrefixIterator >::const_iterator

the const_iterator type

Definition at line 457 of file prefix.h.

template<typename SequenceType , typename PrefixIterator >
typedef base_type::coord_type nvbio::PrefixSet< SequenceType, PrefixIterator >::coord_type

the prefix coordinates type

Definition at line 453 of file prefix.h.

template<typename SequenceType , typename PrefixIterator >
typedef StringSetIterator< PrefixSet<SequenceType,InfixIterator> > nvbio::PrefixSet< SequenceType, PrefixIterator >::iterator

the iterator type

Definition at line 456 of file prefix.h.

template<typename SequenceType , typename PrefixIterator >
typedef PrefixIterator nvbio::PrefixSet< SequenceType, PrefixIterator >::prefix_iterator

the underlingy prefix iterator type

Definition at line 450 of file prefix.h.

template<typename SequenceType , typename PrefixIterator >
typedef SequenceType nvbio::PrefixSet< SequenceType, PrefixIterator >::sequence_type

the underlying sequence type

Definition at line 449 of file prefix.h.

template<typename SequenceType , typename PrefixIterator >
typedef base_type::string_type nvbio::PrefixSet< SequenceType, PrefixIterator >::string_type

the prefix string type

Definition at line 454 of file prefix.h.

template<typename SequenceType , typename PrefixIterator >
typedef iterator_system<PrefixIterator>::type nvbio::PrefixSet< SequenceType, PrefixIterator >::system_tag

the system tag

Definition at line 451 of file prefix.h.

Constructor & Destructor Documentation

template<typename SequenceType , typename PrefixIterator >
NVBIO_FORCEINLINE NVBIO_HOST_DEVICE nvbio::PrefixSet< SequenceType, PrefixIterator >::PrefixSet ( )
inline

constructor

Definition at line 462 of file prefix.h.

template<typename SequenceType , typename PrefixIterator >
NVBIO_FORCEINLINE NVBIO_HOST_DEVICE nvbio::PrefixSet< SequenceType, PrefixIterator >::PrefixSet ( const uint32  size,
const sequence_type  sequence,
const prefix_iterator  prefixes 
)
inline

constructor

Definition at line 467 of file prefix.h.

Member Function Documentation

template<typename SequenceType , typename PrefixIterator >
const_iterator nvbio::PrefixSet< SequenceType, PrefixIterator >::begin ( void  ) const
inline

begin iterator

Definition at line 475 of file prefix.h.

template<typename SequenceType , typename PrefixIterator >
iterator nvbio::PrefixSet< SequenceType, PrefixIterator >::begin ( void  )
inline

begin iterator

Definition at line 483 of file prefix.h.

template<typename SequenceType , typename PrefixIterator >
const_iterator nvbio::PrefixSet< SequenceType, PrefixIterator >::end ( void  ) const
inline

begin iterator

Definition at line 479 of file prefix.h.

template<typename SequenceType , typename PrefixIterator >
iterator nvbio::PrefixSet< SequenceType, PrefixIterator >::end ( void  )
inline

begin iterator

Definition at line 487 of file prefix.h.


The documentation for this struct was generated from the following file: