本文整理匯總了C++中SiteContainer::getSequencesNames方法的典型用法代碼示例。如果您正苦於以下問題:C++ SiteContainer::getSequencesNames方法的具體用法?C++ SiteContainer::getSequencesNames怎麽用?C++ SiteContainer::getSequencesNames使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類SiteContainer
的用法示例。
在下文中一共展示了SiteContainer::getSequencesNames方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的C++代碼示例。
示例1: merge
void SiteContainerTools::merge(SiteContainer& seqCont1, const SiteContainer& seqCont2, bool leavePositionAsIs)
throw (AlphabetMismatchException, Exception)
{
if (seqCont1.getAlphabet()->getAlphabetType() != seqCont2.getAlphabet()->getAlphabetType())
throw AlphabetMismatchException("SiteContainerTools::merge.", seqCont1.getAlphabet(), seqCont2.getAlphabet());
vector<string> seqNames1 = seqCont1.getSequencesNames();
vector<string> seqNames2 = seqCont2.getSequencesNames();
const SiteContainer* seqCont2bis = 0;
bool del = false;
if (seqNames1 == seqNames2)
{
seqCont2bis = &seqCont2;
}
else
{
// We shall reorder sequences first:
SiteContainer* seqCont2ter = new VectorSiteContainer(seqCont2.getAlphabet());
SequenceContainerTools::getSelectedSequences(seqCont2, seqNames1, *seqCont2ter);
seqCont2bis = seqCont2ter;
del = true;
}
if (leavePositionAsIs)
{
for (size_t i = 0; i < seqCont2bis->getNumberOfSites(); i++)
{
seqCont1.addSite(seqCont2bis->getSite(i), false);
}
}
else
{
int offset = static_cast<int>(seqCont1.getNumberOfSites());
for (size_t i = 0; i < seqCont2bis->getNumberOfSites(); i++)
{
seqCont1.addSite(seqCont2bis->getSite(i), offset + seqCont2bis->getSite(i).getPosition(), false);
}
}
if (del)
delete seqCont2bis;
}
示例2: AbstractSequenceContainer
VectorSiteContainer::VectorSiteContainer(const SiteContainer& sc) :
AbstractSequenceContainer(sc),
sites_(0),
names_(sc.getSequencesNames()),
comments_(sc.getNumberOfSequences()),
sequences_(sc.getNumberOfSequences())
{
// Now try to add each site:
for (size_t i = 0; i < sc.getNumberOfSites(); i++)
{
addSite(sc.getSite(i), false); // We assume that positions are correct.
}
// Seq comments:
for (size_t i = 0; i < sc.getNumberOfSequences(); i++)
{
comments_[i] = new Comments(sc.getComments(i));
}
}