Main Page | Namespace List | Class Hierarchy | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

AMOS::Fragment_t Class Reference

Single piece of DNA. More...

#include <Fragment_AMOS.hh>

Inheritance diagram for AMOS::Fragment_t:

Inheritance graph
[legend]
Collaboration diagram for AMOS::Fragment_t:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 Fragment_t ()
 Contstructs an empty Fragment_t object.
 Fragment_t (const Fragment_t &source)
 Copy constructor.
 ~Fragment_t ()
 Destroys a Fragment_t object.
virtual void clear ()
 Clears all object data, reinitializes the object.
virtual NCode_t getNCode () const
 Get the AMOS NCode type identifier.
ID_t getLibrary () const
 Get the parent library IID.
std::pair< ID_t, ID_tgetMatePair () const
 Get the paired sequencing reads for this fragment.
Size_t getSize () const
 Get the size of the fragment, if known.
std::pair< ID_t, NCode_tgetSource () const
 Get the fragment source IID and type.
FragmentType_t getType () const
 Get the fragment type.
virtual void readMessage (const Message_t &msg)
 Reads in data from a Message object.
void setLibrary (ID_t library)
 Set the parent library IID.
void setReads (std::pair< ID_t, ID_t > reads)
 Set the paired sequencing reads for this fragment.
void setSize (Size_t size)
 Set the size of the fragment, if known.
void setSource (std::pair< ID_t, NCode_t > source)
 Set the link source IID and type.
void setType (FragmentType_t type)
 Set the fragment type.
virtual void writeMessage (Message_t &msg) const
 Writes data to a Message object.
const std::string & getComment () const
 Get the comment string.
const Status_t getStatus () const
 Get the status value.
void setComment (const std::string &comment)
 Set the comment string.
void setStatus (Status_t status)
 Set the status value.
const std::string & getEID () const
 Get the external ID.
ID_t getIID () const
 Get the internal ID.
bool isRemoved () const
 Check if the object is waiting to be removed from the bank.
bool isModified () const
 Check if the object has been modified.
bool isFlagA () const
 Check the value of flag A.
bool isFlagB () const
 Check the value of flag B.
void setEID (const std::string &eid)
 Set the external ID.
void setFlagA (bool flag)
 Set flag A.
void setFlagB (bool flag)
 Set flag B.
void setIID (ID_t iid)
 Set the internal ID.

Static Public Attributes

const NCode_t NCODE = M_FRAGMENT
 The NCode type identifier for this object.
const FragmentType_t NULL_FRAGMENT = 0
const FragmentType_t OTHER = 'X'
const FragmentType_t BAC = 'B'
const FragmentType_t INSERT = 'I'
const FragmentType_t TRANSPOSON = 'T'
const FragmentType_t WALK = 'W'

Protected Member Functions

virtual void readRecord (std::istream &fix, std::istream &var)
 Read selected class members from a biserial record.
virtual void writeRecord (std::ostream &fix, std::ostream &var) const
 Write selected class members to a biserial record.

Protected Attributes

ID_t iid_m
 internal ID (integer AMOS identifier)
std::string eid_m
 external ID (anything you want sans newlines)
BankFlags_t flags_m
 bank flags, derived classes may use "nibble"

Detailed Description

Single piece of DNA.

A single piece of DNA from which a group of reads were sequenced. This allows for the hierarchical clustering of reads that come from the same fragment. Mate-pair information is also stored in this type.

Definition at line 30 of file Fragment_AMOS.hh.


Constructor & Destructor Documentation

AMOS::Fragment_t::Fragment_t  )  [inline]
 

Contstructs an empty Fragment_t object.

Sets all members to NULL Definition at line 70 of file Fragment_AMOS.hh.

References NULL_FRAGMENT, AMOS::NULL_ID, and AMOS::NULL_NCODE.

AMOS::Fragment_t::Fragment_t const Fragment_t source  )  [inline]
 

Copy constructor.

Definition at line 82 of file Fragment_AMOS.hh.

AMOS::Fragment_t::~Fragment_t  )  [inline]
 

Destroys a Fragment_t object.

Definition at line 91 of file Fragment_AMOS.hh.


Member Function Documentation

void Fragment_t::clear  )  [virtual]
 

Clears all object data, reinitializes the object.

Reimplemented from AMOS::Universal_t.

Definition at line 28 of file Fragment_AMOS.cc.

References AMOS::Universal_t::clear(), NULL_FRAGMENT, AMOS::NULL_ID, and AMOS::NULL_NCODE.

Referenced by readMessage(), and writeMessage().

const std::string& AMOS::Universal_t::getComment  )  const [inline, inherited]
 

Get the comment string.

Returns:
The comment string
Definition at line 110 of file Universal_AMOS.hh.

Referenced by AMOS::operator<<().

const std::string& AMOS::IBankable_t::getEID  )  const [inline, inherited]
 

Get the external ID.

Returns:
The external ID
Definition at line 156 of file Bank_AMOS.hh.

References AMOS::IBankable_t::eid_m.

Referenced by AMOS::Contig_t::writeUMD().

ID_t AMOS::IBankable_t::getIID  )  const [inline, inherited]
 

Get the internal ID.

Returns:
The internal ID
Definition at line 167 of file Bank_AMOS.hh.

References AMOS::ID_t, and AMOS::IBankable_t::iid_m.

Referenced by AMOS::Index_t::buildContigFeature(), AMOS::Index_t::buildContigScaffold(), AMOS::Index_t::buildReadContig(), AMOS::Index_t::buildReadLibrary(), AMOS::Index_t::buildScaffoldFeature(), and AMOS::operator<<().

ID_t AMOS::Fragment_t::getLibrary  )  const [inline]
 

Get the parent library IID.

Returns:
The IID of the parent library
Definition at line 113 of file Fragment_AMOS.hh.

References AMOS::ID_t.

std::pair<ID_t, ID_t> AMOS::Fragment_t::getMatePair  )  const [inline]
 

Get the paired sequencing reads for this fragment.

Orientation of the pair can be deduced from the fragment type. An INSERT fragment will have innie mates and a TRANSPOSON fragment will have outie mates.

Returns:
The mated reads
Definition at line 128 of file Fragment_AMOS.hh.

virtual NCode_t AMOS::Fragment_t::getNCode  )  const [inline, virtual]
 

Get the AMOS NCode type identifier.

Returns:
The AMOS NCode type identifier

Reimplemented from AMOS::Universal_t.

Definition at line 102 of file Fragment_AMOS.hh.

References AMOS::NCode_t.

Size_t AMOS::Fragment_t::getSize  )  const [inline]
 

Get the size of the fragment, if known.

Size will be 0 if unknown. If exact size is unknown, the parent library of this fragment should contain an estimated size distribution.

Returns:
The size of the fragment
Definition at line 142 of file Fragment_AMOS.hh.

References AMOS::Size_t.

std::pair<ID_t, NCode_t> AMOS::Fragment_t::getSource  )  const [inline]
 

Get the fragment source IID and type.

Returns the source this fragment was generated from, e.g. the insert fragment used for a PCR walk.

Returns:
The IID of the fragment source and the NCode type identifier
Definition at line 156 of file Fragment_AMOS.hh.

const Status_t AMOS::Universal_t::getStatus  )  const [inline, inherited]
 

Get the status value.

Returns:
The status value
Definition at line 121 of file Universal_AMOS.hh.

References AMOS::Status_t.

FragmentType_t AMOS::Fragment_t::getType  )  const [inline]
 

Get the fragment type.

Returns:
The type of fragment
Definition at line 167 of file Fragment_AMOS.hh.

References AMOS::FragmentType_t.

bool AMOS::IBankable_t::isFlagA  )  const [inline, inherited]
 

Check the value of flag A.

Returns:
The value of flag A
Definition at line 210 of file Bank_AMOS.hh.

References AMOS::IBankable_t::flags_m.

Referenced by AMOS::Universal_t::writeMessage(), and AMOS::Overlap_t::writeMessage().

bool AMOS::IBankable_t::isFlagB  )  const [inline, inherited]
 

Check the value of flag B.

Returns:
The value of flag B
Definition at line 221 of file Bank_AMOS.hh.

References AMOS::IBankable_t::flags_m.

Referenced by AMOS::Universal_t::writeMessage(), and AMOS::Overlap_t::writeMessage().

bool AMOS::IBankable_t::isModified  )  const [inline, inherited]
 

Check if the object has been modified.

Returns:
true if modified, otherwise false
Definition at line 199 of file Bank_AMOS.hh.

References AMOS::IBankable_t::flags_m.

bool AMOS::IBankable_t::isRemoved  )  const [inline, inherited]
 

Check if the object is waiting to be removed from the bank.

Note:
Useful for debugging only
Returns:
true if removed, otherwise false
Definition at line 188 of file Bank_AMOS.hh.

References AMOS::IBankable_t::flags_m.

void Fragment_t::readMessage const Message_t msg  )  [virtual]
 

Reads in data from a Message object.

Reads the data contained in a Message object and stores it in the Messagable object. Will not complain if incoming message is of the wrong type, will only try and suck out the fields it recognizes. All previous data in the Messagable object will be cleared or overwritten.

Parameters:
msg The Message to read from
Precondition:
The expected fields are formatted properly
Exceptions:
ArgumentException_t 
Returns:
void

Reimplemented from AMOS::Universal_t.

Definition at line 39 of file Fragment_AMOS.cc.

References AMOS_THROW_ARGUMENT, clear(), AMOS::Encode(), AMOS::F_LIBRARY, AMOS::F_READS, AMOS::F_SIZE, AMOS::F_SOURCE, AMOS::F_TYPE, AMOS::NCODE_SIZE, AMOS::Universal_t::readMessage(), and setType().

void Fragment_t::readRecord std::istream &  fix,
std::istream &  var
[protected, virtual]
 

Read selected class members from a biserial record.

Reads the fixed and variable length streams from a biserial record and initializes the class members to the values stored within. Used in translating a biserial IBankable object, and needed to retrieve objects from a bank.

Note:
This method must be able to interpret the biserial record produced by its related function writeRecord.
Parameters:
fix The fixed length stream (stores all fixed length members)
var The variable length stream (stores all var length members)
Precondition:
The get pointer of fix is at the beginning of the record

The get pointer of var is at the beginning of the record

Returns:
void

Reimplemented from AMOS::Universal_t.

Definition at line 105 of file Fragment_AMOS.cc.

References AMOS::readLE(), and AMOS::Universal_t::readRecord().

void AMOS::Universal_t::setComment const std::string &  comment  )  [inline, inherited]
 

Set the comment string.

Parameters:
comment The new comment string
Returns:
void
Definition at line 144 of file Universal_AMOS.hh.

void AMOS::IBankable_t::setEID const std::string &  eid  )  [inline, inherited]
 

Set the external ID.

Will only use the characters up to but not including the first newline.

Returns:
void
Definition at line 234 of file Bank_AMOS.hh.

References AMOS::IBankable_t::eid_m, and AMOS::NL_CHAR.

Referenced by AMOS::Contig_t::readUMD().

void AMOS::IBankable_t::setFlagA bool  flag  )  [inline, inherited]
 

Set flag A.

Has no effect on the actual object in memory other than setting a flag. This is one of two user accessible flags to be used as needed, the other is flag B.

Parameters:
flag The new flag A value
Returns:
void
Definition at line 254 of file Bank_AMOS.hh.

References AMOS::IBankable_t::flags_m.

Referenced by AMOS::Universal_t::readMessage(), and AMOS::Overlap_t::readMessage().

void AMOS::IBankable_t::setFlagB bool  flag  )  [inline, inherited]
 

Set flag B.

Has no effect on the actual object in memory other than setting a flag. This is one of two user accessible flags to be used as needed, the other is flag A.

Parameters:
flag The new flag B value
Returns:
void
Definition at line 270 of file Bank_AMOS.hh.

References AMOS::IBankable_t::flags_m.

Referenced by AMOS::Universal_t::readMessage(), and AMOS::Overlap_t::readMessage().

void AMOS::IBankable_t::setIID ID_t  iid  )  [inline, inherited]
 

Set the internal ID.

Parameters:
iid The new internal ID
Returns:
void
Definition at line 282 of file Bank_AMOS.hh.

References AMOS::ID_t, and AMOS::IBankable_t::iid_m.

void AMOS::Fragment_t::setLibrary ID_t  library  )  [inline]
 

Set the parent library IID.

Parameters:
library The new IID of parent library
Returns:
void
Definition at line 183 of file Fragment_AMOS.hh.

References AMOS::ID_t.

void AMOS::Fragment_t::setReads std::pair< ID_t, ID_t reads  )  [inline]
 

Set the paired sequencing reads for this fragment.

Orientation of the pair can be stored in the fragment type. An INSERT fragment will have innie mates and a TRANSPOSON fragment will have outie mates.

Parameters:
reads The new pair of read IIDs
Returns:
void
Definition at line 199 of file Fragment_AMOS.hh.

void AMOS::Fragment_t::setSize Size_t  size  )  [inline]
 

Set the size of the fragment, if known.

Parameters:
size The size of the fragment
Returns:
void
Definition at line 211 of file Fragment_AMOS.hh.

References AMOS::Size_t.

void AMOS::Fragment_t::setSource std::pair< ID_t, NCode_t source  )  [inline]
 

Set the link source IID and type.

Sets the source this fragment was generated from, e.g. the insert fragment used for a PCR walk.

Parameters:
source The IID and NCode type of the fragment source
Returns:
void
Definition at line 226 of file Fragment_AMOS.hh.

void AMOS::Universal_t::setStatus Status_t  status  )  [inline, inherited]
 

Set the status value.

Parameters:
status The new status value
Returns:
void
Definition at line 156 of file Universal_AMOS.hh.

References AMOS::Status_t.

Referenced by AMOS::Universal_t::readMessage().

void Fragment_t::setType FragmentType_t  type  ) 
 

Set the fragment type.

Parameters:
type The new fragment type
Precondition:
type is one of [OITB] or NULL
Exceptions:
ArgumentException_t 
Returns:
void
Definition at line 120 of file Fragment_AMOS.cc.

References AMOS_THROW_ARGUMENT, BAC, AMOS::FragmentType_t, INSERT, NULL_FRAGMENT, OTHER, TRANSPOSON, and WALK.

Referenced by readMessage().

void Fragment_t::writeMessage Message_t msg  )  const [virtual]
 

Writes data to a Message object.

Writes the data contained in a Messagable object to a Message object. All previous data in the Message will be cleared or overwritten.

Parameters:
msg The Message to write to
Returns:
void

Reimplemented from AMOS::Universal_t.

Definition at line 139 of file Fragment_AMOS.cc.

References clear(), AMOS::Decode(), AMOS::F_LIBRARY, AMOS::F_READS, AMOS::F_SIZE, AMOS::F_SOURCE, AMOS::F_TYPE, NULL_FRAGMENT, AMOS::NULL_ID, AMOS::NULL_NCODE, AMOS::NULL_STRING, and AMOS::Universal_t::writeMessage().

void Fragment_t::writeRecord std::ostream &  fix,
std::ostream &  var
const [protected, virtual]
 

Write selected class members to a biserial record.

Writes the fixed and variable length streams to a biserial record. Used in generating a biserial IBankable object, and needed to commit objects to a bank. Should not write the flags, EID, or IID of the object because the bank will handle the storage of these fields on its own.

Note:
This method must be able to produce a biserial record that can be read by its related funtion readRecord.
Parameters:
fix The fixed length stream (stores all fixed length members)
var The variable length stream (stores all var length members)
Returns:
void

Reimplemented from AMOS::Universal_t.

Definition at line 192 of file Fragment_AMOS.cc.

References AMOS::writeLE(), and AMOS::Universal_t::writeRecord().


Member Data Documentation

const FragmentType_t Fragment_t::BAC = 'B' [static]
 

Definition at line 21 of file Fragment_AMOS.cc.

Referenced by setType().

std::string AMOS::IBankable_t::eid_m [protected, inherited]
 

external ID (anything you want sans newlines)

Definition at line 66 of file Bank_AMOS.hh.

Referenced by AMOS::IBankable_t::clear(), AMOS::IBankable_t::getEID(), and AMOS::IBankable_t::setEID().

BankFlags_t AMOS::IBankable_t::flags_m [protected, inherited]
 

bank flags, derived classes may use "nibble"

Definition at line 68 of file Bank_AMOS.hh.

Referenced by AMOS::IBankable_t::clear(), AMOS::IBankable_t::isFlagA(), AMOS::IBankable_t::isFlagB(), AMOS::IBankable_t::isModified(), AMOS::IBankable_t::isRemoved(), AMOS::IBankable_t::setFlagA(), and AMOS::IBankable_t::setFlagB().

ID_t AMOS::IBankable_t::iid_m [protected, inherited]
 

internal ID (integer AMOS identifier)

Definition at line 64 of file Bank_AMOS.hh.

Referenced by AMOS::IBankable_t::clear(), AMOS::IBankable_t::getIID(), AMOS::IBankable_t::IBankable_t(), and AMOS::IBankable_t::setIID().

const FragmentType_t Fragment_t::INSERT = 'I' [static]
 

Definition at line 22 of file Fragment_AMOS.cc.

Referenced by setType().

const NCode_t Fragment_t::NCODE = M_FRAGMENT [static]
 

The NCode type identifier for this object.

Reimplemented from AMOS::Universal_t.

Definition at line 18 of file Fragment_AMOS.cc.

const FragmentType_t Fragment_t::NULL_FRAGMENT = 0 [static]
 

Definition at line 19 of file Fragment_AMOS.cc.

Referenced by clear(), Fragment_t(), setType(), and writeMessage().

const FragmentType_t Fragment_t::OTHER = 'X' [static]
 

Definition at line 20 of file Fragment_AMOS.cc.

Referenced by setType().

const FragmentType_t Fragment_t::TRANSPOSON = 'T' [static]
 

Definition at line 23 of file Fragment_AMOS.cc.

Referenced by setType().

const FragmentType_t Fragment_t::WALK = 'W' [static]
 

Definition at line 24 of file Fragment_AMOS.cc.

Referenced by setType().


The documentation for this class was generated from the following files:
Generated on Tue May 17 15:19:46 2005 for libAMOS by doxygen 1.3.8