IGLib 1.4
The IGLib base library for development of numerical, technical and business applications.

IG::Lib::KeyValueSortable< Tkey, Tvalue >::ComparerBase Class Reference

Base class for different IComparer classes. More...

Inheritance diagram for IG::Lib::KeyValueSortable< Tkey, Tvalue >::ComparerBase:

List of all members.

Public Member Functions

int Compare (KeyValueSortable< Tkey, Tvalue > keyValue1, KeyValueSortable< Tkey, Tvalue > keyValue2)

Protected Member Functions

 ComparerBase (bool twoStage, bool strict)
abstract IComparable GetFirstStageCompared (KeyValueSortable< Tkey, Tvalue > keyValue)
 Extracts the object used in the first level of comparison from the argument.
abstract IComparable GetSecondStageCompared (KeyValueSortable< Tkey, Tvalue > keyValue)
 Extracts the object used in the second level of comparison from the argument.

Protected Attributes

bool _twoStage = false
bool _strict = false

Properties

bool TwoStage [get]
bool Strict [get]

Detailed Description

template<Tkey, Tvalue>
class IG::Lib::KeyValueSortable< Tkey, Tvalue >::ComparerBase

Base class for different IComparer classes.


Constructor & Destructor Documentation

template<Tkey , Tvalue >
IG::Lib::KeyValueSortable< Tkey, Tvalue >::ComparerBase::ComparerBase ( bool  twoStage,
bool  strict 
) [inline, protected]

Member Function Documentation

template<Tkey , Tvalue >
abstract IComparable IG::Lib::KeyValueSortable< Tkey, Tvalue >::ComparerBase::GetFirstStageCompared ( KeyValueSortable< Tkey, Tvalue >  keyValue) [protected, pure virtual]

Extracts the object used in the first level of comparison from the argument.

Implemented in IG::Lib::KeyValueSortable< Tkey, Tvalue >::ComparerKeyBase, and IG::Lib::KeyValueSortable< Tkey, Tvalue >::ComparerValueBase.

template<Tkey , Tvalue >
abstract IComparable IG::Lib::KeyValueSortable< Tkey, Tvalue >::ComparerBase::GetSecondStageCompared ( KeyValueSortable< Tkey, Tvalue >  keyValue) [protected, pure virtual]

Extracts the object used in the second level of comparison from the argument.

Implemented in IG::Lib::KeyValueSortable< Tkey, Tvalue >::ComparerKeyBase, and IG::Lib::KeyValueSortable< Tkey, Tvalue >::ComparerValueBase.

template<Tkey , Tvalue >
int IG::Lib::KeyValueSortable< Tkey, Tvalue >::ComparerBase::Compare ( KeyValueSortable< Tkey, Tvalue >  keyValue1,
KeyValueSortable< Tkey, Tvalue >  keyValue2 
) [inline]

Member Data Documentation

template<Tkey , Tvalue >
bool IG::Lib::KeyValueSortable< Tkey, Tvalue >::ComparerBase::_twoStage = false [protected]
template<Tkey , Tvalue >
bool IG::Lib::KeyValueSortable< Tkey, Tvalue >::ComparerBase::_strict = false [protected]

Property Documentation

template<Tkey , Tvalue >
bool IG::Lib::KeyValueSortable< Tkey, Tvalue >::ComparerBase::TwoStage [get]
template<Tkey , Tvalue >
bool IG::Lib::KeyValueSortable< Tkey, Tvalue >::ComparerBase::Strict [get]

The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Enumerations Properties Events