1 /*  -*- c++ -*-  */
2 #ifndef MODIFIERUPDATEBETA_H
3 #define MODIFIERUPDATEBETA_H
4 
5 #include "Modifier.h"
6 #include "ShadowHMCIntegrator.h"
7 
8 namespace ProtoMol {
9 
10   //_________________________________________________________________ ModifierUpdateBeta
11   class ModifierUpdateBeta : public Modifier {
12     //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
13     // Constructors, destructors, assignment
14     //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
15   public:
ModifierUpdateBeta(ShadowHMCIntegrator * i)16     ModifierUpdateBeta(ShadowHMCIntegrator* i):Modifier(Constant::MAX_INT-100),myTheIntegrator(i){}
17 
18     //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
19     // From class Modifier
20     //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
21   public:
isInternal()22     virtual bool isInternal() const {return true;}
23   private:
doExecute()24     virtual void doExecute(){
25       myTheIntegrator->updateBeta();
26     }
doPrint()27     virtual std::string doPrint()const{return std::string("UpdateBeta");};
28 
29     //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
30     // My data members
31     //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
32   private:
33     ShadowHMCIntegrator* myTheIntegrator;
34   };
35 
36 }
37 #endif /* MODIFIER_H */
38