本文整理汇总了C++中Seq::GetName方法的典型用法代码示例。如果您正苦于以下问题:C++ Seq::GetName方法的具体用法?C++ Seq::GetName怎么用?C++ Seq::GetName使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Seq
的用法示例。
在下文中一共展示了Seq::GetName方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: PadToMSA
void SeqVect::PadToMSA(MSA &msa)
{
unsigned uSeqCount = Length();
if (0 == uSeqCount)
{
msa.Clear();
return;
}
unsigned uLongestSeqLength = 0;
for (unsigned uSeqIndex = 0; uSeqIndex < uSeqCount; ++uSeqIndex)
{
Seq *ptrSeq = at(uSeqIndex);
unsigned uColCount = ptrSeq->Length();
if (uColCount > uLongestSeqLength)
uLongestSeqLength = uColCount;
}
msa.SetSize(uSeqCount, uLongestSeqLength);
for (unsigned uSeqIndex = 0; uSeqIndex < uSeqCount; ++uSeqIndex)
{
Seq *ptrSeq = at(uSeqIndex);
msa.SetSeqName(uSeqIndex, ptrSeq->GetName());
unsigned uColCount = ptrSeq->Length();
unsigned uColIndex;
for (uColIndex = 0; uColIndex < uColCount; ++uColIndex)
{
char c = ptrSeq->at(uColIndex);
msa.SetChar(uSeqIndex, uColIndex, c);
}
while (uColIndex < uLongestSeqLength)
msa.SetChar(uSeqIndex, uColIndex++, '.');
}
}
示例2: EstringOp
void EstringOp(const short es[], const Seq &sIn, Seq &sOut)
{
#if DEBUG
unsigned uSymbols;
unsigned uIndels;
EstringCounts(es, &uSymbols, &uIndels);
assert(sIn.Length() == uSymbols);
#endif
sOut.Clear();
sOut.SetName(sIn.GetName());
int p = 0;
for (;;)
{
int n = *es++;
if (0 == n)
break;
if (n > 0)
for (int i = 0; i < n; ++i)
{
char c = sIn[p++];
sOut.push_back(c);
}
else
for (int i = 0; i < -n; ++i)
sOut.push_back('-');
}
}
示例3: Copy
void Seq::Copy(const Seq &rhs)
{
clear();
const unsigned uLength = rhs.Length();
for (unsigned uColIndex = 0; uColIndex < uLength; ++uColIndex)
push_back(rhs.at(uColIndex));
const char *ptrName = rhs.GetName();
size_t n = strlen(ptrName) + 1;
m_ptrName = new char[n];
strcpy(m_ptrName, ptrName);
}
示例4: PathSeq
static void PathSeq(const Seq &s, const PWPath &Path, bool bRight, Seq &sOut)
{
short *esA;
short *esB;
PathToEstrings(Path, &esA, &esB);
const unsigned uSeqLength = s.Length();
const unsigned uEdgeCount = Path.GetEdgeCount();
sOut.Clear();
sOut.SetName(s.GetName());
unsigned uPos = 0;
for (unsigned uEdgeIndex = 0; uEdgeIndex < uEdgeCount; ++uEdgeIndex)
{
const PWEdge &Edge = Path.GetEdge(uEdgeIndex);
char cType = Edge.cType;
if (bRight)
{
if (cType == 'I')
cType = 'D';
else if (cType == 'D')
cType = 'I';
}
switch (cType)
{
case 'M':
sOut.AppendChar(s[uPos++]);
break;
case 'D':
sOut.AppendChar('-');
break;
case 'I':
sOut.AppendChar(s[uPos++]);
break;
default:
Quit("PathSeq, invalid edge type %c", cType);
}
}
}