CHROMA
hadron_contract.h
Go to the documentation of this file.
1 // -*- C++ -*-
2 /*! \file
3  * \brief Construct hadron correlators
4  */
5 
6 #ifndef __hadron_contract_h__
7 #define __hadron_contract_h__
8 
9 #include "chromabase.h"
10 #include "handle.h"
11 #include "io/qprop_io.h"
12 #include <list>
13 
14 namespace Chroma
15 {
16  //! The result of hadron contractions
17  /*! @ingroup hadron */
19  {
20  XMLBufferWriter xml; /*!< XML about each corr group - used to drive the stripper */
21  BinaryBufferWriter bin; /*!< Holds momentum projected correlators */
22 
23  XMLBufferWriter xml_regres; /*!< Sample XML used for regression checking */
24  };
25 
26 
27  //! Construct hadron correlators
28  /*! @ingroup hadron
29  *
30  * Supports creation of hadron correlators
31  */
33  {
34  public:
35  //! Virtual destructor to help with cleanup;
36  virtual ~HadronContract() {}
37 
38  //! Construct the correlators
39  virtual std::list< Handle<HadronContractResult_t> > operator()(const multi1d<LatticeColorMatrix>& u,
40  const std::string& xml_group,
41  const std::string& id_tag) = 0;
42 
43  protected:
44  //! Convenience function to read propagator
45  virtual ForwardProp_t readForwardPropHeader(const std::string& prop_id) const;
46 
47  //! Convenience function to get t_srce from headers
48  virtual multi1d<int> getTSrce(const multi1d<ForwardProp_t>& forward_headers) const;
49 
50  //! Convenience function to get decay_dir from headers
51  virtual int getDecayDir(const multi1d<ForwardProp_t>& forward_headers) const;
52  };
53 
54 }
55 
56 
57 #endif
Primary include file for CHROMA library code.
Construct hadron correlators.
virtual std::list< Handle< HadronContractResult_t > > operator()(const multi1d< LatticeColorMatrix > &u, const std::string &xml_group, const std::string &id_tag)=0
Construct the correlators.
virtual multi1d< int > getTSrce(const multi1d< ForwardProp_t > &forward_headers) const
Convenience function to get t_srce from headers.
virtual ForwardProp_t readForwardPropHeader(const std::string &prop_id) const
Convenience function to read propagator.
virtual int getDecayDir(const multi1d< ForwardProp_t > &forward_headers) const
Convenience function to get decay_dir from headers.
virtual ~HadronContract()
Virtual destructor to help with cleanup;.
Class for counted reference semantics.
multi1d< ForwardProp_t > & forward_headers
Asqtad Staggered-Dirac operator.
Definition: klein_gord.cc:10
static multi1d< LatticeColorMatrix > u
::std::string string
Definition: gtest.h:1979
Routines associated with Chroma propagator IO.
Mega structure holding a full forward sink-smeared prop.
Definition: qprop_io.h:120
The result of hadron contractions.