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

- Main Page
- Namespaces
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Events
Public Member Functions | Protected Member Functions | Protected Attributes | Properties | List of all members
IG.Lib.KeyValueSortable< Tkey, Tvalue >.ComparerBase Class Referenceabstract

Base class for different IComparer classes. More...

Inheritance diagram for IG.Lib.KeyValueSortable< Tkey, Tvalue >.ComparerBase:
[legend]
Collaboration diagram for IG.Lib.KeyValueSortable< Tkey, Tvalue >.ComparerBase:
[legend]

## Public Member Functions
int | Compare (KeyValueSortable< Tkey, Tvalue > keyValue1, KeyValueSortable< Tkey, Tvalue > keyValue2)
Public Member Functions inherited from IG.Lib.KeyValueSortable< Tkey, Tvalue >
| KeyValueSortable (Tkey key, Tvalue value, int orderParameter)
| KeyValueSortable (Tkey key, Tvalue value)

## 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. More...
abstract IComparable | GetSecondStageCompared (KeyValueSortable< Tkey, Tvalue > keyValue)
| Extracts the object used in the second level of comparison from the argument. More...

## Protected Attributes
bool | _twoStage = false
bool | _strict = false
Protected Attributes inherited from IG.Lib.KeyValueSortable< Tkey, Tvalue >
Tkey | _key
Tvalue | _value

## Properties
bool | TwoStage`[get]`
bool | Strict`[get]`
Properties inherited from IG.Lib.KeyValueSortable< Tkey, Tvalue >
Tkey | Key`[get]`
| Returns the key. More...
Tvalue | Value`[get]`
| Returns the value. More...
int | OrderParameter`[get]`
| Order prameter that enable additional sorting when other fields are equal. More...

## Additional Inherited Members
Static Public Attributes inherited from IG.Lib.KeyValueSortable< Tkey, Tvalue >
static IComparer < KeyValueSortable< Tkey, Tvalue > > | CompareKey
| Comparison of keys. More...
static IComparer < KeyValueSortable< Tkey, Tvalue > > | CompareKeyValue
| Comparison of keys and then values (if keys are equal). More...
static IComparer < KeyValueSortable< Tkey, Tvalue > > | CompareKeyValueStrict
| Comparison of keys and then values (if keys are equal) and finally the (possibly unique) ordering parameter that enables strict ordering of objects with the same key and value. More...
static IComparer < KeyValueSortable< Tkey, Tvalue > > | CompareValue
| Comparison of values. More...
static IComparer < KeyValueSortable< Tkey, Tvalue > > | CompareValueKey
| Comparison of values and then keys (if values are equal). More...
static IComparer < KeyValueSortable< Tkey, Tvalue > > | CompareValueKeyStrict
| Comparison of values and then keys (if keys are equal) and finally the (possibly unique) ordering parameter that enables strict ordering of objects with the same value and key. More...
Static Protected Attributes inherited from IG.Lib.KeyValueSortable< Tkey, Tvalue >
static int | _counter = 0

## Detailed Description

Base class for different IComparer classes.

## Constructor & Destructor Documentation

IG.Lib.KeyValueSortable< Tkey, Tvalue >.ComparerBase.ComparerBase | ( | bool | twoStage,
|  | bool | strict
| ) |  |
| inline protected

## Member Function Documentation

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 >.ComparerValueBase, and IG.Lib.KeyValueSortable< Tkey, Tvalue >.ComparerKeyBase.

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 >.ComparerValueBase, and IG.Lib.KeyValueSortable< Tkey, Tvalue >.ComparerKeyBase.

int IG.Lib.KeyValueSortable< Tkey, Tvalue >.ComparerBase.Compare | ( | KeyValueSortable< Tkey, Tvalue > | keyValue1,
|  | KeyValueSortable< Tkey, Tvalue > | keyValue2
| ) |  |
| inline

References IG.Lib.KeyValueSortable< Tkey, Tvalue >.OrderParameter.

## Member Data Documentation

bool IG.Lib.KeyValueSortable< Tkey, Tvalue >.ComparerBase._twoStage = false
| protected

bool IG.Lib.KeyValueSortable< Tkey, Tvalue >.ComparerBase._strict = false
| protected

## Property Documentation

bool IG.Lib.KeyValueSortable< Tkey, Tvalue >.ComparerBase.TwoStage
| get

bool IG.Lib.KeyValueSortable< Tkey, Tvalue >.ComparerBase.Strict
| get

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

- igbase/utilities/Utils.cs