#include <Edge_AMOS.hh>
Inheritance diagram for AMOS::Edge_t:
Public Member Functions | |
| Edge_t () | |
| Constructs an empty Edge_t object. | |
| Edge_t (const Edge_t &source) | |
| Copy constructor. | |
| ~Edge_t () | |
| Destroys a Edge_t object. | |
| virtual void | clear () |
| virtual NCode_t | getNCode () const |
| virtual void | readMessage (const Message_t &msg) |
| virtual void | writeMessage (Message_t &msg) const |
| 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. | |
| NCode_t | getNodeType () const |
| Get the node 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 | setNodeType (NCode_t nodtype) |
| Set the type of node. | |
| 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. | |
| const std::vector< ID_t > & | getLinks () const |
| Get the bundle of link IIDs that make up this contig edge. | |
| std::vector< ID_t > & | getLinks () |
| Get the bundle of link IIDs that make up this contig edge. | |
| void | setLinks (const std::vector< ID_t > &links) |
| Set the bundle of link IIDs that make up this contig edge. | |
Static Public Attributes | |
| static const NCode_t | NCODE = M_EDGE |
| The NCode type identifier for this object. | |
| static const LinkType_t | NULL_LINK = 0 |
| static const LinkType_t | OTHER = 'X' |
| static const LinkType_t | MATEPAIR = 'M' |
| static const LinkType_t | OVERLAP = 'O' |
| static const LinkType_t | PHYSICAL = 'P' |
| static const LinkType_t | ALIGNMENT = 'A' |
| static const LinkType_t | SYNTENY = 'S' |
| static const LinkAdjacency_t | NULL_ADJACENCY = 0 |
| static const LinkAdjacency_t | NORMAL = 'N' |
| E,B. | |
| static const LinkAdjacency_t | ANTINORMAL = 'A' |
| B,E. | |
| static const LinkAdjacency_t | INNIE = 'I' |
| E,E. | |
| static const LinkAdjacency_t | OUTIE = 'O' |
| B,B. | |
Protected Member Functions | |
| virtual void | readRecord (std::istream &fix, std::istream &var) |
| virtual void | readRecordFix (std::istream &fix) |
| virtual void | writeRecord (std::ostream &fix, std::ostream &var) const |
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 | |
| static const uint8_t | ADJACENCY_BIT = 0x4 |
| adjacency exists flag | |
| static const uint8_t | ADJACENCY_BITS = 0x3 |
| adjacency info mask | |
| static const uint8_t | NORMAL_BITS = 0x1 |
| static const uint8_t | ANTINORMAL_BITS = 0x2 |
| static const uint8_t | INNIE_BITS = 0x3 |
| static const uint8_t | OUTIE_BITS = 0x0 |
Derived from a Link_t, this class represents a reliable link between two nodes that is usually composed of multiple links.
Definition at line 140 of file Edge_AMOS.hh.
| AMOS::Edge_t::Edge_t | ( | ) | [inline] |
| AMOS::Edge_t::Edge_t | ( | const Edge_t & | source | ) | [inline] |
| AMOS::Edge_t::~Edge_t | ( | ) | [inline] |
| virtual void AMOS::Edge_t::clear | ( | ) | [inline, virtual] |
Reimplemented from AMOS::IEdge_t.
Definition at line 194 of file Edge_AMOS.hh.
References AMOS::IEdge_t::clear(), and AMOS::Link_t::clear().
Referenced by writeMessage().
| void Link_t::flip | ( | ) | [inherited] |
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.
Definition at line 34 of file Link_AMOS.cc.
References AMOS::Link_t::ANTINORMAL, AMOS::Link_t::getAdjacency(), AMOS::Link_t::NORMAL, and AMOS::Link_t::setAdjacency().
| LinkAdjacency_t Link_t::getAdjacency | ( | ) | const [inherited] |
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.
Definition at line 47 of file Link_AMOS.cc.
References AMOS::Link_t::ADJACENCY_BIT, AMOS::Link_t::ADJACENCY_BITS, AMOS::Link_t::ANTINORMAL, AMOS::Link_t::ANTINORMAL_BITS, AMOS::IBankable_t::flags_m, AMOS::Link_t::INNIE, AMOS::Link_t::INNIE_BITS, 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().
| const std::string& AMOS::Universal_t::getComment | ( | ) | const [inline, inherited] |
Get the comment string.
Definition at line 116 of file Universal_AMOS.hh.
Referenced by AMOS::operator<<().
| const std::string& AMOS::IBankable_t::getEID | ( | ) | const [inline, inherited] |
Get the external ID.
Definition at line 174 of file Bank_AMOS.hh.
References AMOS::IBankable_t::eid_m.
Referenced by AMOS::TiledRead_t::TiledRead_t().
| ID_t AMOS::IBankable_t::getIID | ( | ) | const [inline, inherited] |
Get the internal ID.
Definition at line 185 of file Bank_AMOS.hh.
References 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<<().
| std::vector<ID_t>& AMOS::IEdge_t::getLinks | ( | ) | [inline, inherited] |
Get the bundle of link IIDs that make up this contig edge.
Definition at line 99 of file Edge_AMOS.hh.
| const std::vector<ID_t>& AMOS::IEdge_t::getLinks | ( | ) | const [inline, inherited] |
Get the bundle of link IIDs that make up this contig edge.
Definition at line 88 of file Edge_AMOS.hh.
Referenced by AMOS::ContigEdge_t::getContigLinks(), and AMOS::ScaffoldEdge_t::getScaffoldLinks().
| virtual NCode_t AMOS::Edge_t::getNCode | ( | ) | const [inline, virtual] |
Get the pair of node IIDs joined by this link.
Definition at line 158 of file Link_AMOS.hh.
Referenced by AMOS::ContigLink_t::getContigs(), and AMOS::ScaffoldLink_t::getScaffolds().
| NCode_t AMOS::Link_t::getNodeType | ( | ) | const [inline, inherited] |
Get the node type.
Describes the type of IID the nodes represent.
Reimplemented in AMOS::ContigLink_t, and AMOS::ScaffoldLink_t.
Definition at line 215 of file Link_AMOS.hh.
| SD_t AMOS::Link_t::getSD | ( | ) | const [inline, inherited] |
Get the standard deviation of the link size.
Definition at line 176 of file Link_AMOS.hh.
| Size_t AMOS::Link_t::getSize | ( | ) | const [inline, inherited] |
Get the weight/size of the link.
Definition at line 187 of file Link_AMOS.hh.
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.
Definition at line 202 of file Link_AMOS.hh.
| const Status_t AMOS::Universal_t::getStatus | ( | ) | const [inline, inherited] |
| LinkType_t AMOS::Link_t::getType | ( | ) | const [inline, inherited] |
Get the link type.
Describes the type of link this object represents.
Definition at line 228 of file Link_AMOS.hh.
| bool AMOS::IBankable_t::isFlagA | ( | ) | const [inline, inherited] |
Check the value of flag A.
Definition at line 228 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.
Definition at line 239 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.
Definition at line 217 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.
Definition at line 206 of file Bank_AMOS.hh.
References AMOS::IBankable_t::flags_m.
| void Edge_t::readMessage | ( | const Message_t & | msg | ) | [virtual] |
Reimplemented from AMOS::IEdge_t.
Definition at line 120 of file Edge_AMOS.cc.
References AMOS::IEdge_t::readMessage(), and AMOS::Link_t::readMessage().
| virtual void AMOS::Edge_t::readRecord | ( | std::istream & | fix, | |
| std::istream & | var | |||
| ) | [protected, virtual] |
Reimplemented from AMOS::IEdge_t.
| virtual void AMOS::Edge_t::readRecordFix | ( | std::istream & | fix | ) | [protected, virtual] |
Reimplemented from AMOS::IEdge_t.
| void Link_t::setAdjacency | ( | LinkAdjacency_t | adj | ) | [inherited] |
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.
| adj | The new adjacency of the nodes |
| ArgumentException_t |
Definition at line 182 of file Link_AMOS.cc.
References AMOS::Link_t::ADJACENCY_BIT, AMOS::Link_t::ADJACENCY_BITS, AMOS_THROW_ARGUMENT, AMOS::Link_t::ANTINORMAL, AMOS::Link_t::ANTINORMAL_BITS, AMOS::IBankable_t::flags_m, AMOS::Link_t::INNIE, AMOS::Link_t::INNIE_BITS, 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().
| void AMOS::Universal_t::setComment | ( | const std::string & | comment | ) | [inline, inherited] |
Set the comment string.
| comment | The new comment string |
Definition at line 150 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.
Definition at line 252 of file Bank_AMOS.hh.
References AMOS::IBankable_t::eid_m, and AMOS::NL_CHAR.
| 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.
| flag | The new flag A value |
Definition at line 272 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.
| flag | The new flag B value |
Definition at line 288 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.
| iid | The new internal ID |
Definition at line 300 of file Bank_AMOS.hh.
References AMOS::IBankable_t::iid_m.
| void AMOS::IEdge_t::setLinks | ( | const std::vector< ID_t > & | links | ) | [inline, inherited] |
Set the bundle of link IIDs that make up this contig edge.
| links | The new vector of link IIDs |
Definition at line 119 of file Edge_AMOS.hh.
Referenced by AMOS::ContigEdge_t::setContigLinks(), and AMOS::ScaffoldEdge_t::setScaffoldLinks().
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.
| nods | The new pair of node IIDs |
Definition at line 267 of file Link_AMOS.hh.
Referenced by AMOS::ContigLink_t::setContigs(), and AMOS::ScaffoldLink_t::setScaffolds().
| void AMOS::Link_t::setNodeType | ( | NCode_t | nodtype | ) | [inline, inherited] |
Set the type of node.
Describes the type of IID the nodes represent.
| nodtype | The new node type |
Definition at line 281 of file Link_AMOS.hh.
Referenced by AMOS::ScaffoldLink_t::readMessage(), and AMOS::ContigLink_t::readMessage().
| void AMOS::Link_t::setSD | ( | SD_t | sd | ) | [inline, inherited] |
Set the standard deviation of the link size.
| sd | The new standard deviation for the link size |
Definition at line 293 of file Link_AMOS.hh.
| void AMOS::Link_t::setSize | ( | Size_t | size | ) | [inline, inherited] |
Set the weight/size of the link.
| size | The new link weight/size |
Definition at line 305 of file Link_AMOS.hh.
Set the link source IID.
| source | The new IID and NCode type identifier of the link source |
Definition at line 317 of file Link_AMOS.hh.
| void AMOS::Universal_t::setStatus | ( | Status_t | status | ) | [inline, inherited] |
Set the status value.
| status | The new status value |
Definition at line 162 of file Universal_AMOS.hh.
Referenced by AMOS::Universal_t::readMessage().
| void Link_t::setType | ( | LinkType_t | type | ) | [inherited] |
Set the linking type.
| type | The new link type |
| ArgumentException_t |
Definition at line 205 of file Link_AMOS.cc.
References AMOS::Link_t::ALIGNMENT, AMOS_THROW_ARGUMENT, 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().
| void Edge_t::writeMessage | ( | Message_t & | msg | ) | const [virtual] |
Reimplemented from AMOS::IEdge_t.
Definition at line 144 of file Edge_AMOS.cc.
References clear(), AMOS::IEdge_t::writeMessage(), and AMOS::Link_t::writeMessage().
| virtual void AMOS::Edge_t::writeRecord | ( | std::ostream & | fix, | |
| std::ostream & | var | |||
| ) | const [protected, virtual] |
Reimplemented from AMOS::IEdge_t.
const uint8_t AMOS::Link_t::ADJACENCY_BIT = 0x4 [static, protected, inherited] |
adjacency exists flag
Definition at line 48 of file Link_AMOS.hh.
Referenced by AMOS::Link_t::getAdjacency(), and AMOS::Link_t::setAdjacency().
const uint8_t AMOS::Link_t::ADJACENCY_BITS = 0x3 [static, protected, inherited] |
adjacency info mask
Definition at line 49 of file Link_AMOS.hh.
Referenced by AMOS::Link_t::getAdjacency(), and AMOS::Link_t::setAdjacency().
const LinkType_t AMOS::Link_t::ALIGNMENT = 'A' [static, inherited] |
const LinkAdjacency_t AMOS::Link_t::ANTINORMAL = 'A' [static, inherited] |
B,E.
Definition at line 83 of file Link_AMOS.hh.
Referenced by AMOS::Link_t::flip(), AMOS::Link_t::getAdjacency(), and AMOS::Link_t::setAdjacency().
const uint8_t AMOS::Link_t::ANTINORMAL_BITS = 0x2 [static, protected, inherited] |
Definition at line 51 of file Link_AMOS.hh.
Referenced by AMOS::Link_t::getAdjacency(), and AMOS::Link_t::setAdjacency().
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::Bank_t::append(), AMOS::IBankable_t::clear(), AMOS::IBankable_t::getEID(), AMOS::BankStream_t::operator<<(), AMOS::BankStream_t::operator>>(), AMOS::Universal_t::readMessage(), AMOS::BankStream_t::replace(), AMOS::Bank_t::replace(), AMOS::BankStream_t::replaceByBID(), AMOS::IBankable_t::setEID(), and AMOS::Universal_t::writeMessage().
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::Bank_t::appendBID(), AMOS::Sequence_t::clear(), AMOS::IBankable_t::clear(), AMOS::Sequence_t::compress(), AMOS::Bank_t::fetchBID(), AMOS::Bank_t::fetchBIDFix(), AMOS::Overlap_t::getAdjacency(), AMOS::Link_t::getAdjacency(), AMOS::Sequence_t::isCompressed(), AMOS::IBankable_t::isFlagA(), AMOS::IBankable_t::isFlagB(), AMOS::Overlap_t::isFlagC(), AMOS::IBankable_t::isModified(), AMOS::IBankable_t::isRemoved(), AMOS::BankStream_t::operator<<(), AMOS::BankStream_t::operator>>(), AMOS::Bank_t::replaceBID(), AMOS::Overlap_t::setAdjacency(), AMOS::Link_t::setAdjacency(), AMOS::IBankable_t::setFlagA(), AMOS::IBankable_t::setFlagB(), AMOS::Overlap_t::setFlagC(), and AMOS::Sequence_t::uncompress().
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::Bank_t::append(), AMOS::IBankable_t::clear(), AMOS::IBankable_t::getIID(), AMOS::IBankable_t::IBankable_t(), AMOS::BankStream_t::operator<<(), AMOS::BankStream_t::operator>>(), AMOS::Universal_t::readMessage(), AMOS::BankStream_t::replace(), AMOS::Bank_t::replace(), AMOS::BankStream_t::replaceByBID(), AMOS::IBankable_t::setIID(), and AMOS::Universal_t::writeMessage().
const LinkAdjacency_t AMOS::Link_t::INNIE = 'I' [static, inherited] |
E,E.
Definition at line 84 of file Link_AMOS.hh.
Referenced by AMOS::Link_t::getAdjacency(), and AMOS::Link_t::setAdjacency().
const uint8_t AMOS::Link_t::INNIE_BITS = 0x3 [static, protected, inherited] |
Definition at line 52 of file Link_AMOS.hh.
Referenced by AMOS::Link_t::getAdjacency(), and AMOS::Link_t::setAdjacency().
const LinkType_t AMOS::Link_t::MATEPAIR = 'M' [static, inherited] |
const NCode_t Edge_t::NCODE = M_EDGE [static] |
The NCode type identifier for this object.
Reimplemented from AMOS::Link_t.
Definition at line 163 of file Edge_AMOS.hh.
Referenced by getNCode().
const LinkAdjacency_t AMOS::Link_t::NORMAL = 'N' [static, inherited] |
E,B.
Definition at line 82 of file Link_AMOS.hh.
Referenced by AMOS::Link_t::flip(), AMOS::Link_t::getAdjacency(), and AMOS::Link_t::setAdjacency().
const uint8_t AMOS::Link_t::NORMAL_BITS = 0x1 [static, protected, inherited] |
Definition at line 50 of file Link_AMOS.hh.
Referenced by AMOS::Link_t::getAdjacency(), and AMOS::Link_t::setAdjacency().
const LinkAdjacency_t AMOS::Link_t::NULL_ADJACENCY = 0 [static, inherited] |
Definition at line 81 of file Link_AMOS.hh.
Referenced by AMOS::Link_t::getAdjacency(), AMOS::Link_t::setAdjacency(), and AMOS::Link_t::writeMessage().
const LinkType_t AMOS::Link_t::NULL_LINK = 0 [static, inherited] |
Definition at line 73 of file Link_AMOS.hh.
Referenced by AMOS::Link_t::clear(), AMOS::Link_t::Link_t(), AMOS::Link_t::setType(), and AMOS::Link_t::writeMessage().
const LinkType_t AMOS::Link_t::OTHER = 'X' [static, inherited] |
const LinkAdjacency_t AMOS::Link_t::OUTIE = 'O' [static, inherited] |
B,B.
Definition at line 85 of file Link_AMOS.hh.
Referenced by AMOS::Link_t::getAdjacency(), and AMOS::Link_t::setAdjacency().
const uint8_t AMOS::Link_t::OUTIE_BITS = 0x0 [static, protected, inherited] |
Definition at line 53 of file Link_AMOS.hh.
Referenced by AMOS::Link_t::getAdjacency(), and AMOS::Link_t::setAdjacency().
const LinkType_t AMOS::Link_t::OVERLAP = 'O' [static, inherited] |
const LinkType_t AMOS::Link_t::PHYSICAL = 'P' [static, inherited] |
const LinkType_t AMOS::Link_t::SYNTENY = 'S' [static, inherited] |
1.4.7