1 #ifndef RE_GAMMA_H_
2 #define RE_GAMMA_H_
3 
4 #include "REMethod.h"
5 #include "REGammaSlicer.h"
6 
7 namespace jags {
8     namespace glm {
9 
10 	/**
11 	 * @short Random effects sampler for gamma precision
12 	 */
13 	class REGamma : public REMethod {
14 	    REGammaSlicer _slicer;
15 	  public:
16 	    REGamma(SingletonGraphView const *tau,
17 		    GraphView const *eps,
18 		    std::vector<SingletonGraphView const *> const &veps,
19 		    std::vector<Outcome *> const &outcomes,
20 		    unsigned int chain);
21 	    void updateTau(RNG *rng);
22 	    void updateSigma(RNG *rng);
23 	    bool isAdaptive() const;
24 	    void adaptOff();
25 	    bool checkAdaptation() const;
26 	};
27 
28     }
29 }
30 
31 #endif /* RE_GAMMA_H_ */
32