1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89
|
/////////////////////////////////////////////////////////////////////////////
// File: gnFileContig.h
// Purpose: File Position holder.
// Description:
// Changes:
// Version: libGenome 0.5.1
// Author: Aaron Darling
// Modified by:
// Copyright: (c) Aaron Darling
// Licenses: See COPYING file for details
/////////////////////////////////////////////////////////////////////////////
#ifdef HAVE_CONFIG_H
#include "config.h"
#endif
#include "libGenome/gnFileContig.h"
#include <iostream>
using namespace std;
namespace genome {
gnFileContig::gnFileContig()
{
Clear();
}
gnFileContig::gnFileContig( string nameStr, const uint64 s, const uint64 e )
{
Clear();
m_name = nameStr;
m_fileStartEnd.first = s;
m_fileStartEnd.second = e;
}
gnFileContig::gnFileContig( const gnFileContig& fc )
{
m_name = fc.m_name;
m_seqLength = fc.m_seqLength;
m_fileStartEnd = fc.m_fileStartEnd;
for( uint32 i=0; i < CONTIG_SECTION_SIZE; ++i )
m_startEndArray[i] = fc.m_startEndArray[i];
m_repeatSeqGap = fc.m_repeatSeqGap;
m_repeatSeqGapSize = fc.m_repeatSeqGapSize;
}
gnFileContig::~gnFileContig()
{
}
void gnFileContig::Clear()
{
m_name = "";
m_seqLength = 0;
m_fileStartEnd = pair<uint64,uint64>(0,0);
for( uint32 i=0; i < CONTIG_SECTION_SIZE; ++i )
m_startEndArray[i] = pair<uint64,uint64>(0,0);
m_repeatSeqGap = false;
m_repeatSeqGapSize = pair<uint64,uint64>(0,0);
}
boolean gnFileContig::SetRepeatSeqSize( const uint64 seqSize )
{
if( !m_repeatSeqGap )
return false;
if( m_repeatSeqGapSize.first == seqSize )
return true;
if( m_repeatSeqGapSize.first == 0 )
{
m_repeatSeqGapSize.first = seqSize;
return true;
}
m_repeatSeqGap = false;
return false;
}
boolean gnFileContig::SetRepeatGapSize( const uint64 gapSize )
{
if( !m_repeatSeqGap )
return false;
if( m_repeatSeqGapSize.second == gapSize )
return true;
if( m_repeatSeqGapSize.second == 0 )
{
m_repeatSeqGapSize.second = gapSize;
return true;
}
m_repeatSeqGap = false;
return false;
}
} // end namespace genome
|