ContigJoin Struct Reference

Collaboration diagram for ContigJoin:

Collaboration graph
[legend]
List of all members.

Public Types

enum  { notDetermined = 2000000000 }

Public Member Functions

 ContigJoin (ContigHitOnRead *pa, ContigHitOnRead *pb, ReadInfo *pReadInfo)
bool operator< (const ContigJoin &rhs) const

Public Attributes

ContigHitOnReada
ContigHitOnReadb
int gapSize
int gapSD

Detailed Description

Definition at line 130 of file OrderOrient.cpp.


Member Enumeration Documentation

anonymous enum

Enumerator:
notDetermined 

Definition at line 132 of file OrderOrient.cpp.

00132 { notDetermined=2000000000 };


Constructor & Destructor Documentation

ContigJoin::ContigJoin ( ContigHitOnRead pa,
ContigHitOnRead pb,
ReadInfo pReadInfo 
) [inline]

Definition at line 136 of file OrderOrient.cpp.

References a, b, ContigHitOnRead::contigNum, contigSizes, gapSD, gapSize, ReadInfo::insertMean, ReadInfo::insertSD, ContigHitOnRead::isForward, and ContigHitOnRead::position.

00139   {
00140     if (pa->contigNum<pb->contigNum)
00141     { 
00142       a=pa; b=pb;
00143     }
00144     else
00145     { 
00146       a=pb; b=pa;
00147     }
00148     
00149     int minInsert 
00150       =  ((a->isForward) 
00151       ? contigSizes[a->contigNum]-a->position // TBD +1 ?????
00152       : a->position )
00153       + ((b->isForward) 
00154       ? contigSizes[b->contigNum]-b->position // TBD +1 ?????
00155       : b->position);
00156 
00157     if (minInsert>pReadInfo->insertMean+(3*pReadInfo->insertSD))
00158     { 
00159       cout << "WARNING: lower bound for insert=" << minInsert
00160            << " mean=" << pReadInfo->insertMean
00161            << " SD=" << pReadInfo->insertSD << endl;
00162       // TBD throw an exception, catch outside ctor
00163     }
00164 
00165     gapSize=pReadInfo->insertMean-minInsert;
00166     gapSD=pReadInfo->insertSD;
00167 
00168     if (gapSize<0)
00169     {
00170       cout << "WARNING: estimated gap size=" << gapSize
00171            << endl;
00172       //      gapSize=0;
00173     }
00174     else cout << "Computed gap size of " << gapSize 
00175               << ", SD=" << gapSD << endl;
00176 
00177 
00178   }


Member Function Documentation

bool ContigJoin::operator< ( const ContigJoin rhs  )  const [inline]

Definition at line 185 of file OrderOrient.cpp.

References a, b, and ContigHitOnRead::contigNum.

00186   {
00187     return (    ( a->contigNum < rhs.a->contigNum )
00188              || (    ( a->contigNum == rhs.a->contigNum )
00189                   && ( b->contigNum < rhs.b->contigNum )) ); 
00190   }


Member Data Documentation

ContigHitOnRead* ContigJoin::a

Definition at line 180 of file OrderOrient.cpp.

Referenced by ContigJoin(), and operator<().

ContigHitOnRead* ContigJoin::b

Definition at line 181 of file OrderOrient.cpp.

Referenced by ContigJoin(), and operator<().

int ContigJoin::gapSize

Definition at line 182 of file OrderOrient.cpp.

Referenced by ContigJoin().

int ContigJoin::gapSD

Definition at line 183 of file OrderOrient.cpp.

Referenced by ContigJoin().


The documentation for this struct was generated from the following file:
Generated on Fri Dec 21 13:15:52 2007 for ssaha by  doxygen 1.5.2