CHROMA
timeslice_io_cache.h
Go to the documentation of this file.
1 // -*- C++ -*-
2 /*! \file
3  * \brief LatticeColorVector time-slice IO cache
4  *
5  * LatticeColorVector time-slice IO cache
6  */
7 
8 #ifndef __timeslice_io_cache_h__
9 #define __timeslice_io_cache_h__
10 
11 #include "chromabase.h"
12 #include "qdp_map_obj_disk.h"
14 
15 namespace Chroma
16 {
17  /*! \ingroup inlinehadron */
18  //----------------------------------------------------------------------------
19  //----------------------------------------------------------------------------
20  //! Cache for holding time slice eigenvectors
22  {
23  public:
24  //! Constructor
25  TimeSliceIOCache(QDP::MapObjectDisk<KeyTimeSliceColorVec_t,LatticeColorVector>& eigen_source_);
26 
27  //! Virtual destructor
28  virtual ~TimeSliceIOCache() {}
29 
30  //! Get number of vectors
31  virtual int getNumVecs() const {return num_vecs;}
32 
33  //! Get the whole std::vector
34  virtual LatticeColorVector& getVec(int colorvec);
35 
36  //! Get a std::vector
37  virtual LatticeColorVector& getVec(int t_actual, int colorvec);
38 
39  private:
40  // Arguments
41  QDP::MapObjectDisk< KeyTimeSliceColorVec_t,TimeSliceIO<LatticeColorVector> >& eigen_source;
42 
43  // Local
44  multi1d<LatticeColorVector> eigen_cache;
45  multi2d<bool> cache_marker;
46  int num_vecs;
47  };
48 
49 }
50 
51 #endif
Primary include file for CHROMA library code.
Cache for holding time slice eigenvectors.
virtual LatticeColorVector & getVec(int colorvec)
Get the whole std::vector.
multi1d< LatticeColorVector > eigen_cache
virtual int getNumVecs() const
Get number of vectors.
virtual ~TimeSliceIOCache()
Virtual destructor.
TimeSliceIOCache(QDP::MapObjectDisk< KeyTimeSliceColorVec_t, LatticeColorVector > &eigen_source_)
Constructor.
QDP::MapObjectDisk< KeyTimeSliceColorVec_t, TimeSliceIO< LatticeColorVector > > & eigen_source
Key for time-sliced color eigenvectors.
Asqtad Staggered-Dirac operator.
Definition: klein_gord.cc:10