vg
tools for working with variation graphs
Loading...
Searching...
No Matches
Classes | Namespaces | Typedefs | Enumerations | Functions
types.hpp File Reference
#include <cstdint>
#include <utility>
#include <functional>
#include <limits>

Classes

struct  handlegraph::handle_t
 Represents a traversal of a node in a graph in a particular direction. More...
 
struct  handlegraph::path_handle_t
 Represents the internal id of a path entity. More...
 
struct  handlegraph::step_handle_t
 A step handle is an opaque reference to a single step of an oriented node on a path in a graph. More...
 
struct  handlegraph::net_handle_t
 
struct  std::hash< handlegraph::handle_t >
 
struct  std::hash< handlegraph::path_handle_t >
 
struct  std::hash< handlegraph::step_handle_t >
 
struct  std::hash< handlegraph::net_handle_t >
 
struct  std::hash< handlegraph::edge_t >
 

Namespaces

namespace  handlegraph
 
namespace  std
 Hash functor to hash NodeSides using std::hash.
 

Typedefs

typedef long long int handlegraph::nid_t
 
typedef nid_t handlegraph::id_t
 
typedef std::size_t handlegraph::offset_t
 Represents an offset.
 
typedef offset_t handlegraph::off_t
 
typedef std::pair< offset_t, offset_thandlegraph::subrange_t
 Represents a range of offsets, 0-based, end-exclusive.
 
typedef std::tuple< nid_t, bool, offset_thandlegraph::pos_t
 Represents a position.
 
typedef std::pair< handle_t, handle_thandlegraph::edge_t
 Represents an edge in terms of its endpoints.
 

Enumerations

enum class  handlegraph::PathSense { handlegraph::GENERIC , handlegraph::REFERENCE , handlegraph::HAPLOTYPE }
 Represents a sense that a path can have. More...
 

Functions

bool handlegraph::operator== (const handle_t &a, const handle_t &b)
 Define equality on handles.
 
bool handlegraph::operator!= (const handle_t &a, const handle_t &b)
 Define inequality on handles.
 
bool handlegraph::operator== (const path_handle_t &a, const path_handle_t &b)
 Define equality on path handles.
 
bool handlegraph::operator== (const net_handle_t &a, const net_handle_t &b)
 Define equality on net handles.
 
bool handlegraph::operator!= (const path_handle_t &a, const path_handle_t &b)
 Define inequality on path handles.
 
bool handlegraph::operator== (const step_handle_t &a, const step_handle_t &b)
 Define equality on step handles.
 
bool handlegraph::operator!= (const step_handle_t &a, const step_handle_t &b)
 Define inequality on step handles.
 
bool handlegraph::operator!= (const net_handle_t &a, const net_handle_t &b)
 Define inequality on net handles.
 
size_t std::combine_hashes (const size_t &hsh1, const size_t hsh2)
 

Detailed Description

Defines the types used for handles, and user-facing operators to work with them.