CHROMA
inline_make_source_ferm_w.h
Go to the documentation of this file.
1 // -*- C++ -*-
2 /*! \file
3  * \brief Inline construction of make_source for lattice fermions
4  *
5  * Construct source for propagator calculations
6  */
7 
8 #ifndef __inline_make_source_ferm_h__
9 #define __inline_make_source_ferm_h__
10 
11 #include "chromabase.h"
13 #include "io/qprop_io.h"
14 
15 namespace Chroma
16 {
17  /*! \ingroup inlinehadron */
18  namespace InlineMakeSourceFermEnv
19  {
20  extern const std::string name;
21  bool registerAll();
22  }
23 
24  //! Parameter structure
25  /*! \ingroup inlinehadron */
27  {
29  InlineMakeSourceFermParams(XMLReader& xml_in, const std::string& path);
30 
31  unsigned long frequency;
32 
34 
36  {
40 
41  std::string xml_file; // Alternate XML file pattern
42  };
43 
44 
45  //! Make source input
46  void read(XMLReader& xml, const std::string& path, InlineMakeSourceFermParams& input);
47 
48  //! Make source output
49  void write(XMLWriter& xml, const std::string& path, const InlineMakeSourceFermParams& input);
50 
51 
52  //! Inline task creating sources for quark inversion
53  /*! \ingroup inlinehadron */
55  {
56  public:
60 
61  unsigned long getFrequency(void) const {return params.frequency;}
62 
63  //! Do the measurement
64  void operator()(const unsigned long update_no,
65  XMLWriter& xml_out);
66 
67  protected:
68  //! Do the measurement
69  void func(const unsigned long update_no,
70  XMLWriter& xml_out);
71 
72  private:
74  };
75 
76 }
77 
78 #endif
Abstract inline measurements.
Primary include file for CHROMA library code.
Inline task creating sources for quark inversion.
void operator()(const unsigned long update_no, XMLWriter &xml_out)
Do the measurement.
unsigned long getFrequency(void) const
Tell me how often I should measure this beastie.
InlineMakeSourceFerm(const InlineMakeSourceFermParams &p)
InlineMakeSourceFermParams params
void func(const unsigned long update_no, XMLWriter &xml_out)
Do the measurement.
InlineMakeSourceFerm(const InlineMakeSourceFerm &p)
void read(XMLReader &xml, const std::string &path, AsqtadFermActParams &param)
Read parameters.
void write(XMLWriter &xml, const std::string &path, const AsqtadFermActParams &param)
Writer parameters.
bool registerAll()
Register all the factories.
Asqtad Staggered-Dirac operator.
Definition: klein_gord.cc:10
::std::string string
Definition: gtest.h:1979
Routines associated with Chroma propagator IO.
struct Chroma::InlineMakeSourceFermParams::NamedObject_t named_obj
Propagator source construction parameters.
Definition: qprop_io.h:27