OpenDDS::DCPS::StructComparator< Sample, Field > Class Template Reference

#include <Comparator_T.h>

Inheritance diagram for OpenDDS::DCPS::StructComparator< Sample, Field >:

Inheritance graph
[legend]
Collaboration diagram for OpenDDS::DCPS::StructComparator< Sample, Field >:

Collaboration graph
[legend]
List of all members.

Public Types

typedef Field Sample::* MemberPtr

Public Member Functions

 StructComparator (MemberPtr mp, ComparatorBase::Ptr delegate, ComparatorBase::Ptr next)
bool less (void *lhs_void, void *rhs_void) const
bool equal (void *lhs_void, void *rhs_void) const

Private Attributes

MemberPtr mp_
ComparatorBase::Ptr delegate_

Detailed Description

template<class Sample, class Field>
class OpenDDS::DCPS::StructComparator< Sample, Field >

deal with nested structs, for example: struct A { long x; }; struct B { A theA; }; B's query string has "ORDER BY theA.x" The generated code will create a StructComparator with Sample = B and Field = A which in turn has a "delegate" which is a FieldComparator (see above) with Sample = A and Field = CORBA::Long


Member Typedef Documentation

template<class Sample, class Field>
typedef Field Sample::* OpenDDS::DCPS::StructComparator< Sample, Field >::MemberPtr


Constructor & Destructor Documentation

template<class Sample, class Field>
OpenDDS::DCPS::StructComparator< Sample, Field >::StructComparator ( MemberPtr  mp,
ComparatorBase::Ptr  delegate,
ComparatorBase::Ptr  next 
) [inline]


Member Function Documentation

template<class Sample, class Field>
bool OpenDDS::DCPS::StructComparator< Sample, Field >::equal ( void *  lhs_void,
void *  rhs_void 
) const [inline, virtual]

Implements OpenDDS::DCPS::ComparatorBase.

template<class Sample, class Field>
bool OpenDDS::DCPS::StructComparator< Sample, Field >::less ( void *  lhs_void,
void *  rhs_void 
) const [inline, virtual]

Implements OpenDDS::DCPS::ComparatorBase.


Member Data Documentation

template<class Sample, class Field>
ComparatorBase::Ptr OpenDDS::DCPS::StructComparator< Sample, Field >::delegate_ [private]

template<class Sample, class Field>
MemberPtr OpenDDS::DCPS::StructComparator< Sample, Field >::mp_ [private]


The documentation for this class was generated from the following file:
Generated on Wed Nov 16 15:28:37 2011 for OpenDDS by  doxygen 1.4.7