Spec HmmGraph
A grap representing a Hidden Markov Model (HMM).

Extends Graph
All Extended Graph
All Impl'd AssignableConcept, ContainerConcept, DestructibleConcept
Defined in <seqan/graph_types.h>
Signature template <[typename TAlphabet[, typename TCargo[, typename TSpec]]]> class Graph<Hmm<TAlphabet, TCargo, TSpec> >;

Template Parameters

TAlphabet The alphabet of the HMM. Default: Dna.
TCargo The edge cargos. Default: void.
TSpec The specialization type. Default: Default. Use WithoutEdgeIds here to omit edge ids. NB: if edges do not store ids then external property maps do not work.

Member Function Overview

Member Functions Inherited From AssignableConcept

Interface Function Overview

Interface Functions Inherited From Graph

Interface Functions Inherited From AssignableConcept

Interface Functions Inherited From ContainerConcept

Interface Metafunction Overview

Interface Metafunctions Inherited From Graph

Interface Metafunctions Inherited From ContainerConcept

Detailed Description

An HMM is a directed graph with edges labeled with transition probabilities and emission profiles for each vertex. Vertices correspond to states in an HMM.

Interface Functions Detail

void assignBeginState(hmm, v);

Assigns a begin state.

Parameters

hmm The HmmGraph to assign the begin state of.
v The descriptor of the vertex to assign as begin state.

Data Races

If not stated otherwise, concurrent invocation is not guaranteed to be thread-safe.

void assignEmissionProbability(hmm, state, symbol, eProb);

Assigns a new emission probability.

Parameters

hmm The HmmGraph to query.
state A vertex descriptor with the source state.
symbol The symbol. Type: TAlphabet.
eProb Emission probability to assign.

Data Races

If not stated otherwise, concurrent invocation is not guaranteed to be thread-safe.

void assignEndState(hmm, v);

Assigns a end state.

Parameters

hmm The HmmGraph to assign the end state of.
v The descriptor of the vertex to assign as end state.

Data Races

If not stated otherwise, concurrent invocation is not guaranteed to be thread-safe.

void assignSilentStatus(hmm, v, silent);

Assigns a silent status to a state.

Parameters

hmm The HmmGraph to assign the silent status in.
v Vertex descriptor of the state to assign silent status.
silent A bool with the silent status.

Data Races

If not stated otherwise, concurrent invocation is not guaranteed to be thread-safe.

void assignTransitionProbability(hmm, state1, state2, prob); void assignTransitionProbability(hmm, e, prob);

Assigns a new transition probability to an existing edge.

Parameters

hmm The HmmGraph to get transition probability for.
state1 Assign transition probability from start state1.
state2 Assign probability to target state2.
e Assign probability to edge with this edge descriptor.

Data Races

If not stated otherwise, concurrent invocation is not guaranteed to be thread-safe.

TVertexDescriptor beginState(hmm);

Return a reference to the begin state vertex descriptor.

Parameters

hmm The HmmGraph to get the vertex descriptor of.

Returns

TVertexDescriptor A reference to the begin state vertex descriptor.

Data Races

If not stated otherwise, concurrent invocation is not guaranteed to be thread-safe.

TCargo emissionProbability(hmm, state, symbol);

Returns a reference to the emissions probability.

Parameters

hmm The HmmGraph to query.
state A vertex descriptor with the source state.
symbol The symbol. Type: TAlphabet.

Returns

TCargo Reference to the emission probability.

Data Races

If not stated otherwise, concurrent invocation is not guaranteed to be thread-safe.

TVertexDescriptor endState(hmm);

Return a reference to the end state vertex descriptor.

Parameters

hmm The HmmGraph to get the vertex descriptor of.

Returns

TVertexDescriptor A reference to the end state vertex descriptor.

Data Races

If not stated otherwise, concurrent invocation is not guaranteed to be thread-safe.

TVertexDescriptor getBeginState(hmm);

Return the begin state vertex descriptor.

Parameters

hmm The HmmGraph to get the vertex descriptor of.

Returns

TVertexDescriptor The begin state vertex descriptor.

Data Races

If not stated otherwise, concurrent invocation is not guaranteed to be thread-safe.

TCargo getEmissionProbability(hmm, state, symbol);

Returns the emissions probability.

Parameters

hmm The HmmGraph to query.
state A vertex descriptor with the source state.
symbol The symbol. Type: TAlphabet.

Returns

TCargo The emission probability.

Data Races

If not stated otherwise, concurrent invocation is not guaranteed to be thread-safe.

TVertexDescriptor getEndState(hmm);

Return the end state vertex descriptor.

Parameters

hmm The HmmGraph to get the vertex descriptor of.

Returns

TVertexDescriptor The end state vertex descriptor.

Data Races

If not stated otherwise, concurrent invocation is not guaranteed to be thread-safe.

TCargo getTransitionProbability(hmm, state1, state2); TCargo getTransitionProbability(hmm, e);

Returns the transition probability, stored as the cargo.

Parameters

hmm The HmmGraph to get transition probability for.
state1 Return transition probability from start state1.
state2 Return transition probability to target state2.
e An edge descriptor.

Returns

TCargo Return the transition probability.

Data Races

If not stated otherwise, concurrent invocation is not guaranteed to be thread-safe.

bool isSilent(hmm, v);

Indicates whether a state is silent or not.

Parameters

hmm The HmmGraph to query.
v Vertex descriptor of the state to query.

Returns

bool true if the state is silent and false if not.

Data Races

If not stated otherwise, concurrent invocation is not guaranteed to be thread-safe.

TBoolRef silentStatus(hmm, v);

Return reference to silent status flag.

Parameters

hmm The HmmGraph to assign the silent status in.
v Vertex descriptor of the state to assign silent status.

Returns

TBoolRef Reference to bool silent status flag.

Data Races

If not stated otherwise, concurrent invocation is not guaranteed to be thread-safe.

TCargo getTransitionProbability(hmm, state1, state2); TCargo getTransitionProbability(hmm, e);

Returns a reference to transition probability, stored as the cargo.

Parameters

hmm The HmmGraph to get transition probability for.
state1 Return transition probability from start state1.
state2 Return transition probability to target state2.
e An edge descriptor.

Returns

TCargo Returns a reference to the transition probability.

Data Races

If not stated otherwise, concurrent invocation is not guaranteed to be thread-safe.