#include <ScaffoldLink_AMOS.hh>
Inheritance diagram for AMOS::ScaffoldLink_t:
Public Member Functions | |
ScaffoldLink_t () | |
Constructs an empty ScaffoldLink_t object. | |
ScaffoldLink_t (const ScaffoldLink_t &source) | |
Copy constructor. | |
~ScaffoldLink_t () | |
Destroys a ScaffoldLink_t object. | |
virtual void | clear () |
Clears all object data, reinitializes the object. | |
std::pair< ID_t, ID_t > | getScaffolds () const |
Get the pair of scaffold IIDs joined by this link. | |
virtual NCode_t | getNCode () const |
Get the AMOS NCode type identifier. | |
NCode_t | getNodeType () const |
Get the node type. | |
virtual void | readMessage (const Message_t &msg) |
Reads in data from a Message object. | |
void | setScaffolds (std::pair< ID_t, ID_t > scaffolds) |
Set the scaffold IID pair for this link. | |
virtual void | writeMessage (Message_t &msg) const |
Writes data to a Message object. | |
void | flip () |
Flip the orientation of the link. | |
LinkAdjacency_t | getAdjacency () const |
Get the adjacency relation of the two nodes. | |
std::pair< ID_t, ID_t > | getNodes () const |
Get the pair of node IIDs joined by this link. | |
SD_t | getSD () const |
Get the standard deviation of the link size. | |
Size_t | getSize () const |
Get the weight/size of the link. | |
std::pair< ID_t, NCode_t > | getSource () const |
Get the link source IID and type. | |
LinkType_t | getType () const |
Get the link type. | |
void | setAdjacency (LinkAdjacency_t adj) |
Set the adjacent ends of the two nodes. | |
void | setNodes (std::pair< ID_t, ID_t > nods) |
Set the node IID pair for this link. | |
void | setSD (SD_t sd) |
Set the standard deviation of the link size. | |
void | setSize (Size_t size) |
Set the weight/size of the link. | |
void | setSource (std::pair< ID_t, NCode_t > source) |
Set the link source IID. | |
void | setType (LinkType_t type) |
Set the linking type. | |
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_SCAFFOLDLINK |
The NCode type identifier for this object. | |
const LinkType_t | NULL_LINK = 0 |
const LinkType_t | OTHER = 'X' |
const LinkType_t | MATEPAIR = 'M' |
const LinkType_t | OVERLAP = 'O' |
const LinkType_t | PHYSICAL = 'P' |
const LinkType_t | ALIGNMENT = 'A' |
const LinkType_t | SYNTENY = 'S' |
const LinkAdjacency_t | NULL_ADJACENCY = 0 |
const LinkAdjacency_t | NORMAL = 'N' |
E,B. | |
const LinkAdjacency_t | ANTINORMAL = 'A' |
B,E. | |
const LinkAdjacency_t | INNIE = 'I' |
E,E. | |
const LinkAdjacency_t | OUTIE = 'O' |
B,B. | |
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" | |
Static Protected Attributes | |
const uint8_t | ADJACENCY_BIT = 0x4 |
adjacency exists flag | |
const uint8_t | ADJACENCY_BITS = 0x3 |
adjacency info mask | |
const uint8_t | NORMAL_BITS = 0x1 |
const uint8_t | ANTINORMAL_BITS = 0x2 |
const uint8_t | INNIE_BITS = 0x3 |
const uint8_t | OUTIE_BITS = 0x0 |
A single piece of linking information between two scaffolds. These individual links can be bundled together to form reliable scaffold edges.
Definition at line 29 of file ScaffoldLink_AMOS.hh.
|
Constructs an empty ScaffoldLink_t object. Sets all members to zero or NULL Definition at line 58 of file ScaffoldLink_AMOS.hh. |
|
Copy constructor. Definition at line 67 of file ScaffoldLink_AMOS.hh. |
|
Destroys a ScaffoldLink_t object. Definition at line 76 of file ScaffoldLink_AMOS.hh. |
|
Clears all object data, reinitializes the object.
Reimplemented from AMOS::Link_t.
Reimplemented in AMOS::ScaffoldEdge_t. Definition at line 83 of file ScaffoldLink_AMOS.hh. References AMOS::Link_t::clear(). Referenced by AMOS::ScaffoldEdge_t::clear(), readMessage(), and writeMessage(). |
|
Flip the orientation of the link. Reverses the order of the IIDs and changes the adjacency as altered by the new orientation of the nodes. Does not alter adjacency if it is currently a NULL_ADJACENCY. After flip, NORMAL become ANTINORMAL, ANTINORMAL becomes NORMAL, and INNIE and OUTIE remain the same.
References AMOS::Link_t::ANTINORMAL, AMOS::Link_t::getAdjacency(), AMOS::LinkAdjacency_t, AMOS::Link_t::NORMAL, and AMOS::Link_t::setAdjacency(). |
|
Get the adjacency relation of the two nodes. Get the adjacency information for the nodes, i.e. [N]ORMAL (EB), [A]NTINORMAL (BE), [I]NNIE (EE) or [O]UTIE (BB). Where, if we picture each node as an arrow, B is the tail and E is the head. Thus EB means the head of node1 is adjacent to the tail of node2. This may seem awkward in a theoretical sense, but comes in handy when the nodes are directed sequences.
References AMOS::Link_t::ADJACENCY_BIT, AMOS::Link_t::ADJACENCY_BITS, AMOS::Link_t::ANTINORMAL, AMOS::Link_t::ANTINORMAL_BITS, AMOS::Link_t::INNIE, AMOS::Link_t::INNIE_BITS, AMOS::LinkAdjacency_t, AMOS::Link_t::NORMAL, AMOS::Link_t::NORMAL_BITS, AMOS::Link_t::NULL_ADJACENCY, AMOS::Link_t::OUTIE, and AMOS::Link_t::OUTIE_BITS. Referenced by AMOS::Link_t::flip(), and AMOS::Link_t::writeMessage(). |
|
Get the comment string.
Referenced by AMOS::operator<<(). |
|
Get the external ID.
References AMOS::IBankable_t::eid_m. Referenced by AMOS::Contig_t::writeUMD(). |
|
Get the internal ID.
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<<(). |
|
Get the AMOS NCode type identifier.
Reimplemented from AMOS::Link_t.
Reimplemented in AMOS::ScaffoldEdge_t. Definition at line 101 of file ScaffoldLink_AMOS.hh. References AMOS::NCode_t. |
|
Get the pair of node IIDs joined by this link.
References AMOS::ID_t. Referenced by AMOS::ContigLink_t::getContigs(), and getScaffolds(). |
|
Get the node type. Describes the type of IID the nodes represent.
Reimplemented from AMOS::Link_t. Definition at line 108 of file ScaffoldLink_AMOS.hh. References AMOS::NCode_t. |
|
Get the pair of scaffold IIDs joined by this link.
References AMOS::Link_t::getNodes(). |
|
Get the standard deviation of the link size.
References AMOS::SD_t. |
|
Get the weight/size of the link.
References AMOS::Size_t. |
|
Get the link source IID and type. This method only returns the IID of the link source and the object type. The entire source object can be obtained by fetching the specified IID from the corresponding bank.
|
|
Get the status value.
References AMOS::Status_t. |
|
Get the link type. Describes the type of link this object represents.
References AMOS::LinkType_t. |
|
Check the value of flag A.
References AMOS::IBankable_t::flags_m. Referenced by AMOS::Universal_t::writeMessage(), and AMOS::Overlap_t::writeMessage(). |
|
Check the value of flag B.
References AMOS::IBankable_t::flags_m. Referenced by AMOS::Universal_t::writeMessage(), and AMOS::Overlap_t::writeMessage(). |
|
Check if the object has been modified.
References AMOS::IBankable_t::flags_m. |
|
Check if the object is waiting to be removed from the bank.
References AMOS::IBankable_t::flags_m. |
|
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.
Reimplemented from AMOS::Link_t.
Reimplemented in AMOS::ScaffoldEdge_t. Definition at line 22 of file ScaffoldLink_AMOS.cc. References clear(), AMOS::NULL_NCODE, AMOS::Link_t::readMessage(), and AMOS::Link_t::setNodeType(). Referenced by AMOS::ScaffoldEdge_t::readMessage(). |
|
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.
Reimplemented from AMOS::Link_t.
Reimplemented in AMOS::ScaffoldEdge_t. Definition at line 38 of file ScaffoldLink_AMOS.cc. References AMOS::NULL_NCODE, AMOS::Link_t::readRecord(), and AMOS::Link_t::setNodeType(). Referenced by AMOS::ScaffoldEdge_t::readRecord(). |
|
Set the adjacent ends of the two nodes. Set the adjacency information for the nodes, i.e. [N]ORMAL (EB), [A]NTINORMAL (BE), [I]NNIE (EE) or [O]UTIE (BB). Where, if we picture each node as an arrow, B is the tail and E is the head. Thus EB means the head of node1 is adjacent to the tail of node2. This may seem awkward in a theoretical sense, but comes in handy when the nodes are directed sequences.
References AMOS::Link_t::ADJACENCY_BIT, AMOS::Link_t::ADJACENCY_BITS, AMOS_THROW_ARGUMENT, AMOS::Link_t::ANTINORMAL, AMOS::Link_t::ANTINORMAL_BITS, AMOS::Link_t::INNIE, AMOS::Link_t::INNIE_BITS, AMOS::LinkAdjacency_t, AMOS::Link_t::NORMAL, AMOS::Link_t::NORMAL_BITS, AMOS::Link_t::NULL_ADJACENCY, AMOS::Link_t::OUTIE, and AMOS::Link_t::OUTIE_BITS. Referenced by AMOS::Link_t::flip(), and AMOS::Link_t::readMessage(). |
|
Set the comment string.
|
|
Set the external ID. Will only use the characters up to but not including the first newline.
References AMOS::IBankable_t::eid_m, and AMOS::NL_CHAR. Referenced by AMOS::Contig_t::readUMD(). |
|
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.
References AMOS::IBankable_t::flags_m. Referenced by AMOS::Universal_t::readMessage(), and AMOS::Overlap_t::readMessage(). |
|
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.
References AMOS::IBankable_t::flags_m. Referenced by AMOS::Universal_t::readMessage(), and AMOS::Overlap_t::readMessage(). |
|
Set the internal ID.
References AMOS::ID_t, and AMOS::IBankable_t::iid_m. |
|
Set the node IID pair for this link. Only returns the IIDs of the nodes. It is up to the user to keep track of where the actual node objects are stored.
Referenced by AMOS::ContigLink_t::setContigs(), and setScaffolds(). |
|
Set the scaffold IID pair for this link. Only returns the IIDs of the scaffolds. It is up to the user to keep track of where the actual scaffold objects are stored.
References AMOS::Link_t::setNodes(). |
|
Set the standard deviation of the link size.
References AMOS::SD_t. |
|
Set the weight/size of the link.
References AMOS::Size_t. |
|
Set the link source IID.
|
|
Set the status value.
References AMOS::Status_t. Referenced by AMOS::Universal_t::readMessage(). |
|
Set the linking type.
References AMOS::Link_t::ALIGNMENT, AMOS_THROW_ARGUMENT, AMOS::LinkType_t, AMOS::Link_t::MATEPAIR, AMOS::Link_t::NULL_LINK, AMOS::Link_t::OTHER, AMOS::Link_t::OVERLAP, AMOS::Link_t::PHYSICAL, and AMOS::Link_t::SYNTENY. Referenced by AMOS::Link_t::readMessage(). |
|
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.
Reimplemented from AMOS::Link_t.
Reimplemented in AMOS::ScaffoldEdge_t. Definition at line 47 of file ScaffoldLink_AMOS.cc. References clear(), and AMOS::Link_t::writeMessage(). Referenced by AMOS::ScaffoldEdge_t::writeMessage(). |
|
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.
Reimplemented from AMOS::Link_t.
Reimplemented in AMOS::ScaffoldEdge_t. Definition at line 66 of file ScaffoldLink_AMOS.cc. References AMOS::Link_t::writeRecord(). Referenced by AMOS::ScaffoldEdge_t::writeRecord(). |
|
adjacency exists flag Definition at line 48 of file Link_AMOS.hh. Referenced by AMOS::Link_t::getAdjacency(), and AMOS::Link_t::setAdjacency(). |
|
adjacency info mask Definition at line 49 of file Link_AMOS.hh. Referenced by AMOS::Link_t::getAdjacency(), and AMOS::Link_t::setAdjacency(). |
|
Definition at line 24 of file Link_AMOS.cc. Referenced by AMOS::Link_t::setType(). |
|
B,E. Definition at line 28 of file Link_AMOS.cc. Referenced by AMOS::Link_t::flip(), AMOS::Link_t::getAdjacency(), and AMOS::Link_t::setAdjacency(). |
|
Definition at line 51 of file Link_AMOS.hh. Referenced by AMOS::Link_t::getAdjacency(), and AMOS::Link_t::setAdjacency(). |
|
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(). |
|
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(). |
|
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(). |
|
E,E. Definition at line 29 of file Link_AMOS.cc. Referenced by AMOS::Link_t::getAdjacency(), and AMOS::Link_t::setAdjacency(). |
|
Definition at line 52 of file Link_AMOS.hh. Referenced by AMOS::Link_t::getAdjacency(), and AMOS::Link_t::setAdjacency(). |
|
Definition at line 21 of file Link_AMOS.cc. Referenced by AMOS::Link_t::setType(). |
|
The NCode type identifier for this object.
Reimplemented from AMOS::Link_t.
Reimplemented in AMOS::ScaffoldEdge_t. Definition at line 18 of file ScaffoldLink_AMOS.cc. |
|
E,B. Definition at line 27 of file Link_AMOS.cc. Referenced by AMOS::Link_t::flip(), AMOS::Link_t::getAdjacency(), and AMOS::Link_t::setAdjacency(). |
|
Definition at line 50 of file Link_AMOS.hh. Referenced by AMOS::Link_t::getAdjacency(), and AMOS::Link_t::setAdjacency(). |
|
Definition at line 26 of file Link_AMOS.cc. Referenced by AMOS::Link_t::getAdjacency(), AMOS::Link_t::setAdjacency(), and AMOS::Link_t::writeMessage(). |
|
Definition at line 19 of file Link_AMOS.cc. Referenced by AMOS::Link_t::clear(), AMOS::Link_t::Link_t(), AMOS::Link_t::setType(), and AMOS::Link_t::writeMessage(). |
|
Definition at line 20 of file Link_AMOS.cc. Referenced by AMOS::Link_t::setType(). |
|
B,B. Definition at line 30 of file Link_AMOS.cc. Referenced by AMOS::Link_t::getAdjacency(), and AMOS::Link_t::setAdjacency(). |
|
Definition at line 53 of file Link_AMOS.hh. Referenced by AMOS::Link_t::getAdjacency(), and AMOS::Link_t::setAdjacency(). |
|
Definition at line 22 of file Link_AMOS.cc. Referenced by AMOS::Link_t::setType(). |
|
Definition at line 23 of file Link_AMOS.cc. Referenced by AMOS::Link_t::setType(). |
|
Definition at line 25 of file Link_AMOS.cc. Referenced by AMOS::Link_t::setType(). |