vg
tools for working with variation graphs
|
Public Member Functions | |
path_t () | |
path_t (const string &name, const int64_t &path_id, bool is_circular=false) | |
path_t (path_t &&other) | |
Move constructor. More... | |
path_t & | operator= (path_t &&other) |
Move assignment. More... | |
path_t (const path_t &other) | |
Copy constructor. More... | |
path_t & | operator= (const path_t &other) |
Copy assignment. More... | |
~path_t () | |
path_mapping_t * | push_back (const handle_t &handle) |
Add a node to the end of the path. More... | |
path_mapping_t * | push_front (const handle_t &handle) |
Add a node to the front of the path. More... | |
void | remove (path_mapping_t *mapping) |
Remove the mapping from the path and free its memory. More... | |
path_mapping_t * | insert_before (const handle_t &handle, path_mapping_t *mapping) |
void | serialize (ostream &out) const |
void | deserialize (istream &in) |
Read the path (in the format written by serialize()) from an in stream. More... | |
Public Attributes | |
path_mapping_t * | head = nullptr |
path_mapping_t * | tail = nullptr |
size_t | count = 0 |
int64_t | path_id = 0 |
string | name |
bool | is_circular = false |
bdsg::HashGraph::path_t::path_t | ( | ) |
bdsg::HashGraph::path_t::path_t | ( | const string & | name, |
const int64_t & | path_id, | ||
bool | is_circular = false |
||
) |
bdsg::HashGraph::path_t::path_t | ( | path_t && | other | ) |
Move constructor.
bdsg::HashGraph::path_t::path_t | ( | const path_t & | other | ) |
Copy constructor.
bdsg::HashGraph::path_t::~path_t | ( | ) |
void bdsg::HashGraph::path_t::deserialize | ( | istream & | in | ) |
Read the path (in the format written by serialize()) from an in stream.
HashGraph::path_mapping_t * bdsg::HashGraph::path_t::insert_before | ( | const handle_t & | handle, |
path_mapping_t * | mapping | ||
) |
Insert a new node into the middle of the path. If the the provided node is null, inserts at the end.
HashGraph::path_t & bdsg::HashGraph::path_t::operator= | ( | const path_t & | other | ) |
Copy assignment.
HashGraph::path_t & bdsg::HashGraph::path_t::operator= | ( | path_t && | other | ) |
Move assignment.
HashGraph::path_mapping_t * bdsg::HashGraph::path_t::push_back | ( | const handle_t & | handle | ) |
Add a node to the end of the path.
HashGraph::path_mapping_t * bdsg::HashGraph::path_t::push_front | ( | const handle_t & | handle | ) |
Add a node to the front of the path.
void bdsg::HashGraph::path_t::remove | ( | path_mapping_t * | mapping | ) |
Remove the mapping from the path and free its memory.
void bdsg::HashGraph::path_t::serialize | ( | ostream & | out | ) | const |
Write the path to an out stream, applying the given offset to all node IDs referenced by the path.
size_t bdsg::HashGraph::path_t::count = 0 |
path_mapping_t* bdsg::HashGraph::path_t::head = nullptr |
bool bdsg::HashGraph::path_t::is_circular = false |
string bdsg::HashGraph::path_t::name |
int64_t bdsg::HashGraph::path_t::path_id = 0 |
path_mapping_t* bdsg::HashGraph::path_t::tail = nullptr |