GraphSimulationBase< GraphT, Timepoint, Timespan, edge_f, node_f > Class Template Reference

CPP API: mio::GraphSimulationBase< GraphT, Timepoint, Timespan, edge_f, node_f > Class Template Reference
mio::GraphSimulationBase< GraphT, Timepoint, Timespan, edge_f, node_f > Class Template Reference

abstract simulation on a graph with alternating node and edge actions More...

#include <graph_simulation.h>

Public Types

using edge_function = edge_f
 
using Graph = GraphT
 
using node_function = node_f
 

Public Member Functions

Graphget_graph () &
 
Graph && get_graph () &&
 
const Graphget_graph () const &
 
Timepoint get_t () const
 
 GraphSimulationBase (Timepoint t0, Timespan dt, const Graph &g, const node_function &node_func, const edge_function &&edge_func)
 
 GraphSimulationBase (Timepoint t0, Timespan dt, Graph &&g, const node_function &node_func, const edge_function &&edge_func)
 

Protected Attributes

Timespan m_dt
 
edge_function m_edge_func
 
Graph m_graph
 
node_function m_node_func
 
Timepoint m_t
 

Detailed Description

template<class GraphT, class Timepoint, class Timespan, class edge_f, class node_f>
class mio::GraphSimulationBase< GraphT, Timepoint, Timespan, edge_f, node_f >

abstract simulation on a graph with alternating node and edge actions

Member Typedef Documentation

◆ edge_function

template<class GraphT , class Timepoint , class Timespan , class edge_f , class node_f >
using mio::GraphSimulationBase< GraphT, Timepoint, Timespan, edge_f, node_f >::edge_function = edge_f

◆ Graph

template<class GraphT , class Timepoint , class Timespan , class edge_f , class node_f >
using mio::GraphSimulationBase< GraphT, Timepoint, Timespan, edge_f, node_f >::Graph = GraphT

◆ node_function

template<class GraphT , class Timepoint , class Timespan , class edge_f , class node_f >
using mio::GraphSimulationBase< GraphT, Timepoint, Timespan, edge_f, node_f >::node_function = node_f

Constructor & Destructor Documentation

◆ GraphSimulationBase() [1/2]

template<class GraphT , class Timepoint , class Timespan , class edge_f , class node_f >
mio::GraphSimulationBase< GraphT, Timepoint, Timespan, edge_f, node_f >::GraphSimulationBase ( Timepoint  t0,
Timespan  dt,
const Graph g,
const node_function node_func,
const edge_function &&  edge_func 
)
inline

◆ GraphSimulationBase() [2/2]

template<class GraphT , class Timepoint , class Timespan , class edge_f , class node_f >
mio::GraphSimulationBase< GraphT, Timepoint, Timespan, edge_f, node_f >::GraphSimulationBase ( Timepoint  t0,
Timespan  dt,
Graph &&  g,
const node_function node_func,
const edge_function &&  edge_func 
)
inline

Member Function Documentation

◆ get_graph() [1/3]

template<class GraphT , class Timepoint , class Timespan , class edge_f , class node_f >
Graph& mio::GraphSimulationBase< GraphT, Timepoint, Timespan, edge_f, node_f >::get_graph ( ) &
inline

◆ get_graph() [2/3]

template<class GraphT , class Timepoint , class Timespan , class edge_f , class node_f >
Graph&& mio::GraphSimulationBase< GraphT, Timepoint, Timespan, edge_f, node_f >::get_graph ( ) &&
inline

◆ get_graph() [3/3]

template<class GraphT , class Timepoint , class Timespan , class edge_f , class node_f >
const Graph& mio::GraphSimulationBase< GraphT, Timepoint, Timespan, edge_f, node_f >::get_graph ( ) const &
inline

◆ get_t()

template<class GraphT , class Timepoint , class Timespan , class edge_f , class node_f >
Timepoint mio::GraphSimulationBase< GraphT, Timepoint, Timespan, edge_f, node_f >::get_t ( ) const
inline

Member Data Documentation

◆ m_dt

template<class GraphT , class Timepoint , class Timespan , class edge_f , class node_f >
Timespan mio::GraphSimulationBase< GraphT, Timepoint, Timespan, edge_f, node_f >::m_dt
protected

◆ m_edge_func

template<class GraphT , class Timepoint , class Timespan , class edge_f , class node_f >
edge_function mio::GraphSimulationBase< GraphT, Timepoint, Timespan, edge_f, node_f >::m_edge_func
protected

◆ m_graph

template<class GraphT , class Timepoint , class Timespan , class edge_f , class node_f >
Graph mio::GraphSimulationBase< GraphT, Timepoint, Timespan, edge_f, node_f >::m_graph
protected

◆ m_node_func

template<class GraphT , class Timepoint , class Timespan , class edge_f , class node_f >
node_function mio::GraphSimulationBase< GraphT, Timepoint, Timespan, edge_f, node_f >::m_node_func
protected

◆ m_t

template<class GraphT , class Timepoint , class Timespan , class edge_f , class node_f >
Timepoint mio::GraphSimulationBase< GraphT, Timepoint, Timespan, edge_f, node_f >::m_t
protected