vg
tools for working with variation graphs
Namespaces | Classes | Typedefs | Functions
handlegraph Namespace Reference

Namespaces

 algorithms
 

Classes

class  BuildableSnarlDecomposition
 
class  DeletableHandleGraph
 
class  ExpandingOverlayGraph
 
class  HandleGraph
 
class  RankedHandleGraph
 
class  VectorizableHandleGraph
 
struct  BoolReturningWrapper
 
struct  BoolReturningWrapper< Iteratee, Iterated, void >
 This specialization handles wrapping void-returning callables. More...
 
struct  BoolReturningWrapper< Iteratee, Iterated, bool >
 This specialization handles wrapping bool-returning callables. More...
 
class  MutableHandleGraph
 
class  MutablePathDeletableHandleGraph
 
class  MutablePathHandleGraph
 
class  MutablePathMutableHandleGraph
 
class  PathHandleGraph
 
class  PathForEachSocket
 
class  PathPositionHandleGraph
 
class  Serializable
 
class  SerializableHandleGraph
 
class  SnarlDecomposition
 
class  TriviallySerializable
 
struct  handle_t
 Represents a traversal of a node in a graph in a particular direction. More...
 
struct  path_handle_t
 Represents the internal id of a path entity. More...
 
struct  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  net_handle_t
 
struct  number_bool_packing
 Define a way to pack an integer and an orientation bit into a handle_t. More...
 

Typedefs

typedef long long int nid_t
 
typedef nid_t id_t
 
typedef std::size_t off_t
 Represents an offset. More...
 
typedef std::tuple< nid_t, bool, off_tpos_t
 Represents a position. More...
 
typedef std::pair< handle_t, handle_tedge_t
 Represents an edge in terms of its endpoints. More...
 

Functions

bool operator== (const handle_t &a, const handle_t &b)
 Define equality on handles. More...
 
bool operator!= (const handle_t &a, const handle_t &b)
 Define inequality on handles. More...
 
bool operator== (const path_handle_t &a, const path_handle_t &b)
 Define equality on path handles. More...
 
bool operator!= (const path_handle_t &a, const path_handle_t &b)
 Define inequality on path handles. More...
 
bool operator== (const step_handle_t &a, const step_handle_t &b)
 Define equality on step handles. More...
 
bool operator!= (const step_handle_t &a, const step_handle_t &b)
 Define inequality on step handles. More...
 
bool operator== (const net_handle_t &a, const net_handle_t &b)
 Define equality on net handles. More...
 
bool operator!= (const net_handle_t &a, const net_handle_t &b)
 Define inequality on net handles. More...
 
uint64_t & as_integer (handle_t &handle)
 View a handle as an integer. More...
 
const uint64_t & as_integer (const handle_t &handle)
 View a const handle as a const integer. More...
 
handle_tas_handle (uint64_t &value)
 View an integer as a handle. More...
 
const handle_tas_handle (const uint64_t &value)
 View a const integer as a const handle. More...
 
bool operator< (const handle_t &a, const handle_t &b)
 It's convenient to be able to sort handles. More...
 
uint64_t & as_integer (path_handle_t &handle)
 View a path handle as an integer. More...
 
const uint64_t & as_integer (const path_handle_t &handle)
 View a const path handle as a const integer. More...
 
path_handle_tas_path_handle (uint64_t &value)
 View an integer as a path handle. More...
 
const path_handle_tas_path_handle (const uint64_t &value)
 View a const integer as a const path handle. More...
 
bool operator< (const path_handle_t &a, const path_handle_t &b)
 It's convenient to be able to sort path handles. More...
 
int64_t * as_integers (step_handle_t &step_handle)
 View a step handle as an integer array. More...
 
const int64_t * as_integers (const step_handle_t &step_handle)
 View a const step handle as a const integer array. More...
 
bool operator< (const step_handle_t &a, const step_handle_t &b)
 Sort of step handles is based on first then second integers. More...
 
int64_t * as_integers (net_handle_t &net_handle)
 View a net handle as an integer array. More...
 
const int64_t * as_integers (const net_handle_t &net_handle)
 View a const net handle as a const integer array. More...
 
bool operator< (const net_handle_t &a, const net_handle_t &b)
 Sort of net handles is based on first then second then third integers. More...
 

Typedef Documentation

◆ edge_t

typedef std::pair<handle_t, handle_t> handlegraph::edge_t

Represents an edge in terms of its endpoints.

◆ id_t

◆ nid_t

typedef long long int handlegraph::nid_t

Represents an id. We use "long long int" here so that we resolve to a consistent C-level type across platforms. On Mac, int64_t is "long long" while on Linux it is just "long", and generated code that resolves all typedefs (i.e. Python bindings) is thus not portable between them if we use int64_t.

◆ off_t

typedef std::size_t handlegraph::off_t

Represents an offset.

◆ pos_t

typedef std::tuple<nid_t, bool, off_t> handlegraph::pos_t

Represents a position.

Function Documentation

◆ as_handle() [1/2]

const handle_t& handlegraph::as_handle ( const uint64_t &  value)
inline

View a const integer as a const handle.

◆ as_handle() [2/2]

handle_t& handlegraph::as_handle ( uint64_t &  value)
inline

View an integer as a handle.

◆ as_integer() [1/4]

const uint64_t& handlegraph::as_integer ( const handle_t handle)
inline

View a const handle as a const integer.

◆ as_integer() [2/4]

const uint64_t& handlegraph::as_integer ( const path_handle_t handle)
inline

View a const path handle as a const integer.

◆ as_integer() [3/4]

uint64_t& handlegraph::as_integer ( handle_t handle)
inline

View a handle as an integer.

◆ as_integer() [4/4]

uint64_t& handlegraph::as_integer ( path_handle_t handle)
inline

View a path handle as an integer.

◆ as_integers() [1/4]

const int64_t* handlegraph::as_integers ( const net_handle_t net_handle)
inline

View a const net handle as a const integer array.

◆ as_integers() [2/4]

const int64_t* handlegraph::as_integers ( const step_handle_t step_handle)
inline

View a const step handle as a const integer array.

◆ as_integers() [3/4]

int64_t* handlegraph::as_integers ( net_handle_t net_handle)
inline

View a net handle as an integer array.

◆ as_integers() [4/4]

int64_t* handlegraph::as_integers ( step_handle_t step_handle)
inline

View a step handle as an integer array.

◆ as_path_handle() [1/2]

const path_handle_t& handlegraph::as_path_handle ( const uint64_t &  value)
inline

View a const integer as a const path handle.

◆ as_path_handle() [2/2]

path_handle_t& handlegraph::as_path_handle ( uint64_t &  value)
inline

View an integer as a path handle.

◆ operator!=() [1/4]

bool handlegraph::operator!= ( const handle_t a,
const handle_t b 
)

Define inequality on handles.

◆ operator!=() [2/4]

bool handlegraph::operator!= ( const net_handle_t a,
const net_handle_t b 
)

Define inequality on net handles.

◆ operator!=() [3/4]

bool handlegraph::operator!= ( const path_handle_t a,
const path_handle_t b 
)

Define inequality on path handles.

◆ operator!=() [4/4]

bool handlegraph::operator!= ( const step_handle_t a,
const step_handle_t b 
)

Define inequality on step handles.

◆ operator<() [1/4]

bool handlegraph::operator< ( const handle_t a,
const handle_t b 
)
inline

It's convenient to be able to sort handles.

◆ operator<() [2/4]

bool handlegraph::operator< ( const net_handle_t a,
const net_handle_t b 
)
inline

Sort of net handles is based on first then second then third integers.

◆ operator<() [3/4]

bool handlegraph::operator< ( const path_handle_t a,
const path_handle_t b 
)
inline

It's convenient to be able to sort path handles.

◆ operator<() [4/4]

bool handlegraph::operator< ( const step_handle_t a,
const step_handle_t b 
)
inline

Sort of step handles is based on first then second integers.

◆ operator==() [1/4]

bool handlegraph::operator== ( const handle_t a,
const handle_t b 
)

Define equality on handles.

◆ operator==() [2/4]

bool handlegraph::operator== ( const net_handle_t a,
const net_handle_t b 
)

Define equality on net handles.

◆ operator==() [3/4]

bool handlegraph::operator== ( const path_handle_t a,
const path_handle_t b 
)

Define equality on path handles.

◆ operator==() [4/4]

bool handlegraph::operator== ( const step_handle_t a,
const step_handle_t b 
)

Define equality on step handles.