```// @(#)root/roostats:\$Id\$
// Authors: Giovanni Petrucciani 4/21/2011
/*************************************************************************
*                                                                       *
* For the licensing terms see \$ROOTSYS/LICENSE.                         *
* For the list of contributors see \$ROOTSYS/README/CREDITS.             *
*************************************************************************/

#ifndef RooStats_SequentialProposal
#define RooStats_SequentialProposal

#ifndef ROOT_Rtypes
#include "Rtypes.h"
#endif
#ifndef ROOSTATS_ProposalFunction
#include "RooStats/ProposalFunction.h"
#endif
#ifndef ROO_ARG_SET
#include "RooArgSet.h"
#endif

namespace RooStats {

class SequentialProposal : public ProposalFunction {

public:
SequentialProposal() : RooStats::ProposalFunction(), fDivisor(0) {}
SequentialProposal(double divisor) ;

// Populate xPrime with a new proposed point
virtual void Propose(RooArgSet& xPrime, RooArgSet& x);

// Determine whether or not the proposal density is symmetric for
// points x1 and x2 - that is, whether the probabilty of reaching x2
// from x1 is equal to the probability of reaching x1 from x2
virtual Bool_t IsSymmetric(RooArgSet& x1, RooArgSet& x2) ;

// Return the probability of proposing the point x1 given the starting
// point x2
virtual Double_t GetProposalDensity(RooArgSet& x1, RooArgSet& x2);

virtual ~SequentialProposal() {}

ClassDef(SequentialProposal,1) // A concrete implementation of ProposalFunction, that uniformly samples the parameter space.

private:

double fDivisor;
};

}

#endif
```
SequentialProposal.h:1
SequentialProposal.h:2
SequentialProposal.h:3
SequentialProposal.h:4
SequentialProposal.h:5
SequentialProposal.h:6
SequentialProposal.h:7
SequentialProposal.h:8
SequentialProposal.h:9
SequentialProposal.h:10
SequentialProposal.h:11
SequentialProposal.h:12
SequentialProposal.h:13
SequentialProposal.h:14
SequentialProposal.h:15
SequentialProposal.h:16
SequentialProposal.h:17
SequentialProposal.h:18
SequentialProposal.h:19
SequentialProposal.h:20
SequentialProposal.h:21
SequentialProposal.h:22
SequentialProposal.h:23
SequentialProposal.h:24
SequentialProposal.h:25
SequentialProposal.h:26
SequentialProposal.h:27
SequentialProposal.h:28
SequentialProposal.h:29
SequentialProposal.h:30
SequentialProposal.h:31
SequentialProposal.h:32
SequentialProposal.h:33
SequentialProposal.h:34
SequentialProposal.h:35
SequentialProposal.h:36
SequentialProposal.h:37
SequentialProposal.h:38
SequentialProposal.h:39
SequentialProposal.h:40
SequentialProposal.h:41
SequentialProposal.h:42
SequentialProposal.h:43
SequentialProposal.h:44
SequentialProposal.h:45
SequentialProposal.h:46
SequentialProposal.h:47
SequentialProposal.h:48
SequentialProposal.h:49
SequentialProposal.h:50
SequentialProposal.h:51
SequentialProposal.h:52
SequentialProposal.h:53
SequentialProposal.h:54
SequentialProposal.h:55
SequentialProposal.h:56