#ifndef FINITE_SAMPLER_H_
#define FINITE_SAMPLER_H_

#include <sampler/GibbsSampler.h>

class StochasticNode;

/**
 * Sampler for discrete distributions with support on a finite set.
 */
class FiniteSampler : public GibbsSampler {
public:
    FiniteSampler(StochasticNode *node, Graph const &graph);
    ~FiniteSampler();

    void update();
    static bool canSample(StochasticNode const *node, Graph const &graph);
    void burninOff();
};

#endif /* FINITE_SAMPLER_H_ */


syntax highlighted by Code2HTML, v. 0.9.1