OpenDDS  Snapshot(2023/04/07-19:43)
Public Types | Public Member Functions | Private Attributes | List of all members
OpenDDS::DCPS::ComparatorBase Class Referenceabstract

#include <Comparator_T.h>

Inheritance diagram for OpenDDS::DCPS::ComparatorBase:
Inheritance graph
[legend]
Collaboration diagram for OpenDDS::DCPS::ComparatorBase:
Collaboration graph
[legend]

Public Types

typedef RcHandle< ComparatorBasePtr
 

Public Member Functions

 ComparatorBase ()
 
 ComparatorBase (Ptr next)
 
virtual ~ComparatorBase ()
 
virtual bool less (void *lhs, void *rhs) const =0
 
virtual bool equal (void *lhs, void *rhs) const =0
 
bool compare (void *lhs, void *rhs) const
 
- Public Member Functions inherited from OpenDDS::DCPS::RcObject
virtual ~RcObject ()
 
virtual void _add_ref ()
 
virtual void _remove_ref ()
 
long ref_count () const
 
WeakObject_get_weak_object () const
 

Private Attributes

Ptr next_
 

Additional Inherited Members

- Protected Member Functions inherited from OpenDDS::DCPS::RcObject
 RcObject ()
 

Detailed Description

Definition at line 28 of file Comparator_T.h.

Member Typedef Documentation

◆ Ptr

Definition at line 30 of file Comparator_T.h.

Constructor & Destructor Documentation

◆ ComparatorBase() [1/2]

OpenDDS::DCPS::ComparatorBase::ComparatorBase ( )
inline

Definition at line 32 of file Comparator_T.h.

32 {}

◆ ComparatorBase() [2/2]

OpenDDS::DCPS::ComparatorBase::ComparatorBase ( Ptr  next)
inlineexplicit

Definition at line 33 of file Comparator_T.h.

◆ ~ComparatorBase()

virtual OpenDDS::DCPS::ComparatorBase::~ComparatorBase ( )
inlinevirtual

Definition at line 35 of file Comparator_T.h.

References equal(), and less().

35 {}

Member Function Documentation

◆ compare()

bool OpenDDS::DCPS::ComparatorBase::compare ( void *  lhs,
void *  rhs 
) const
inline

Definition at line 40 of file Comparator_T.h.

References compare(), equal(), OpenDDS::DCPS::RcHandle< T >::in(), less(), and next_.

Referenced by compare(), and OpenDDS::DCPS::RakeResults< MessageType >::SortedSetCmp::operator()().

40  {
41  if (next_.in() && equal(lhs, rhs)) return next_->compare(lhs, rhs);
42 
43  return less(lhs, rhs);
44  }
bool compare(void *lhs, void *rhs) const
Definition: Comparator_T.h:40
virtual bool equal(void *lhs, void *rhs) const =0
virtual bool less(void *lhs, void *rhs) const =0

◆ equal()

virtual bool OpenDDS::DCPS::ComparatorBase::equal ( void *  lhs,
void *  rhs 
) const
pure virtual

◆ less()

virtual bool OpenDDS::DCPS::ComparatorBase::less ( void *  lhs,
void *  rhs 
) const
pure virtual

Member Data Documentation

◆ next_

Ptr OpenDDS::DCPS::ComparatorBase::next_
private

Definition at line 47 of file Comparator_T.h.

Referenced by compare().


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