Open CASCADE Technology  7.4.0
Public Member Functions | Protected Attributes

NCollection_Comparator< TheItemType > Class Template Reference

#include <NCollection_Comparator.hxx>

Public Member Functions

 NCollection_Comparator (const Standard_Real theTolerance=Precision::Confusion())
 
virtual ~NCollection_Comparator ()
 
virtual Standard_Boolean IsGreater (const TheItemType &theLeft, const TheItemType &theRight) const
 Comparison functions which should be overridden if standard operators are not defined for user type. More...
 
virtual Standard_Boolean IsEqual (const TheItemType &theLeft, const TheItemType &theRight) const
 Should return true if values are equal. More...
 
virtual Standard_Boolean IsLower (const TheItemType &theLeft, const TheItemType &theRight) const
 Comparison functions which may be overridden for performance reasons. More...
 
virtual Standard_Boolean IsLowerEqual (const TheItemType &theLeft, const TheItemType &theRight) const
 
virtual Standard_Boolean IsGreaterEqual (const TheItemType &theLeft, const TheItemType &theRight) const
 

Protected Attributes

Standard_Real myTolerance
 

Detailed Description

template<class TheItemType>
class NCollection_Comparator< TheItemType >

Class to define basic compare operations. Basic implementation use redirection to standard C++ operators. You can use standard C++ templates mechanisms to redefine these methods or to inherit basic implementation to create multiple comparators for same type with different rules.

Constructor & Destructor Documentation

◆ NCollection_Comparator()

template<class TheItemType >
NCollection_Comparator< TheItemType >::NCollection_Comparator ( const Standard_Real  theTolerance = Precision::Confusion())
inline

◆ ~NCollection_Comparator()

template<class TheItemType >
virtual NCollection_Comparator< TheItemType >::~NCollection_Comparator ( )
inlinevirtual

Member Function Documentation

◆ IsEqual()

template<class TheItemType >
virtual Standard_Boolean NCollection_Comparator< TheItemType >::IsEqual ( const TheItemType &  theLeft,
const TheItemType &  theRight 
) const
inlinevirtual

Should return true if values are equal.

◆ IsGreater()

template<class TheItemType >
virtual Standard_Boolean NCollection_Comparator< TheItemType >::IsGreater ( const TheItemType &  theLeft,
const TheItemType &  theRight 
) const
inlinevirtual

Comparison functions which should be overridden if standard operators are not defined for user type.

Should return true if Left value is greater than Right

◆ IsGreaterEqual()

template<class TheItemType >
virtual Standard_Boolean NCollection_Comparator< TheItemType >::IsGreaterEqual ( const TheItemType &  theLeft,
const TheItemType &  theRight 
) const
inlinevirtual

◆ IsLower()

template<class TheItemType >
virtual Standard_Boolean NCollection_Comparator< TheItemType >::IsLower ( const TheItemType &  theLeft,
const TheItemType &  theRight 
) const
inlinevirtual

Comparison functions which may be overridden for performance reasons.

Should return true if Left value is lower than Right

◆ IsLowerEqual()

template<class TheItemType >
virtual Standard_Boolean NCollection_Comparator< TheItemType >::IsLowerEqual ( const TheItemType &  theLeft,
const TheItemType &  theRight 
) const
inlinevirtual

Field Documentation

◆ myTolerance

template<class TheItemType >
Standard_Real NCollection_Comparator< TheItemType >::myTolerance
protected

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