Bridge++  Version 1.5.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] "Null" renamed by "None" in compliance with yaml specifications. (kept for backward compatilibity) [21 November 2018 T.Aoyama]

Definition at line 78 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 95 of file gaugeConfig.h.

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

Definition at line 104 of file gaugeConfig.h.

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

Definition at line 106 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 100 of file gaugeConfig.h.

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

Definition at line 109 of file gaugeConfig.h.

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

Definition at line 111 of file gaugeConfig.h.

Member Data Documentation

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

Definition at line 81 of file gaugeConfig.h.

DataSource* GaugeConfig::m_datasource
private

Definition at line 121 of file gaugeConfig.h.

FieldIO* GaugeConfig::m_fieldio
protected

Definition at line 116 of file gaugeConfig.h.

Bridge::VerboseLevel GaugeConfig::m_vl
protected

Definition at line 115 of file gaugeConfig.h.


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