#ifndef CONJUGATE_WISHART_H_
#define CONJUGATE_WISHART_H_

#include <sampler/ConjugateSampler.h>

/**
 * Conjugate sampler for the Wishart distribution
 *
 * A Conjugate Wishart sampler for stochastic node "snode" can be
 * created if snode has a Wishart distribution and its 
 * stochastic children are multivariate normal with precision matrix
 * snode. The mean of the children may not depend on snode.
 */
class ConjugateWishart : public ConjugateSampler {
  bool _fast;
public:
  ConjugateWishart(StochasticNode *snode, Graph const &graph);
  ~ConjugateWishart();
  
  static bool canSample(StochasticNode *snode, Graph const &graph);
  void update();
};

#endif /* CONJUGATE_WISHART_H_ */


syntax highlighted by Code2HTML, v. 0.9.1