QxOrm  1.5.0
C++ Object Relational Mapping library
qx::QxDataMember< DataType, Owner > Class Template Reference

qx::QxDataMember<DataType, Owner> : concrete property of type DataType registered into QxOrm context for the class Owner More...

#include <QxDataMember.h>

Inheritance diagram for qx::QxDataMember< DataType, Owner >:
qx::IxDataMember qx::QxPropertyBag

List of all members.

Classes

struct  qxCompareDataMember
struct  qxCompareDataMember< true, dummy >

Public Member Functions

 QxDataMember (type_data_member_ptr pData, const QString &sKey, long lVersion, bool bSerialize, bool bDao, IxDataMember *pImpl=NULL)
virtual ~QxDataMember ()
DataType * getData (void *pOwner) const
const DataType * getData (const void *pOwner) const
virtual QVariant toVariant (const void *pOwner, const QString &sFormat, int iIndexName=-1, qx::cvt::context::ctx_type ctx=qx::cvt::context::e_no_context) const
virtual qx_bool fromVariant (void *pOwner, const QVariant &v, const QString &sFormat, int iIndexName=-1, qx::cvt::context::ctx_type ctx=qx::cvt::context::e_no_context)
virtual QString getType () const
virtual QJsonValue toJson (const void *pOwner, const QString &sFormat) const
virtual qx_bool fromJson (void *pOwner, const QJsonValue &j, const QString &sFormat)
virtual bool isEqual (const void *pOwner1, const void *pOwner2) const

Protected Types

typedef DataType Owner::* type_data_member_ptr

Protected Member Functions

virtual qx::any getDataPtr (const void *pOwner) const
virtual qx::any getDataPtr (void *pOwner)
virtual void * getDataVoidPtr (const void *pOwner) const
virtual void * getDataVoidPtr (void *pOwner)

Protected Attributes

type_data_member_ptr m_pData
 Data member under format "& Owner::DataMember".
IxDataMemberm_pImpl_
 If not NULL then this data member is owned by a private implementation idiom instance.

Static Private Member Functions

template<class Archive >
static void toArchive (Archive &ar, const char *sName, const DataType *pData)
template<class Archive >
static void fromArchive (Archive &ar, const char *sName, DataType *pData)

Detailed Description

template<typename DataType, class Owner>
class qx::QxDataMember< DataType, Owner >

qx::QxDataMember<DataType, Owner> : concrete property of type DataType registered into QxOrm context for the class Owner

Definition at line 67 of file QxDataMember.h.


Member Typedef Documentation

template<typename DataType, class Owner>
typedef DataType Owner::* qx::QxDataMember< DataType, Owner >::type_data_member_ptr [protected]

Definition at line 72 of file QxDataMember.h.


Constructor & Destructor Documentation

template<typename DataType, class Owner>
qx::QxDataMember< DataType, Owner >::QxDataMember ( type_data_member_ptr  pData,
const QString &  sKey,
long  lVersion,
bool  bSerialize,
bool  bDao,
IxDataMember pImpl = NULL 
) [inline]

Definition at line 79 of file QxDataMember.h.

template<typename DataType, class Owner>
virtual qx::QxDataMember< DataType, Owner >::~QxDataMember ( ) [inline, virtual]

Definition at line 80 of file QxDataMember.h.


Member Function Documentation

template<typename DataType, class Owner>
template<class Archive >
static void qx::QxDataMember< DataType, Owner >::fromArchive ( Archive &  ar,
const char *  sName,
DataType *  pData 
) [inline, static, private]

Definition at line 163 of file QxDataMember.h.

template<typename DataType, class Owner>
virtual qx_bool qx::QxDataMember< DataType, Owner >::fromJson ( void *  pOwner,
const QJsonValue &  j,
const QString &  sFormat 
) [inline, virtual]

Implements qx::IxDataMember.

Definition at line 99 of file QxDataMember.h.

template<typename DataType, class Owner>
virtual qx_bool qx::QxDataMember< DataType, Owner >::fromVariant ( void *  pOwner,
const QVariant &  v,
const QString &  sFormat,
int  iIndexName = -1,
qx::cvt::context::ctx_type  ctx = qx::cvt::context::e_no_context 
) [inline, virtual]

Implements qx::IxDataMember.

Definition at line 94 of file QxDataMember.h.

template<typename DataType, class Owner>
DataType* qx::QxDataMember< DataType, Owner >::getData ( void *  pOwner) const [inline]

Definition at line 82 of file QxDataMember.h.

template<typename DataType, class Owner>
const DataType* qx::QxDataMember< DataType, Owner >::getData ( const void *  pOwner) const [inline]

Definition at line 87 of file QxDataMember.h.

template<typename DataType, class Owner>
virtual qx::any qx::QxDataMember< DataType, Owner >::getDataPtr ( const void *  pOwner) const [inline, protected, virtual]

Implements qx::IxDataMember.

Definition at line 111 of file QxDataMember.h.

template<typename DataType, class Owner>
virtual qx::any qx::QxDataMember< DataType, Owner >::getDataPtr ( void *  pOwner) [inline, protected, virtual]

Implements qx::IxDataMember.

Definition at line 112 of file QxDataMember.h.

template<typename DataType, class Owner>
virtual void* qx::QxDataMember< DataType, Owner >::getDataVoidPtr ( const void *  pOwner) const [inline, protected, virtual]

Implements qx::IxDataMember.

Definition at line 113 of file QxDataMember.h.

template<typename DataType, class Owner>
virtual void* qx::QxDataMember< DataType, Owner >::getDataVoidPtr ( void *  pOwner) [inline, protected, virtual]

Implements qx::IxDataMember.

Definition at line 114 of file QxDataMember.h.

template<typename DataType, class Owner>
virtual QString qx::QxDataMember< DataType, Owner >::getType ( ) const [inline, virtual]

Reimplemented from qx::IxDataMember.

Definition at line 95 of file QxDataMember.h.

template<typename DataType, class Owner>
virtual bool qx::QxDataMember< DataType, Owner >::isEqual ( const void *  pOwner1,
const void *  pOwner2 
) const [inline, virtual]

Implements qx::IxDataMember.

Definition at line 102 of file QxDataMember.h.

template<typename DataType, class Owner>
template<class Archive >
static void qx::QxDataMember< DataType, Owner >::toArchive ( Archive &  ar,
const char *  sName,
const DataType *  pData 
) [inline, static, private]

Definition at line 159 of file QxDataMember.h.

template<typename DataType, class Owner>
virtual QJsonValue qx::QxDataMember< DataType, Owner >::toJson ( const void *  pOwner,
const QString &  sFormat 
) const [inline, virtual]

Implements qx::IxDataMember.

Definition at line 98 of file QxDataMember.h.

template<typename DataType, class Owner>
virtual QVariant qx::QxDataMember< DataType, Owner >::toVariant ( const void *  pOwner,
const QString &  sFormat,
int  iIndexName = -1,
qx::cvt::context::ctx_type  ctx = qx::cvt::context::e_no_context 
) const [inline, virtual]

Implements qx::IxDataMember.

Definition at line 93 of file QxDataMember.h.


Member Data Documentation

template<typename DataType, class Owner>
type_data_member_ptr qx::QxDataMember< DataType, Owner >::m_pData [protected]

Data member under format "& Owner::DataMember".

Definition at line 74 of file QxDataMember.h.

template<typename DataType, class Owner>
IxDataMember* qx::QxDataMember< DataType, Owner >::m_pImpl_ [protected]

If not NULL then this data member is owned by a private implementation idiom instance.

Definition at line 75 of file QxDataMember.h.


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