#include <Bank_AMOS.hh>
Inheritance diagram for AMOS::IBankable_t:
Public Member Functions | |
IBankable_t () | |
Constructs an empty IBankable_t object. | |
IBankable_t (const IBankable_t &source) | |
Copy constructor. | |
virtual | ~IBankable_t () |
Virtual destructor. | |
virtual void | clear () |
Clears all object data, reinitializes the object. | |
const std::string & | getEID () const |
Get the external ID. | |
ID_t | getIID () const |
Get the internal ID. | |
virtual NCode_t | getNCode () const =0 |
Get the AMOS NCode type identifier. | |
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. | |
Protected Member Functions | |
virtual void | readRecord (std::istream &fix, std::istream &var)=0 |
Read selected class members from a biserial record. | |
virtual void | writeRecord (std::ostream &fix, std::ostream &var) const =0 |
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" |
All classes derived from this interface class may be stored in a AMOS bank. Derived classes from this type that you wish to include in an AMOS Bank_t. This will assure all data types being "banked" will have an iid, eid and flags field, and will be able to read and write themselves to a bank. To derive new types, the developer must implement the virtual functions to ensure the new class can be correctly stored and recovered from a bank. Each IBankable class should return a unique (static) NCode when getNCode is called upon, so that the bank dynamically identify the types of virtual objects.
Definition at line 56 of file Bank_AMOS.hh.
|
Constructs an empty IBankable_t object. Set IID to NULL_ID, comment to empty string and all flags to false. Definition at line 116 of file Bank_AMOS.hh. References iid_m, and AMOS::NULL_ID. |
|
Copy constructor. Definition at line 125 of file Bank_AMOS.hh. |
|
Virtual destructor. Definition at line 134 of file Bank_AMOS.hh. |
|
Clears all object data, reinitializes the object.
Reimplemented in AMOS::Contig_t, AMOS::ContigEdge_t, AMOS::ContigLink_t, AMOS::Edge_t, AMOS::Feature_t, AMOS::Fragment_t, AMOS::Group_t, AMOS::Index_t, AMOS::Kmer_t, AMOS::Layout_t, AMOS::Library_t, AMOS::Link_t, AMOS::Overlap_t, AMOS::Read_t, AMOS::Scaffold_t, AMOS::ScaffoldEdge_t, AMOS::ScaffoldLink_t, AMOS::Sequence_t, and AMOS::Universal_t. Definition at line 143 of file Bank_AMOS.hh. References eid_m, flags_m, iid_m, and AMOS::NULL_ID. |
|
Get the external ID.
References eid_m. Referenced by AMOS::Contig_t::writeUMD(). |
|
Get the internal ID.
References AMOS::ID_t, and 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.
Implemented in AMOS::Contig_t, AMOS::ContigEdge_t, AMOS::ContigLink_t, AMOS::Edge_t, AMOS::Feature_t, AMOS::Fragment_t, AMOS::Group_t, AMOS::Index_t, AMOS::Kmer_t, AMOS::Layout_t, AMOS::Library_t, AMOS::Link_t, AMOS::Overlap_t, AMOS::Read_t, AMOS::Scaffold_t, AMOS::ScaffoldEdge_t, AMOS::ScaffoldLink_t, AMOS::Sequence_t, and AMOS::Universal_t.
Referenced by AMOS::Bank_t::appendBID(), AMOS::Bank_t::fetchBID(), AMOS::BankStream_t::operator<<(), AMOS::BankStream_t::operator>>(), and AMOS::Bank_t::replaceBID(). |
|
Check the value of flag A.
References flags_m. Referenced by AMOS::Universal_t::writeMessage(), and AMOS::Overlap_t::writeMessage(). |
|
Check the value of flag B.
References flags_m. Referenced by AMOS::Universal_t::writeMessage(), and AMOS::Overlap_t::writeMessage(). |
|
Check if the object has been modified.
References flags_m. |
|
Check if the object is waiting to be removed from the bank.
References flags_m. |
|
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.
Implemented in AMOS::Contig_t, AMOS::ContigEdge_t, AMOS::ContigLink_t, AMOS::Edge_t, AMOS::Feature_t, AMOS::Fragment_t, AMOS::Group_t, AMOS::Index_t, AMOS::Kmer_t, AMOS::Layout_t, AMOS::Library_t, AMOS::Link_t, AMOS::Overlap_t, AMOS::Read_t, AMOS::Scaffold_t, AMOS::ScaffoldEdge_t, AMOS::ScaffoldLink_t, AMOS::Sequence_t, and AMOS::Universal_t.
|
|
Set the external ID. Will only use the characters up to but not including the first newline.
References 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 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 flags_m. Referenced by AMOS::Universal_t::readMessage(), and AMOS::Overlap_t::readMessage(). |
|
Set the internal ID.
References AMOS::ID_t, and iid_m. |
|
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.
Implemented in AMOS::Contig_t, AMOS::ContigEdge_t, AMOS::ContigLink_t, AMOS::Edge_t, AMOS::Feature_t, AMOS::Fragment_t, AMOS::Group_t, AMOS::Index_t, AMOS::Kmer_t, AMOS::Layout_t, AMOS::Library_t, AMOS::Link_t, AMOS::Overlap_t, AMOS::Read_t, AMOS::Scaffold_t, AMOS::ScaffoldEdge_t, AMOS::ScaffoldLink_t, AMOS::Sequence_t, and AMOS::Universal_t.
|
|
external ID (anything you want sans newlines) Definition at line 66 of file Bank_AMOS.hh. |
|
bank flags, derived classes may use "nibble" Definition at line 68 of file Bank_AMOS.hh. Referenced by clear(), isFlagA(), isFlagB(), isModified(), isRemoved(), setFlagA(), and setFlagB(). |
|
internal ID (integer AMOS identifier) Definition at line 64 of file Bank_AMOS.hh. Referenced by clear(), getIID(), IBankable_t(), and setIID(). |