35 #ifndef CU_ALGALIGN_HPP
36 #define CU_ALGALIGN_HPP
90 vector<
int>* starts =
NULL, vector<
int>* lengths =
NULL);
int MapPositionToMaster(int childPos, const CSeq_align &align)
void MakeDDFromSeqLoc(CSeq_loc *pAl, TDendiag *pDD)
void MakeSeqLocFromDD(const TDendiag *pDD, CSeq_loc *pAl)
TDendiag::const_iterator TDendiag_cit
TGi GetMasterGIFromSeqAlign(const CRef< CSeq_align > &seqAlign, string &err)
int GetLowerBound(const CRef< CSeq_align > &seqAlign, bool onMaster)
CRef< CSeq_align > ExtractFirstSeqAlign(CRef< CSeq_align > seqAlign)
CSeq_align::C_Segs::TDendiag TDendiag
bool CheckSeqIdInDD(const CRef< CSeq_align > &seqAlign)
bool ChangeSeqIdInSeqAlign(CRef< CSeq_align > &sa, const CRef< CSeq_id > &newSeqId, bool onMaster)
int GetAlignedPositions(const CRef< CSeq_align > &align1, const CRef< CSeq_align > &align2, vector< int > &alignedPositions, bool onMaster)
int GetBlockStartsForMaster(const CRef< CSeq_align > &seqAlign, vector< int > &starts)
CRef< CSeq_align > Denseg2DenseDiagList(const CRef< CSeq_align > &denseSegSeqAlign)
int GetBlockCount(const CRef< CSeq_align > &seqAlign)
int MapPosition(const CSeq_align &seqAlign, int Position, CoordMapDir mapDir)
bool IsPositionAligned(const CSeq_align &seqAlign, int Position, bool onMaster)
bool GetDenDiagSet(const CRef< CSeq_annot > &seqAnnot, int row, const TDendiag *&pDenDiagSet)
void SetAlignedResiduesOnSequence(const CRef< CSeq_align > &align, const string &sequenceString, char *&pAlignedRes, bool isMaster=false)
TDendiag::iterator TDendiag_it
int GetBlockNumberForResidue(int residue, const CRef< CSeq_align > &seqAlign, bool onMaster, vector< int > *starts=NULL, vector< int > *lengths=NULL)
void AddIntervalToDD(TDendiag *pDD, CRef< CSeq_id > seqID1, CRef< CSeq_id > seqID2, TSeqPos st1, TSeqPos st2, TSeqPos lll)
bool GetFirstOrLastDenDiag(const CRef< CSeq_align > &seqAlign, bool firstOrLast, CRef< CDense_diag > &dd)
bool EraseRow(CRef< CSeq_annot > &seqAnnot, int row)
int GetBlockLengths(const CRef< CSeq_align > &seqAlign, vector< int > &lengths)
bool GetSeqID(const CRef< CSeq_align > &seqAlign, CRef< CSeq_id > &SeqID, bool getSlave=true)
bool GetPendingSeqId(CCdCore *pCD, int irow, CRef< CSeq_id > &seqID)
int MapPositionToChild(int masterPos, const CSeq_align &align)
int GetBlockStarts(const CRef< CSeq_align > &seqAlign, vector< int > &starts, bool onMaster)
int GetUpperBound(const CRef< CSeq_align > &seqAlign, bool onMaster)
bool SetDenDiagSet(CRef< CSeq_annot > &seqAnnot, int row, TDendiag *&pddSet)
int GetPssmIdFromSeqAlign(const CRef< CSeq_align > &seqAlign, string &err)
bool GetDDSetFromSeqAlign(const CSeq_align &align, const TDendiag *&dd)
int GetNumAlignedResidues(const CRef< CSeq_align > &align)
unsigned int TSeqPos
Type for sequence locations and lengths.
#define END_NCBI_SCOPE
End previously defined NCBI scope.
#define END_SCOPE(ns)
End the previously defined scope.
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
#define BEGIN_SCOPE(ns)
Define a new scope.
#define NCBI_CDUTILS_EXPORT
Defines command line argument related classes.
#define row(bind, expected)