#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().  | 
  
 1.3.8