Bridge++  Version 1.4.4
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
GaugeConfig Class Reference

GaugeConfig class for file I/O of gauge configuration. More...

#include <gaugeConfig.h>

Inheritance diagram for GaugeConfig:
GaugeConfig_SF

Classes

class  DataSource
 
class  DataSource_Random
 
class  DataSource_Unit
 

Public Member Functions

 GaugeConfig (const string &type)
 
virtual ~GaugeConfig ()
 
void read (Field_G *U, const string &filename=string())
 
void read (unique_ptr< Field_G > &U, const string &filename=string())
 
void write (Field_G *U, const string &filename=string())
 
void write (unique_ptr< Field_G > &U, const string &filename=string())
 
void read_file (Field_G *U, const string &filename)
 
void read_file (unique_ptr< Field_G > &U, const string &filename)
 
void write_file (Field_G *U, const string &filename)
 
void write_file (unique_ptr< Field_G > &U, const string &filename)
 

Static Public Attributes

static const std::string class_name = "GaugeConfig"
 

Protected Attributes

Bridge::VerboseLevel m_vl
 
FieldIOm_fieldio
 

Private Member Functions

 GaugeConfig (const GaugeConfig &)
 
GaugeConfigoperator= (const GaugeConfig &)
 

Private Attributes

DataSourcem_datasource
 

Detailed Description

GaugeConfig class for file I/O of gauge configuration.

This class family is used to setup and output the gauge configuration. This is the base class, which implements common functions, and read/write methods are implemented in subclasses. At present, cutting off the gauge field for each node and deliver it to the node is implemented in this class. It may be better to separate that to other class for general usage for other field objects. [28 Dec 2011 H.Matsufuru]

GaugeConfig class provides file I/O of gauge configuration. It provides an interface to underlying FieldIO class family;

The file format is specified by a string argument type to the constructor (in a somewhat similar manner as factory). Data layout is ILDG layout for most of the cases except for Fortran_JLQCD in which JLQCD layout is applied.

"NO_OUTPUT" is added to GaugeConfig::write_file() [22 Feb 2015 Y.Namekawa] unique_ptr is introduced to avoid memory leaks [21 Mar 2015 Y.Namekawa] Config types "Unit" and "Random" are introduced to generate unit and random gauge configurations for cold and hot start, respectively. The methods are renamed to read/write. read_file/write_file are left for compatibility. these methods now take args of Field_G* type instead of Field*. [24 June 2016 T.Aoyama] "Null" config type is introduced that suppresses output. Specifying "NO_OUTPUT" for filename is also valid. [8 July 2016 T.Aoyama]

Definition at line 75 of file gaugeConfig.h.

Constructor & Destructor Documentation

GaugeConfig::GaugeConfig ( const string &  type)

Definition at line 60 of file gaugeConfig.cpp.

GaugeConfig::~GaugeConfig ( )
virtual

Definition at line 97 of file gaugeConfig.cpp.

GaugeConfig::GaugeConfig ( const GaugeConfig )
private

Member Function Documentation

GaugeConfig& GaugeConfig::operator= ( const GaugeConfig )
private
void GaugeConfig::read ( Field_G U,
const string &  filename = string() 
)

Definition at line 105 of file gaugeConfig.cpp.

void GaugeConfig::read ( unique_ptr< Field_G > &  U,
const string &  filename = string() 
)
inline

Definition at line 93 of file gaugeConfig.h.

void GaugeConfig::read_file ( Field_G U,
const string &  filename 
)
inline

Definition at line 102 of file gaugeConfig.h.

void GaugeConfig::read_file ( unique_ptr< Field_G > &  U,
const string &  filename 
)
inline

Definition at line 104 of file gaugeConfig.h.

void GaugeConfig::write ( Field_G U,
const string &  filename = string() 
)

Definition at line 121 of file gaugeConfig.cpp.

void GaugeConfig::write ( unique_ptr< Field_G > &  U,
const string &  filename = string() 
)
inline

Definition at line 98 of file gaugeConfig.h.

void GaugeConfig::write_file ( Field_G U,
const string &  filename 
)
inline

Definition at line 107 of file gaugeConfig.h.

void GaugeConfig::write_file ( unique_ptr< Field_G > &  U,
const string &  filename 
)
inline

Definition at line 109 of file gaugeConfig.h.

Member Data Documentation

const std::string GaugeConfig::class_name = "GaugeConfig"
static

Definition at line 78 of file gaugeConfig.h.

DataSource* GaugeConfig::m_datasource
private

Definition at line 119 of file gaugeConfig.h.

FieldIO* GaugeConfig::m_fieldio
protected

Definition at line 114 of file gaugeConfig.h.

Bridge::VerboseLevel GaugeConfig::m_vl
protected

Definition at line 113 of file gaugeConfig.h.


The documentation for this class was generated from the following files: