class Gambit::DRes::DependencyResolver

Main dependency resolver.

#include <depresolver.hpp>

Public Functions

Name
DependencyResolver(const gambit_core & core, const Models::ModelFunctorClaw & claw, const IniParser::IniFile & iniFile, const Utils::type_equivalency & equiv_classes, Printers::BasePrinter & printer)
Constructor, provide module and backend functor lists.
voiddoResolution()
The dependency resolution.
voidprintFunctorList()
Pretty print module functor information.
voidprintFunctorEvalOrder(bool toterminal =false)
Pretty print function evaluation order.
voidprintRequiredBackends()
Print the list of required backends.
voidgetCitationKeys()
Collect the citation keys for backends, modules, etc.
voidprintCitationKeys()
std::vector< VertexID >getObsLikeOrder()
Retrieve the order in which target vertices are to be evaluated.
voidcalcObsLike(VertexID vertex)
Calculate a single target vertex.
voidprintObsLike(VertexID vertex, const int pointID)
Print a single target vertex.
boolprintTiming()
Getter for print_timing flag (used by LikelihoodContainer)
functor *get_functor(VertexID id)
Get the functor corresponding to a single VertexID.
strcheckTypeMatch(VertexID vertex, const str & purpose, const std::vector< str > & types)
Ensure that the type of a given vertex is equivalent to at least one of a provided list, and return the matching list entry.
template <typename TYPE >
TYPE
getObsLike(VertexID vertex)
Return the result of a functor.
const IniParser::ObservableType *getIniEntry(VertexID v)
voidinvalidatePointAt(VertexID vertex, bool isnan)
voidresetAll()
MasterGraphTypecullInactiveFunctors(MasterGraphType & )
Helper function that returns a new graph with all inactive vertices removed.

Public Functions Documentation

function DependencyResolver

DependencyResolver(
    const gambit_core & core,
    const Models::ModelFunctorClaw & claw,
    const IniParser::IniFile & iniFile,
    const Utils::type_equivalency & equiv_classes,
    Printers::BasePrinter & printer
)

Constructor, provide module and backend functor lists.

function doResolution

void doResolution()

The dependency resolution.

function printFunctorList

void printFunctorList()

Pretty print module functor information.

List of masterGraph content.

function printFunctorEvalOrder

void printFunctorEvalOrder(
    bool toterminal =false
)

Pretty print function evaluation order.

function printRequiredBackends

void printRequiredBackends()

Print the list of required backends.

function getCitationKeys

void getCitationKeys()

Collect the citation keys for backends, modules, etc.

function printCitationKeys

void printCitationKeys()

function getObsLikeOrder

std::vector< VertexID > getObsLikeOrder()

Retrieve the order in which target vertices are to be evaluated.

function calcObsLike

void calcObsLike(
    VertexID vertex
)

Calculate a single target vertex.

function printObsLike

void printObsLike(
    VertexID vertex,
    const int pointID
)

Print a single target vertex.

function printTiming

bool printTiming()

Getter for print_timing flag (used by LikelihoodContainer)

function get_functor

functor * get_functor(
    VertexID id
)

Get the functor corresponding to a single VertexID.

function checkTypeMatch

str checkTypeMatch(
    VertexID vertex,
    const str & purpose,
    const std::vector< str > & types
)

Ensure that the type of a given vertex is equivalent to at least one of a provided list, and return the matching list entry.

function getObsLike

template <typename TYPE >
inline TYPE getObsLike(
    VertexID vertex
)

Return the result of a functor.

function getIniEntry

const IniParser::ObservableType * getIniEntry(
    VertexID v
)

function invalidatePointAt

void invalidatePointAt(
    VertexID vertex,
    bool isnan
)

function resetAll

void resetAll()

function cullInactiveFunctors

static MasterGraphType cullInactiveFunctors(
    MasterGraphType & 
)

Helper function that returns a new graph with all inactive vertices removed.


Updated on 2022-08-03 at 12:57:56 +0000