mirror of
https://github.com/paboyle/Grid.git
synced 2025-06-16 23:07:05 +01:00
Adding ScalarField theory
This commit is contained in:
@ -487,6 +487,7 @@ class OneFlavourRatioEOFModule:
|
||||
|
||||
// explicit ref to LatticeGaugeField must be changed or put in the factory
|
||||
typedef ActionModuleBase< QCD::Action< QCD::LatticeGaugeField >, QCD::GridModule > HMC_LGTActionModBase;
|
||||
typedef ActionModuleBase< QCD::Action< QCD::LatticeReal >, QCD::GridModule > HMC_ScalarActionModBase;
|
||||
|
||||
template <char const *str, class ReaderClass >
|
||||
class HMC_LGTActionModuleFactory
|
||||
@ -510,6 +511,28 @@ class HMC_LGTActionModuleFactory
|
||||
|
||||
|
||||
|
||||
template <char const *str, class ReaderClass >
|
||||
class HMC_ScalarActionModuleFactory
|
||||
: public Factory < HMC_ScalarActionModBase , Reader<ReaderClass> > {
|
||||
public:
|
||||
typedef Reader<ReaderClass> TheReader;
|
||||
// use SINGLETON FUNCTOR MACRO HERE
|
||||
HMC_ScalarActionModuleFactory(const HMC_ScalarActionModuleFactory& e) = delete;
|
||||
void operator=(const HMC_ScalarActionModuleFactory& e) = delete;
|
||||
static HMC_ScalarActionModuleFactory& getInstance(void) {
|
||||
static HMC_ScalarActionModuleFactory e;
|
||||
return e;
|
||||
}
|
||||
|
||||
private:
|
||||
HMC_ScalarActionModuleFactory(void) = default;
|
||||
std::string obj_type() const {
|
||||
return std::string(str);
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
|
||||
extern char gauge_string[];
|
||||
} // Grid
|
||||
|
||||
|
Reference in New Issue
Block a user