CASM  1.1.0
A Clusters Approach to Statistical Mechanics
CASM::ProtoFuncsPrinter Struct Reference

#include <ProtoFuncsPrinter.hh>

+ Inheritance diagram for CASM::ProtoFuncsPrinter:

Detailed Description

Print Orbit<SymCompareType> & ClexBasis, including prototypes and prototype basis functions.

Definition at line 22 of file ProtoFuncsPrinter.hh.

Public Types

typedef xtal::BasicStructure PrimType
 
typedef std::shared_ptr< const PrimTypePrimType_ptr
 
typedef IntegralCluster Element
 

Public Member Functions

 ProtoFuncsPrinter (ClexBasis const &_clex_basis, PrimType_ptr prim_ptr, bool align, OrbitPrinterOptions const &_opt=OrbitPrinterOptions())
 
template<typename OrbitType >
void operator() (const OrbitType &orbit, Log &out, Index orbit_index, Index Norbits) const
 Print to JSON. More...
 
template<typename OrbitType >
jsonParserto_json (const OrbitType &orbit, jsonParser &json, Index orbit_index, Index Norbits) const
 
void print (const Element &element, Log &out) const
 
void coord_type (Log &out)
 
void increase_indent (Log &out) const
 
void decrease_indent (Log &out) const
 
template<typename OrbitType >
void print_equivalence_map (const OrbitType &orbit, Index equiv_index, Log &out) const
 
template<typename OrbitType >
void print_equivalence_map (const OrbitType &orbit, Index equiv_index, jsonParser &json) const
 
template<typename OrbitType >
void print_equivalence_map (const OrbitType &orbit, Log &out) const
 
template<typename OrbitType , typename Element >
void print_invariant_group (const OrbitType &orbit, const Element &element, Log &out) const
 
template<typename OrbitType , typename Element >
void print_invariant_group (const OrbitType &orbit, const Element &element, jsonParser &json) const
 

Public Attributes

ClexBasis const & clex_basis
 
std::vector< SubExpressionLabelerlabelers
 
OrbitPrinterOptions opt
 

Static Public Attributes

static const std::string element_name = "Clusters"
 

Private Attributes

PrimType_ptr prim_ptr
 
bool m_align
 

Member Typedef Documentation

◆ Element

Definition at line 97 of file OrbitPrinter.hh.

◆ PrimType

◆ PrimType_ptr

typedef std::shared_ptr<const PrimType> CASM::ProtoFuncsPrinter::PrimType_ptr

Definition at line 24 of file ProtoFuncsPrinter.hh.

Constructor & Destructor Documentation

◆ ProtoFuncsPrinter()

CASM::ProtoFuncsPrinter::ProtoFuncsPrinter ( ClexBasis const &  _clex_basis,
PrimType_ptr  prim_ptr,
bool  align,
OrbitPrinterOptions const &  _opt = OrbitPrinterOptions() 
)

Definition at line 19 of file ProtoFuncsPrinter.cc.

Member Function Documentation

◆ coord_type()

void CASM::PrinterBase::coord_type ( Log out)
inherited

Definition at line 54 of file OrbitPrinter.cc.

◆ decrease_indent()

void CASM::PrinterBase::decrease_indent ( Log out) const
inlineinherited

Definition at line 58 of file OrbitPrinter.hh.

◆ increase_indent()

void CASM::PrinterBase::increase_indent ( Log out) const
inlineinherited

Definition at line 55 of file OrbitPrinter.hh.

◆ operator()()

template<typename OrbitType >
void CASM::ProtoFuncsPrinter::operator() ( const OrbitType &  orbit,
Log out,
Index  orbit_index,
Index  Norbits 
) const

Print to JSON.

Note: for 'read_clust' to work, "prototype" must be written

Definition at line 12 of file ProtoFuncsPrinter_impl.hh.

◆ print()

void CASM::Printer< IntegralCluster >::print ( const Element element,
Log out 
) const
inherited

Definition at line 61 of file OrbitPrinter.cc.

◆ print_equivalence_map() [1/3]

template<typename OrbitType >
void CASM::PrinterBase::print_equivalence_map ( const OrbitType &  orbit,
Index  equiv_index,
jsonParser json 
) const
inherited

Definition at line 40 of file OrbitPrinter_impl.hh.

◆ print_equivalence_map() [2/3]

template<typename OrbitType >
void CASM::PrinterBase::print_equivalence_map ( const OrbitType &  orbit,
Index  equiv_index,
Log out 
) const
inherited

Definition at line 24 of file OrbitPrinter_impl.hh.

◆ print_equivalence_map() [3/3]

template<typename OrbitType >
void CASM::PrinterBase::print_equivalence_map ( const OrbitType &  orbit,
Log out 
) const
inherited

Definition at line 61 of file OrbitPrinter_impl.hh.

◆ print_invariant_group() [1/2]

template<typename OrbitType , typename Element >
void CASM::PrinterBase::print_invariant_group ( const OrbitType &  orbit,
const Element &  element,
jsonParser json 
) const
inherited

Definition at line 96 of file OrbitPrinter_impl.hh.

◆ print_invariant_group() [2/2]

template<typename OrbitType , typename Element >
void CASM::PrinterBase::print_invariant_group ( const OrbitType &  orbit,
const Element &  element,
Log out 
) const
inherited

Definition at line 82 of file OrbitPrinter_impl.hh.

◆ to_json()

template<typename OrbitType >
jsonParser & CASM::ProtoFuncsPrinter::to_json ( const OrbitType &  orbit,
jsonParser json,
Index  orbit_index,
Index  Norbits 
) const

Definition at line 99 of file ProtoFuncsPrinter_impl.hh.

Member Data Documentation

◆ clex_basis

ClexBasis const& CASM::ProtoFuncsPrinter::clex_basis

Definition at line 26 of file ProtoFuncsPrinter.hh.

◆ element_name

const std::string CASM::Printer< IntegralCluster >::element_name = "Clusters"
staticinherited

Definition at line 98 of file OrbitPrinter.hh.

◆ labelers

std::vector<SubExpressionLabeler> CASM::ProtoFuncsPrinter::labelers

Definition at line 28 of file ProtoFuncsPrinter.hh.

◆ m_align

bool CASM::ProtoFuncsPrinter::m_align
private

Definition at line 47 of file ProtoFuncsPrinter.hh.

◆ opt

OrbitPrinterOptions CASM::PrinterBase::opt
inherited

Definition at line 49 of file OrbitPrinter.hh.

◆ prim_ptr

PrimType_ptr CASM::ProtoFuncsPrinter::prim_ptr
private

Definition at line 46 of file ProtoFuncsPrinter.hh.


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