lppl  v2.0.0
Queryer< Impl, V, O, Ts > Struct Template Reference

Interface to all querying mechanisms for sample-based inference (and possibly other inference algorithms). Much computation that is associated with inference is implemented by subclasses of Queryer (rather than in inference algorithms themselves, as is often done). More...

#include "query.hpp"

Inheritance diagram for Queryer< Impl, V, O, Ts >:
Weighted< std::unique_ptr< value_collection_t< V > >, O, Ts... > Weighted< std::shared_ptr< record_collection_t< O, Ts... > >, O, Ts... > WeightedValue< std::unique_ptr< value_collection_t< V > >, O, Ts... > WeightedRecord< typename, O, Ts >

Public Member Functions

emit ()
 Emits the result of the query.
 
void update (record_t< DTypes< Ts... >> &r, O output, double weight, inf_options_t opts)
 Updates the state of the queryer. More...
 

Detailed Description

template<template< typename, typename, typename... > class Impl, typename V, typename O, typename... Ts>
struct Queryer< Impl, V, O, Ts >

Interface to all querying mechanisms for sample-based inference (and possibly other inference algorithms). Much computation that is associated with inference is implemented by subclasses of Queryer (rather than in inference algorithms themselves, as is often done).

Template Parameters
VThe type that will be returned when the emit method is called
OThe type returned by the probabilistic program that will be queried
TsThe types of distributions in the probabilistic program that will be queried

The documentation for this struct was generated from the following file: