NCBI C++ ToolKit
Classes | Enumerations | Functions
polya.hpp File Reference
#include <corelib/ncbistd.hpp>
#include <util/range.hpp>
+ Include dependency graph for polya.hpp:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Go to the SVN repository for this file.

Classes

class  CRevComp_It< Iterator >
 Implementation [in header because of templates]. More...
 

Enumerations

enum  EPolyTail { ePolyTail_None , ePolyTail_A3 , ePolyTail_T5 }
 

Functions

template<typename Iterator >
TSignedSeqPos FindPolyA (Iterator begin, Iterator end)
 PRE : two random access iterators pointing to sequence data [begin, end) POST: poly-A tail cleavage site, if any (-1 if not) More...
 
template<typename Iterator >
EPolyTail FindPolyTail (Iterator begin, Iterator end, TSignedSeqPos &cleavageSite, TSeqPos min_length=1)
 PRE : two random access iterators pointing to sequence data [begin, end); minimum length for tail POST: cleavageSite (if any) and whether we found a poly-A tail, a poly-T head, or neither. More...
 
template<typename Iterator >
TSeqRange FindPolyARange (Iterator begin, Iterator end, TSeqPos max_following_bases)
 PRE : two random access iterators pointing to sequence data [begin, end); maximum number of non-A bases that are allowed to follow the tail POST: poly-A tail range, if any (empty range if not) More...
 
template<typename Iterator >
EPolyTail FindPolyTail (Iterator begin, Iterator end, TSeqRange &tail, TSeqPos min_length=1, TSeqPos max_following_bases=0)
 PRE : two random access iterators pointing to sequence data [begin, end); minimum length for tail; maximum number of non-A bases that are allowed to follow the tail POST: poly-tail range (if any) and whether we found a poly-A tail, a poly-T head, or neither. More...
 
template<typename ForwardIterator1 , typename ForwardIterator2 >
ForwardIterator1 ItrSearch (ForwardIterator1 first1, ForwardIterator1 last1, ForwardIterator2 first2, ForwardIterator2 last2)
 

Enumeration Type Documentation

◆ EPolyTail

enum EPolyTail
Enumerator
ePolyTail_None 
ePolyTail_A3 
ePolyTail_T5 

Definition at line 40 of file polya.hpp.

Function Documentation

◆ FindPolyA()

template<typename Iterator >
TSignedSeqPos FindPolyA ( Iterator  begin,
Iterator  end 
)

PRE : two random access iterators pointing to sequence data [begin, end) POST: poly-A tail cleavage site, if any (-1 if not)

Definition at line 211 of file polya.hpp.

References COpenRange< Position >::Empty(), FindPolyARange(), and CRange_Base::GetFrom().

◆ FindPolyARange()

template<typename Iterator >
TSeqRange FindPolyARange ( Iterator  begin,
Iterator  end,
TSeqPos  max_following_bases 
)

PRE : two random access iterators pointing to sequence data [begin, end); maximum number of non-A bases that are allowed to follow the tail POST: poly-A tail range, if any (empty range if not)

PRE : two random access iterators pointing to sequence data [begin, end) POST: poly-A tail range, if any (empty range if not)

Definition at line 222 of file polya.hpp.

References ItrSearch().

Referenced by FindPolyA(), and FindPolyTail().

◆ FindPolyTail() [1/2]

template<typename Iterator >
EPolyTail FindPolyTail ( Iterator  begin,
Iterator  end,
TSeqRange tail,
TSeqPos  min_length = 1,
TSeqPos  max_following_bases = 0 
)

PRE : two random access iterators pointing to sequence data [begin, end); minimum length for tail; maximum number of non-A bases that are allowed to follow the tail POST: poly-tail range (if any) and whether we found a poly-A tail, a poly-T head, or neither.

PRE : two random access iterators pointing to sequence data [begin, end); minimum length for tail POST: poly-tail range (if any) and whether we found a poly-A tail, a poly-T head, or neither.

Definition at line 317 of file polya.hpp.

References ePolyTail_A3, ePolyTail_None, ePolyTail_T5, FindPolyARange(), CRange_Base::GetFrom(), COpenRange< Position >::GetLength(), CRange_Base::GetTo(), and COpenRange< Position >::Set().

◆ FindPolyTail() [2/2]

template<typename Iterator >
EPolyTail FindPolyTail ( Iterator  begin,
Iterator  end,
TSignedSeqPos cleavageSite,
TSeqPos  min_length = 1 
)

PRE : two random access iterators pointing to sequence data [begin, end); minimum length for tail POST: cleavageSite (if any) and whether we found a poly-A tail, a poly-T head, or neither.

Definition at line 297 of file polya.hpp.

References ePolyTail_A3, ePolyTail_T5, CRange_Base::GetFrom(), CRange_Base::GetTo(), and type.

Referenced by BOOST_AUTO_TEST_CASE().

◆ ItrSearch()

template<typename ForwardIterator1 , typename ForwardIterator2 >
ForwardIterator1 ItrSearch ( ForwardIterator1  first1,
ForwardIterator1  last1,
ForwardIterator2  first2,
ForwardIterator2  last2 
)

Definition at line 178 of file polya.hpp.

Referenced by FindPolyARange().

Modified on Wed Sep 04 15:06:38 2024 by modify_doxy.py rev. 669887