ug4
|
base class for all vector debug writer More...
#include <debug_writer.h>
Public Types | |
typedef TVector | vector_type |
type of vector More... | |
Public Member Functions | |
int | current_dimension () const |
returns the current dimension More... | |
void | enter_section (const char *secDir) |
enter a new debugging section More... | |
std::string | get_base_dir () |
SmartPtr< DebugWriterContext > | get_context () |
get the debugging writer context More... | |
ConstSmartPtr< DebugWriterContext > | get_context () const |
get the debugging writer context More... | |
int | get_dim () const |
get the dimensionality More... | |
template<int dim> | |
const std::vector< MathVector< dim > > & | get_positions () const |
returns the positions (only available for current dimension) More... | |
IVectorDebugWriter () | |
Constructor. More... | |
void | leave_section () |
leave the current debugging section More... | |
virtual void | print_message (const char *msg) |
prints a message More... | |
void | set_base_dir (const char *const baseDir) |
set the base directory for output files (.vec and .mat) More... | |
void | set_context (SmartPtr< DebugWriterContext > context) |
set the debugging writer context More... | |
template<int dim> | |
void | set_positions (const std::vector< MathVector< dim > > &vPos) |
sets the current positions More... | |
template<int dim> | |
void | set_positions (IPositionProvider< dim > &provider) |
employs a position provider to set the current positions More... | |
virtual void | update_positions () |
virtual void | write_vector (const vector_type &vec, const char *name)=0 |
write vector More... | |
virtual | ~IVectorDebugWriter () |
virtual destructor More... | |
Protected Member Functions | |
void | compose_file_path (std::string &path) |
composes the path for the files and creates the intermediate directories (up to the base one): More... | |
std::vector< MathVector< 1 > > & | get_pos (Int2Type< 1 >) |
help function to get local ips More... | |
const std::vector< MathVector< 1 > > & | get_pos (Int2Type< 1 >) const |
std::vector< MathVector< 2 > > & | get_pos (Int2Type< 2 >) |
const std::vector< MathVector< 2 > > & | get_pos (Int2Type< 2 >) const |
std::vector< MathVector< 3 > > & | get_pos (Int2Type< 3 >) |
const std::vector< MathVector< 3 > > & | get_pos (Int2Type< 3 >) const |
template<int dim> | |
std::vector< MathVector< dim > > & | positions () |
returns the positions and sets the current dim More... | |
Protected Attributes | |
int | m_currentDim |
current dimension More... | |
SmartPtr< DebugWriterContext > | m_spContext |
debugging writer context More... | |
std::vector< MathVector< 1 > > | m_vPos1d |
vectors of positions More... | |
std::vector< MathVector< 2 > > | m_vPos2d |
std::vector< MathVector< 3 > > | m_vPos3d |
base class for all vector debug writer
This is the base class for debug output of algebraic vectors
typedef TVector ug::IVectorDebugWriter< TVector >::vector_type |
type of vector
|
inline |
Constructor.
References new().
|
inlinevirtual |
virtual destructor
|
inlineprotected |
composes the path for the files and creates the intermediate directories (up to the base one):
References ug::IVectorDebugWriter< TVector >::m_spContext.
|
inline |
returns the current dimension
References ug::IVectorDebugWriter< TVector >::m_currentDim.
|
inline |
enter a new debugging section
References ug::IVectorDebugWriter< TVector >::m_spContext.
|
inline |
References ug::IVectorDebugWriter< TVector >::m_spContext.
|
inline |
get the debugging writer context
References ug::IVectorDebugWriter< TVector >::m_spContext.
|
inline |
get the debugging writer context
References ug::IVectorDebugWriter< TVector >::m_spContext.
|
inline |
get the dimensionality
References ug::IVectorDebugWriter< TVector >::m_currentDim.
Referenced by ug::OverlapWriter< TAlgebra >::init().
|
inlineprotected |
help function to get local ips
References ug::IVectorDebugWriter< TVector >::m_vPos1d.
Referenced by ug::IVectorDebugWriter< TVector >::get_positions(), ug::IVectorDebugWriter< TVector >::positions(), and ug::IVectorDebugWriter< TVector >::set_positions().
|
inlineprotected |
References ug::IVectorDebugWriter< TVector >::m_vPos1d.
|
inlineprotected |
References ug::IVectorDebugWriter< TVector >::m_vPos2d.
|
inlineprotected |
References ug::IVectorDebugWriter< TVector >::m_vPos2d.
|
inlineprotected |
References ug::IVectorDebugWriter< TVector >::m_vPos3d.
|
inlineprotected |
References ug::IVectorDebugWriter< TVector >::m_vPos3d.
|
inline |
returns the positions (only available for current dimension)
References dim, ug::IVectorDebugWriter< TVector >::get_pos(), and ug::IVectorDebugWriter< TVector >::m_currentDim.
|
inline |
leave the current debugging section
References ug::IVectorDebugWriter< TVector >::m_spContext.
|
inlineprotected |
returns the positions and sets the current dim
References dim, ug::IVectorDebugWriter< TVector >::get_pos(), and ug::IVectorDebugWriter< TVector >::m_currentDim.
|
inlinevirtual |
prints a message
References ug::IVectorDebugWriter< TVector >::m_spContext.
|
inline |
set the base directory for output files (.vec and .mat)
References ug::IVectorDebugWriter< TVector >::m_spContext, and ug::IVectorDebugWriter< TVector >::set_context().
|
inline |
set the debugging writer context
References ug::IVectorDebugWriter< TVector >::m_spContext.
Referenced by ug::IVectorDebugWriter< TVector >::set_base_dir().
|
inline |
sets the current positions
References dim, ug::IVectorDebugWriter< TVector >::get_pos(), and ug::IVectorDebugWriter< TVector >::m_currentDim.
|
inline |
employs a position provider to set the current positions
References dim, ug::IVectorDebugWriter< TVector >::get_pos(), ug::IPositionProvider< dim >::get_positions(), and ug::IVectorDebugWriter< TVector >::m_currentDim.
|
inlinevirtual |
gives subclasses the oportunity to calculate the positions this is used e.g. in GridFunctionDebugWriter after this has been called, get_positions gives valid positions those positions are used e.g. in AMG or Schur methods.
Reimplemented in ug::GridFunctionDebugWriter< TDomain, TAlgebra >.
|
pure virtual |
write vector
Implemented in ug::IDebugWriter< TAlgebra >, and ug::GridFunctionDebugWriter< TDomain, TAlgebra >.
|
protected |
|
protected |
debugging writer context
Referenced by ug::IVectorDebugWriter< TVector >::compose_file_path(), ug::IVectorDebugWriter< TVector >::enter_section(), ug::IVectorDebugWriter< TVector >::get_base_dir(), ug::IVectorDebugWriter< TVector >::get_context(), ug::IVectorDebugWriter< TVector >::leave_section(), ug::IVectorDebugWriter< TVector >::print_message(), ug::IVectorDebugWriter< TVector >::set_base_dir(), and ug::IVectorDebugWriter< TVector >::set_context().
|
protected |
vectors of positions
Referenced by ug::IVectorDebugWriter< TVector >::get_pos().
|
protected |
Referenced by ug::IVectorDebugWriter< TVector >::get_pos().
|
protected |
Referenced by ug::IVectorDebugWriter< TVector >::get_pos().