CASM  1.1.0
A Clusters Approach to Statistical Mechanics
CASM::DB::SelectionIterator< ObjType, BaseIterator > Class Template Reference

#include <Selection.hh>

+ Inheritance diagram for CASM::DB::SelectionIterator< ObjType, BaseIterator >:

Detailed Description

template<typename ObjType, typename BaseIterator>
class CASM::DB::SelectionIterator< ObjType, BaseIterator >

Definition at line 44 of file Selection.hh.

Public Types

typedef CASM_TMP::ConstSwitch< std::is_same< BaseIterator, std::map< std::string, bool >::const_iterator >::value, bool > bool_type
 

Public Member Functions

 SelectionIterator ()
 Default constructor (equals end) More...
 
std::string name () const
 Name of object the iterator points at. More...
 
bool_typeis_selected ()
 Reference to value 'is_selected'. More...
 
bool is_selected () const
 Reference to value 'is_selected'. More...
 

Private Member Functions

 SelectionIterator (const Selection< ObjType > &_list, BaseIterator _it, bool _selected_only)
 Construct iterator. More...
 
void increment ()
 boost::iterator_facade implementation More...
 
void decrement ()
 boost::iterator_facade implementation More...
 
const ObjType & dereference () const
 boost::iterator_facade implementation More...
 
bool equal (const SelectionIterator &B) const
 boost::iterator_facade implementation More...
 

Private Attributes

friend Selection< ObjType >
 
const Selection< ObjType > * m_list
 
BaseIterator m_it
 
bool m_selected_only
 

Member Typedef Documentation

◆ bool_type

template<typename ObjType , typename BaseIterator >
typedef CASM_TMP::ConstSwitch< std::is_same<BaseIterator, std::map<std::string, bool>::const_iterator>::value, bool> CASM::DB::SelectionIterator< ObjType, BaseIterator >::bool_type

Definition at line 53 of file Selection.hh.

Constructor & Destructor Documentation

◆ SelectionIterator() [1/2]

template<typename ObjType , typename BaseIterator >
CASM::DB::SelectionIterator< ObjType, BaseIterator >::SelectionIterator ( )
inline

Default constructor (equals end)

Definition at line 56 of file Selection.hh.

◆ SelectionIterator() [2/2]

template<typename ObjType , typename BaseIterator >
CASM::DB::SelectionIterator< ObjType, BaseIterator >::SelectionIterator ( const Selection< ObjType > &  _list,
BaseIterator  _it,
bool  _selected_only 
)
private

Construct iterator.

Definition at line 93 of file Selection.cc.

Member Function Documentation

◆ decrement()

template<typename ObjType , typename BaseIterator >
void CASM::DB::SelectionIterator< ObjType, BaseIterator >::decrement
private

boost::iterator_facade implementation

Definition at line 114 of file Selection.cc.

◆ dereference()

template<typename ObjType , typename BaseIterator >
const ObjType & CASM::DB::SelectionIterator< ObjType, BaseIterator >::dereference
private

boost::iterator_facade implementation

Definition at line 124 of file Selection.cc.

◆ equal()

template<typename ObjType , typename BaseIterator >
bool CASM::DB::SelectionIterator< ObjType, BaseIterator >::equal ( const SelectionIterator< ObjType, BaseIterator > &  B) const
private

boost::iterator_facade implementation

Definition at line 130 of file Selection.cc.

◆ increment()

template<typename ObjType , typename BaseIterator >
void CASM::DB::SelectionIterator< ObjType, BaseIterator >::increment
private

boost::iterator_facade implementation

Definition at line 104 of file Selection.cc.

◆ is_selected() [1/2]

template<typename ObjType , typename BaseIterator >
SelectionIterator< ObjType, BaseIterator >::bool_type & CASM::DB::SelectionIterator< ObjType, BaseIterator >::is_selected

Reference to value 'is_selected'.

Definition at line 81 of file Selection.cc.

◆ is_selected() [2/2]

template<typename ObjType , typename BaseIterator >
bool CASM::DB::SelectionIterator< ObjType, BaseIterator >::is_selected

Reference to value 'is_selected'.

Definition at line 87 of file Selection.cc.

◆ name()

template<typename ObjType , typename BaseIterator >
std::string CASM::DB::SelectionIterator< ObjType, BaseIterator >::name

Name of object the iterator points at.

Definition at line 74 of file Selection.cc.

Member Data Documentation

◆ m_it

template<typename ObjType , typename BaseIterator >
BaseIterator CASM::DB::SelectionIterator< ObjType, BaseIterator >::m_it
private

Definition at line 96 of file Selection.hh.

◆ m_list

template<typename ObjType , typename BaseIterator >
const Selection<ObjType>* CASM::DB::SelectionIterator< ObjType, BaseIterator >::m_list
private

Definition at line 95 of file Selection.hh.

◆ m_selected_only

template<typename ObjType , typename BaseIterator >
bool CASM::DB::SelectionIterator< ObjType, BaseIterator >::m_selected_only
private

Definition at line 97 of file Selection.hh.

◆ Selection< ObjType >

template<typename ObjType , typename BaseIterator >
friend CASM::DB::SelectionIterator< ObjType, BaseIterator >::Selection< ObjType >
private

Definition at line 70 of file Selection.hh.


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