IntaRNA 3.4.1
RNA-RNA interaction prediction | C++ API
Loading...
Searching...
No Matches
Classes | Public Member Functions | List of all members
IntaRNA::StackSeedDomain Class Reference

#include <StackSeedDomain.h>

Classes

struct  Occurrence
 

Public Member Functions

 StackSeedDomain (const SeedHandler &handler, size_t n, size_t m, size_t span1, size_t span2)
 
 StackSeedDomain (const std::vector< Occurrence > &occurrences, size_t n, size_t m, size_t span1, size_t span2)
 
size_t seedLength (size_t i, size_t j) const
 
size_t seedEndingLength (size_t i, size_t j) const
 
size_t maxSeedLength () const
 
std::vector< Occurrence > minimalOccurrences () const
 
void forEachStart (const std::function< void(size_t, size_t)> &visit) const
 

Detailed Description

Admitted stack occurrences and the deduplicated union of eligible-start boxes. Coordinates are local, zero-based and increasing on both strands. Seed energies have already been filtered by the handler and are never reused as path weights.

Constructor & Destructor Documentation

◆ StackSeedDomain() [1/2]

IntaRNA::StackSeedDomain::StackSeedDomain ( const SeedHandler &  handler,
size_t  n,
size_t  m,
size_t  span1,
size_t  span2 
)

Compile a filled handler, requiring both endpoints inside the active range.

Parameters
handlerfilled stack-only handler, including any index offset
nfirst range length
msecond range length
span1inclusive first-strand interaction span limit
span2inclusive second-strand interaction span limit

◆ StackSeedDomain() [2/2]

IntaRNA::StackSeedDomain::StackSeedDomain ( const std::vector< Occurrence > &  occurrences,
size_t  n,
size_t  m,
size_t  span1,
size_t  span2 
)

Compile already admitted occurrences (also useful for independent weight models).

Parameters
occurrencesretained occurrences; out-of-range/overlong ones are excluded
nfirst range length
msecond range length
span1inclusive first span limit
span2inclusive second span limit

Member Function Documentation

◆ forEachStart()

void IntaRNA::StackSeedDomain::forEachStart ( const std::function< void(size_t, size_t)> &  visit) const

Enumerate each eligible left boundary once, in row-major order. The caller intersects these boxes with accessible complementary vertices.

Parameters
visitcallback receiving local first/second coordinates

◆ maxSeedLength()

size_t IntaRNA::StackSeedDomain::maxSeedLength ( ) const
inline
Returns
maximum retained occurrence length, zero for an empty family

◆ minimalOccurrences()

std::vector< Occurrence > IntaRNA::StackSeedDomain::minimalOccurrences ( ) const

Return the union-equivalent family without containing occurrences. A seed containing another admitted seed on its diagonal is redundant for exact union counting and cannot be the heuristic's first-completed owner: its inner seed completes earlier or wins the shortest co-ending tie. The original family remains available for annotations and native endpoint selection. Results are ordered by their starting pair.

Returns
admitted occurrences containing no other admitted occurrence

◆ seedEndingLength()

size_t IntaRNA::StackSeedDomain::seedEndingLength ( size_t  i,
size_t  j 
) const
inline
Returns
shortest admitted occurrence ending here, or zero

◆ seedLength()

size_t IntaRNA::StackSeedDomain::seedLength ( size_t  i,
size_t  j 
) const
inline
Returns
retained length at this start, or zero if no occurrence starts here

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