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

#include <HelixHandler.h>

Inheritance diagram for IntaRNA::HelixHandler:
Inheritance graph
[legend]

Public Member Functions

 HelixHandler ()
 
virtual ~HelixHandler ()
 
virtual const HelixConstraint & getConstraint () const =0
 
virtual const InteractionEnergy & getInteractionEnergy () const =0
 
virtual size_t fillHelix (const size_t i1, const size_t j1, const size_t i2, const size_t j2)=0
 
virtual size_t fillHelixSeed (const size_t i1, const size_t j1, const size_t i2, const size_t j2)=0
 
virtual void traceBackHelix (Interaction &interaction, const size_t i1, const size_t i2)=0
 
virtual void traceBackHelixSeed (Interaction &interaction, const size_t i1, const size_t i2)=0
 
virtual E_type getHelixE (const size_t i1, const size_t i2) const =0
 
virtual E_type getHelixSeedE (const size_t i1, const size_t i2) const =0
 
virtual size_t getHelixLength1 (const size_t i1, const size_t i2) const =0
 
virtual size_t getHelixLength2 (const size_t i1, const size_t i2) const =0
 
virtual size_t getHelixSeedLength1 (const size_t i1, const size_t i2) const =0
 
virtual size_t getHelixSeedLength2 (const size_t i1, const size_t i2) const =0
 
virtual void setSeedHandler (SeedHandler &seedHandler)=0
 

Static Public Member Functions

static HelixHandler * getHelixHandler (const InteractionEnergy &energy, const HelixConstraint &helixConstraint, SeedHandler *const seedHandler=NULL)
 

Detailed Description

Abstract interface to provide helix interaction information If SeedHandler is provided, also helices containing seeds will be computed

Constructor & Destructor Documentation

◆ HelixHandler()

IntaRNA::HelixHandler::HelixHandler ( )
inline

Construction

Parameters
energythe energy function to be used for helix prediction
helixConstraintthe helix constraint to be applied

◆ ~HelixHandler()

IntaRNA::HelixHandler::~HelixHandler ( )
inlinevirtual

destruction

Member Function Documentation

◆ fillHelix()

virtual size_t IntaRNA::HelixHandler::fillHelix ( const size_t  i1,
const size_t  j1,
const size_t  i2,
const size_t  j2 
)
pure virtual

Computes the helix information for the given interval boundaries

Parameters
i1the first index of seq1 that might interact
j1the last index of seq1 that might interact
i2the first index of seq2 that might interact
j2the last index of seq2 that might interact
Returns
the number of potential helix interactions

Implemented in IntaRNA::HelixHandlerIdxOffset, IntaRNA::HelixHandlerNoBulgeMax, and IntaRNA::HelixHandlerUnpaired.

◆ fillHelixSeed()

virtual size_t IntaRNA::HelixHandler::fillHelixSeed ( const size_t  i1,
const size_t  j1,
const size_t  i2,
const size_t  j2 
)
pure virtual

Computes the helix information for the given interval boundaries for helices containing a seed

Parameters
i1the first index of seq1 that might interact
j1the last index of seq1 that might interact
i2the first index of seq2 that might interact
j2the last index of seq2 that might interact
Returns
the number of potential helix interactions

Implemented in IntaRNA::HelixHandlerIdxOffset, IntaRNA::HelixHandlerNoBulgeMax, and IntaRNA::HelixHandlerUnpaired.

◆ getConstraint()

virtual const HelixConstraint & IntaRNA::HelixHandler::getConstraint ( ) const
pure virtual

Access to the underlying helix constraint

Returns
the used helix constraint

Implemented in IntaRNA::HelixHandlerIdxOffset, IntaRNA::HelixHandlerNoBulgeMax, and IntaRNA::HelixHandlerUnpaired.

◆ getHelixE()

virtual E_type IntaRNA::HelixHandler::getHelixE ( const size_t  i1,
const size_t  i2 
) const
pure virtual

Access to the mfe of any helix with left-most base pair (i1,i2)

Parameters
i1the left most interacting base of seq1
i2the left most interacting base of seq2
Returns
the mfe of any helix starting at (i1,i2) or E_INF if none possible

Implemented in IntaRNA::HelixHandlerIdxOffset, IntaRNA::HelixHandlerNoBulgeMax, and IntaRNA::HelixHandlerUnpaired.

◆ getHelixHandler()

static HelixHandler * IntaRNA::HelixHandler::getHelixHandler ( const InteractionEnergy &  energy,
const HelixConstraint &  helixConstraint,
SeedHandler *const  seedHandler = NULL 
)
static

Provides a newly allocated helixHandler according to the user defined parameters

Parameters
energythe interaction energy handler to be used
helixConstraintthe helixConstraint to be used
Returns
the newly allocated HelixHandler object

◆ getHelixLength1()

virtual size_t IntaRNA::HelixHandler::getHelixLength1 ( const size_t  i1,
const size_t  i2 
) const
pure virtual

Access to the length in seq1 of the mfe helix with left-most base pair (i1,i2)

Parameters
i1the left most interacting base of seq1
i2the left most interacting base of seq2
Returns
the length in seq1 of the mfe helix starting at (i1,i2) or 0 if none possible

Implemented in IntaRNA::HelixHandlerIdxOffset, IntaRNA::HelixHandlerNoBulgeMax, and IntaRNA::HelixHandlerUnpaired.

◆ getHelixLength2()

virtual size_t IntaRNA::HelixHandler::getHelixLength2 ( const size_t  i1,
const size_t  i2 
) const
pure virtual

Access to the length in seq2 of the mfe helix with left-most base pair (i1,i2)

Parameters
i1the left most interacting base of seq1
i2the left most interacting base of seq2
Returns
the length in seq2 of the mfe helix starting at (i1,i2) or 0 if none possible

Implemented in IntaRNA::HelixHandlerIdxOffset, IntaRNA::HelixHandlerNoBulgeMax, and IntaRNA::HelixHandlerUnpaired.

◆ getHelixSeedE()

virtual E_type IntaRNA::HelixHandler::getHelixSeedE ( const size_t  i1,
const size_t  i2 
) const
pure virtual

Access to the mfe of any helix with left-most base pair (i1,i2)

Parameters
i1the left most interacting base of seq1
i2the left most interaction base of seq2
Returns
the mfe of any helix starting at (i1,i2) or E_INF if none possible

Implemented in IntaRNA::HelixHandlerIdxOffset, IntaRNA::HelixHandlerNoBulgeMax, and IntaRNA::HelixHandlerUnpaired.

◆ getHelixSeedLength1()

virtual size_t IntaRNA::HelixHandler::getHelixSeedLength1 ( const size_t  i1,
const size_t  i2 
) const
pure virtual

Access to the length in seq1 of the mfe helix with left-most base pair (i1,i2) containing a seed

Parameters
i1the left most interacting base of seq1
i2the left most interacting base of seq2
Returns
the length in seq1 of the mfe helix starting at (i1,i2) or 0 if none possible

Implemented in IntaRNA::HelixHandlerIdxOffset, IntaRNA::HelixHandlerNoBulgeMax, and IntaRNA::HelixHandlerUnpaired.

◆ getHelixSeedLength2()

virtual size_t IntaRNA::HelixHandler::getHelixSeedLength2 ( const size_t  i1,
const size_t  i2 
) const
pure virtual

Access to the length in seq2 of the mfe helix with left-most base pair (i1,i2) containing a seed

Parameters
i1the left most interacting base of seq1
i2the left most interacting base of seq2
Returns
the length in seq2 of the mfe helix starting at (i1,i2) or 0 if none possible

Implemented in IntaRNA::HelixHandlerIdxOffset, IntaRNA::HelixHandlerNoBulgeMax, and IntaRNA::HelixHandlerUnpaired.

◆ getInteractionEnergy()

virtual const InteractionEnergy & IntaRNA::HelixHandler::getInteractionEnergy ( ) const
pure virtual

Access to the underlying interaction energy function

Returns
the used energy function

Implemented in IntaRNA::HelixHandlerIdxOffset, IntaRNA::HelixHandlerNoBulgeMax, and IntaRNA::HelixHandlerUnpaired.

◆ setSeedHandler()

virtual void IntaRNA::HelixHandler::setSeedHandler ( SeedHandler &  seedHandler)
pure virtual

Set the seedHandler used in the helixHandlerSeed computation

Implemented in IntaRNA::HelixHandlerIdxOffset, IntaRNA::HelixHandlerNoBulgeMax, and IntaRNA::HelixHandlerUnpaired.

◆ traceBackHelix()

virtual void IntaRNA::HelixHandler::traceBackHelix ( Interaction &  interaction,
const size_t  i1,
const size_t  i2 
)
pure virtual

Identifies the base pairs of the mfe helix interaction starting at i1,i2 and writes them to the provided container

NOTE: the left- and right-most base pair is excluded!

Parameters
interactionthe container to add the base pairs too
i1the start of the helix in seq1
i2the start of the helix in seq2

Implemented in IntaRNA::HelixHandlerIdxOffset, IntaRNA::HelixHandlerNoBulgeMax, and IntaRNA::HelixHandlerUnpaired.

◆ traceBackHelixSeed()

virtual void IntaRNA::HelixHandler::traceBackHelixSeed ( Interaction &  interaction,
const size_t  i1,
const size_t  i2 
)
pure virtual

Identifies the base pairs of the mfe helix interaction, containing a seed, starting at i1,i2 and writes them to the provided container

NOTE: the left- and right-most base pair is excluded!

Parameters
interactionthe container to add the base pairs too
i1the start of the helix in seq1
i2the start of the helix in seq2

Implemented in IntaRNA::HelixHandlerIdxOffset, IntaRNA::HelixHandlerUnpaired, and IntaRNA::HelixHandlerNoBulgeMax.


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