NVBIO
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Classes | Namespaces | Enumerations | Functions
mapping_inl.h File Reference
#include <nvBowtie/bowtie2/cuda/defs.h>
#include <nvBowtie/bowtie2/cuda/utils.h>
#include <nvBowtie/bowtie2/cuda/params.h>
#include <nvBowtie/bowtie2/cuda/seed_hit.h>
#include <nvBowtie/bowtie2/cuda/seed_hit_deque_array.h>
#include <nvbio/io/utils.h>
#include <nvbio/basic/cuda/arch.h>
#include <nvbio/basic/cuda/pingpong_queues.h>
#include <nvbio/basic/cached_iterator.h>
#include <nvbio/basic/packedstream.h>
#include <nvbio/basic/priority_deque.h>
#include <nvbio/basic/strided_iterator.h>
#include <nvbio/basic/transform_iterator.h>
#include <nvbio/basic/index_transform_iterator.h>
#include <nvbio/basic/algorithms.h>

Go to the source code of this file.

Classes

struct  nvbio::bowtie2::cuda::detail::seed_mapper< ALG >
 abstract seed-mapper interface More...
 
struct  nvbio::bowtie2::cuda::detail::seed_mapper< EXACT_MAPPING >
 
struct  nvbio::bowtie2::cuda::detail::seed_mapper< APPROX_MAPPING >
 
struct  nvbio::bowtie2::cuda::detail::seed_mapper< CASE_PRUNING_MAPPING >
 

Namespaces

 nvbio
 Define a vector_view POD type and plain_view() for std::vector.
 
 nvbio::bowtie2
 
 nvbio::bowtie2::cuda
 
 nvbio::bowtie2::cuda::detail
 

Enumerations

enum  { nvbio::bowtie2::cuda::detail::CHECK_EXACT =1u, nvbio::bowtie2::cuda::detail::IGNORE_EXACT =0u }
 
enum  nvbio::bowtie2::cuda::detail::MappingAlgorithm { nvbio::bowtie2::cuda::detail::EXACT_MAPPING = 0u, nvbio::bowtie2::cuda::detail::APPROX_MAPPING = 1u, nvbio::bowtie2::cuda::detail::CASE_PRUNING_MAPPING = 2u }
 

Functions

template<typename ReadStream >
NVBIO_DEVICE NVBIO_FORCEINLINE bool nvbio::bowtie2::cuda::detail::check_N (const ReadStream &seed, const uint32 exact_len, const uint32 seed_len)
 
template<typename FMType , typename StreamType >
NVBIO_DEVICE NVBIO_FORCEINLINE
uint2 
nvbio::bowtie2::cuda::detail::match_range (uint2 range, const FMType index, StreamType query, uint32 begin, uint32 end)
 
NVBIO_DEVICE NVBIO_FORCEINLINE void nvbio::bowtie2::cuda::detail::store_deque (SeedHitDequeArrayDeviceView hit_deques, const uint32 read_id, const uint32 n_hits, const SeedHit *hitstorage)
 
template<bool find_exact, typename Stream , typename FMType , typename HitType >
NVBIO_DEVICE NVBIO_FORCEINLINE void nvbio::bowtie2::cuda::detail::map (const Stream query, uint32 len1, const uint32 len2, const FMType index, const SeedHit::Flags hit_flags, HitType &hitheap, uint32 max_hits, uint32 &range_sum, uint32 &range_count)
 
template<typename BatchType , typename FMType , typename rFMType >
__global__ void nvbio::bowtie2::cuda::detail::map_whole_read_kernel (const BatchType read_batch, const FMType fmi, const rFMType rfmi, const nvbio::cuda::PingPongQueuesView< uint32 > queues, uint8 *reseed, SeedHitDequeArrayDeviceView hits, const ParamsPOD params, const bool fw, const bool rc)
 
template<MappingAlgorithm ALGO, typename BatchType , typename FMType , typename rFMType >
__global__ void nvbio::bowtie2::cuda::detail::map_queues_kernel (const BatchType read_batch, const FMType fmi, const rFMType rfmi, const uint32 retry, const nvbio::cuda::PingPongQueuesView< uint32 > queues, uint8 *reseed, SeedHitDequeArrayDeviceView hits, const ParamsPOD params, const bool fw, const bool rc)
 
template<MappingAlgorithm ALGO, typename BatchType , typename FMType , typename rFMType >
__global__ void nvbio::bowtie2::cuda::detail::map_kernel (const BatchType read_batch, const FMType fmi, const rFMType rfmi, SeedHitDequeArrayDeviceView hits, const uint2 seed_range, const ParamsPOD params, const bool fw, const bool rc)
 
template<typename BatchType , typename FMType , typename rFMType >
void nvbio::bowtie2::cuda::map_case_pruning_t (const BatchType &read_batch, const FMType fmi, const rFMType rfmi, const uint32 retry, const nvbio::cuda::PingPongQueuesView< uint32 > queues, uint8 *reseed, SeedHitDequeArrayDeviceView hits, const ParamsPOD params, const bool fw, const bool rc)
 
template<typename BatchType , typename FMType , typename rFMType >
void nvbio::bowtie2::cuda::map_approx_t (const BatchType &read_batch, const FMType fmi, const rFMType rfmi, const uint32 retry, const nvbio::cuda::PingPongQueuesView< uint32 > queues, uint8 *reseed, SeedHitDequeArrayDeviceView hits, const ParamsPOD params, const bool fw, const bool rc)
 
template<typename BatchType , typename FMType , typename rFMType >
void nvbio::bowtie2::cuda::map_approx_t (const BatchType &read_batch, const FMType fmi, const rFMType rfmi, SeedHitDequeArrayDeviceView hits, const uint2 seed_range, const ParamsPOD params, const bool fw, const bool rc)
 
template<typename BatchType , typename FMType , typename rFMType >
void nvbio::bowtie2::cuda::map_whole_read_t (const BatchType &read_batch, const FMType fmi, const rFMType rfmi, const nvbio::cuda::PingPongQueuesView< uint32 > queues, uint8 *reseed, SeedHitDequeArrayDeviceView hits, const ParamsPOD params, const bool fw, const bool rc)
 
template<typename BatchType , typename FMType , typename rFMType >
void nvbio::bowtie2::cuda::map_exact_t (const BatchType &read_batch, const FMType fmi, const rFMType rfmi, const uint32 retry, const nvbio::cuda::PingPongQueuesView< uint32 > queues, uint8 *reseed, SeedHitDequeArrayDeviceView hits, const ParamsPOD params, const bool fw, const bool rc)
 
template<typename BatchType , typename FMType , typename rFMType >
void nvbio::bowtie2::cuda::map_exact_t (const BatchType &read_batch, const FMType fmi, const rFMType rfmi, SeedHitDequeArrayDeviceView hits, const uint2 seed_range, const ParamsPOD params, const bool fw, const bool rc)
 
template<typename BatchType , typename FMType , typename rFMType >
void nvbio::bowtie2::cuda::map_t (const BatchType &read_batch, const FMType fmi, const rFMType rfmi, const uint32 retry, const nvbio::cuda::PingPongQueuesView< uint32 > queues, uint8 *reseed, SeedHitDequeArrayDeviceView hits, const ParamsPOD params, const bool fw, const bool rc)