Generated on Mon Jun 23 17:17:53 2008 for ell-2.3.0 by doxygen 1.5.1

src/ell/StateAcceptor.hh

Go to the documentation of this file.
00001 #ifndef STATEACCEPTOR_HH_
00002 #define STATEACCEPTOR_HH_
00003 
00004 
00005 #include "ell/State.hh"
00006 #include "ell/StateCollector.hh"
00007 
00008 namespace ell {
00015     class StateAcceptor 
00016     {
00017     public: 
00018         
00019         virtual ~StateAcceptor(){};
00020         
00028         virtual bool accept(
00029                 const StateCollector* const sc, 
00030                 const State& succ) const = 0;
00031     };
00032     
00039     class SA_All : public StateAcceptor
00040     {
00041     public:
00042         
00043         virtual ~SA_All() {};
00044         
00051         virtual bool accept(
00052                 const StateCollector* const sc, 
00053                 const State& succ) const;
00054     };
00055     
00063     class SA_E_Eq : public StateAcceptor
00064     {
00065     public:
00066         
00067         virtual ~SA_E_Eq() {}
00068         
00076         virtual bool accept(
00077                 const StateCollector* const sc, 
00078                 const State& succ) const;
00079     };
00080     
00088     class SA_E_Gr : public StateAcceptor
00089     {
00090     public:
00091         
00092         virtual ~SA_E_Gr() {}
00093         
00101         virtual bool accept(
00102                 const StateCollector* const sc, 
00103                 const State& succ) const;
00104     };
00105     
00113     class SA_E_GrEq : public StateAcceptor
00114     {
00115     public:
00116         
00117         virtual ~SA_E_GrEq () {};
00118         
00126         virtual bool accept(
00127                 const StateCollector* const sc, 
00128                 const State& succ) const;
00129     };
00130     
00138     class SA_E_Le : public StateAcceptor
00139     {
00140     public:
00141         
00142         virtual ~SA_E_Le() {}
00143         
00151         virtual bool accept(
00152                 const StateCollector* const sc, 
00153                 const State& succ) const;
00154     };
00155     
00163     class SA_E_LeEq : public StateAcceptor
00164     {
00165     public:
00166         
00167         virtual ~SA_E_LeEq() {}
00168         
00176         virtual bool accept(
00177                 const StateCollector* const sc, 
00178                 const State& succ) const;
00179     };
00180     
00192     class SA_EC_Le : public StateAcceptor
00193     {
00194     public:
00195         
00196         virtual ~SA_EC_Le() {}
00197         
00207         virtual bool accept(
00208                 const StateCollector* const sc, 
00209                 const State& succ) const;
00210     };
00211     
00219     class SA_Metropolis : public StateAcceptor {
00220     protected:
00221         const double beta;
00222 
00223     public:
00224         SA_Metropolis(const double _beta);
00225 
00226         virtual ~SA_Metropolis() {}
00227         
00235         virtual bool accept(
00236                 const StateCollector* const sc, 
00237                 const State& succ) const;
00238     };
00239     
00240 } // namespace ell
00241 
00242 #endif /*STATEACCEPTOR_HH_*/