CASM
AClustersApproachtoStatisticalMechanics
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules
CASM::ConfigDoFCompare Class Reference

#include <ConfigDoFCompare.hh>

Detailed Description

Wrapper class for generic less than comparison of ConfigDoF.

  • Wraps a functor derived from ConfigDoFIsEquivalentBase that is specialized for comparison of a particular type of DoF

Definition at line 17 of file ConfigDoFCompare.hh.

Public Member Functions

template<typename ConfigDoFIsEquivalentType >
 ConfigDoFCompare (std::unique_ptr< ConfigDoFIsEquivalentType > f)
 Construct a ConfigDoFCompare object for a particular DoF type. More...
 
bool operator() (const Configuration &other) const
 Return config < other. More...
 
bool operator() (const ConfigDoF &other) const
 Return config < other. More...
 
bool operator() (const PermuteIterator &A) const
 Return config < A*config. More...
 
bool operator() (const PermuteIterator &A, const PermuteIterator &B) const
 Return A*config < B*config. More...
 

Private Attributes

notstd::cloneable_ptr
< DoFIsEquivalent::ConfigDoFIsEquivalentBase
m_f
 

Related Functions

(Note that these are not member functions.)

template<typename ConfigDoFIsEquivalentType , typename... Args>
ConfigDoFCompare make_dof_compare (Args &&...args)
 

Constructor & Destructor Documentation

template<typename ConfigDoFIsEquivalentType >
CASM::ConfigDoFCompare::ConfigDoFCompare ( std::unique_ptr< ConfigDoFIsEquivalentType >  f)
inline

Construct a ConfigDoFCompare object for a particular DoF type.

Easiest construction is probably using 'make_dof_compare'.

Example:

ConfigDoFCompare strain_compare = make_dof_compare<DoFIsEquivalent::Strain>(my_configdof or my_config);
ConfigDoFCompare occ_compare = make_dof_compare<DoFIsEquivalent::Occupation>(my_configdof or my_config);
ConfigDoFCompare disp_compare = make_dof_compare<DoFIsEquivalent::Displacement>(my_configdof or my_config);

Definition at line 32 of file ConfigDoFCompare.hh.

Member Function Documentation

bool CASM::ConfigDoFCompare::operator() ( const Configuration other) const
inline

Return config < other.

Definition at line 37 of file ConfigDoFCompare.hh.

bool CASM::ConfigDoFCompare::operator() ( const ConfigDoF other) const
inline

Return config < other.

Definition at line 42 of file ConfigDoFCompare.hh.

bool CASM::ConfigDoFCompare::operator() ( const PermuteIterator A) const
inline

Return config < A*config.

Definition at line 50 of file ConfigDoFCompare.hh.

bool CASM::ConfigDoFCompare::operator() ( const PermuteIterator A,
const PermuteIterator B 
) const
inline

Return A*config < B*config.

Definition at line 58 of file ConfigDoFCompare.hh.

Friends And Related Function Documentation

template<typename ConfigDoFIsEquivalentType , typename... Args>
ConfigDoFCompare make_dof_compare ( Args &&...  args)
related

Factory function to make ConfigDoFCompare

Definition at line 74 of file ConfigDoFCompare.hh.

Member Data Documentation

Definition at line 66 of file ConfigDoFCompare.hh.


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