![]() |
QxOrm 1.1.9
C++ Object Relational Mapping library
|
qx::QxSqlRelation<DataType, Owner> : base class for all relationships defined between 2 classes (or between 2 tables in database) More...
#include <QxSqlRelation.h>
Classes | |
struct | createItem_Helper |
struct | createItem_Helper< true, dummy > |
struct | getContainer_Helper |
struct | getContainer_Helper< false, true, dummy > |
struct | getContainer_Helper< true, false, dummy > |
struct | getContainer_Helper< true, true, dummy > |
struct | getData_Helper |
struct | getData_Helper< false, true, dummy > |
struct | getData_Helper< true, false, dummy > |
struct | getData_Helper< true, true, dummy > |
Public Member Functions | |
QxSqlRelation (IxDataMember *p) | |
virtual | ~QxSqlRelation () |
virtual void | init () |
Protected Types | |
enum | { is_valid = (qx::trait::is_qx_registered<type_data>::value && qx::trait::is_qx_registered<type_owner>::value) } |
enum | { is_data_pointer = (boost::is_pointer<DataType>::value || qx::trait::is_smart_ptr<DataType>::value) } |
enum | { is_data_container = qx::trait::is_container<type_container>::value } |
enum | { is_same_data_owner = boost::is_same<type_data, value } |
typedef qx::trait::remove_attr < DataType >::type | type_tmp_1 |
typedef qx::trait::remove_smart_ptr < type_tmp_1 >::type | type_tmp_2 |
typedef type_tmp_2 | type_container |
typedef qx::trait::generic_container < type_container > | type_generic_container |
typedef type_generic_container::type_item | type_item |
typedef boost::mpl::if_c < qx::trait::is_container < type_container >::value, typename type_generic_container::type_value_qx, type_container >::type | type_tmp_3 |
typedef QxSqlRelation < DataType, Owner > ::type_tmp_3 | type_data |
typedef Owner | type_owner |
Protected Member Functions | |
DataType * | getDataTypePtr (QxSqlRelationParams ¶ms) const |
type_owner & | getOwner (QxSqlRelationParams ¶ms) const |
type_data & | getData (QxSqlRelationParams ¶ms) const |
type_container & | getContainer (QxSqlRelationParams ¶ms) const |
type_item | createItem () const |
Protected Attributes | |
bool | m_bInitInEvent |
Class initialisation in progress. | |
Static Protected Attributes | |
static QxCollection< QString, IxDataMember * > | m_lstDataMember |
Optimization : collection of 'IxDataMember'. | |
static IxSqlRelationX | m_lstSqlRelation |
Optimization : collection of 'IxSqlRelation'. | |
static QMutex | m_oMutex |
Mutex : 'QxSqlRelation' is thread-safe. | |
Private Member Functions | |
IxDataMember * | isValid_DataMember (long lIndex) const |
IxDataMember * | isValid_SqlRelation (long lIndex) const |
qx::QxSqlRelation<DataType, Owner> : base class for all relationships defined between 2 classes (or between 2 tables in database)
Definition at line 66 of file QxSqlRelation.h.
typedef type_tmp_2 qx::QxSqlRelation< DataType, Owner >::type_container [protected] |
Reimplemented in qx::QxSqlRelation_ManyToMany< DataType, Owner >, and qx::QxSqlRelation_OneToMany< DataType, Owner >.
Definition at line 73 of file QxSqlRelation.h.
typedef QxSqlRelation<DataType, Owner>::type_tmp_3 qx::QxSqlRelation< DataType, Owner >::type_data [protected] |
Reimplemented in qx::QxSqlRelation_ManyToMany< DataType, Owner >, qx::QxSqlRelation_ManyToOne< DataType, Owner >, qx::QxSqlRelation_OneToMany< DataType, Owner >, and qx::QxSqlRelation_OneToOne< DataType, Owner >.
Definition at line 77 of file QxSqlRelation.h.
typedef qx::trait::generic_container<type_container> qx::QxSqlRelation< DataType, Owner >::type_generic_container [protected] |
Reimplemented in qx::QxSqlRelation_ManyToMany< DataType, Owner >, and qx::QxSqlRelation_OneToMany< DataType, Owner >.
Definition at line 74 of file QxSqlRelation.h.
typedef type_generic_container::type_item qx::QxSqlRelation< DataType, Owner >::type_item [protected] |
Reimplemented in qx::QxSqlRelation_ManyToMany< DataType, Owner >, and qx::QxSqlRelation_OneToMany< DataType, Owner >.
Definition at line 75 of file QxSqlRelation.h.
typedef Owner qx::QxSqlRelation< DataType, Owner >::type_owner [protected] |
Reimplemented in qx::QxSqlRelation_ManyToMany< DataType, Owner >, qx::QxSqlRelation_ManyToOne< DataType, Owner >, qx::QxSqlRelation_OneToMany< DataType, Owner >, and qx::QxSqlRelation_OneToOne< DataType, Owner >.
Definition at line 78 of file QxSqlRelation.h.
typedef qx::trait::remove_attr<DataType>::type qx::QxSqlRelation< DataType, Owner >::type_tmp_1 [protected] |
Definition at line 71 of file QxSqlRelation.h.
typedef qx::trait::remove_smart_ptr<type_tmp_1>::type qx::QxSqlRelation< DataType, Owner >::type_tmp_2 [protected] |
Definition at line 72 of file QxSqlRelation.h.
typedef boost::mpl::if_c<qx::trait::is_container<type_container>::value, typename type_generic_container::type_value_qx, type_container>::type qx::QxSqlRelation< DataType, Owner >::type_tmp_3 [protected] |
Definition at line 76 of file QxSqlRelation.h.
anonymous enum [protected] |
Definition at line 80 of file QxSqlRelation.h.
anonymous enum [protected] |
Definition at line 81 of file QxSqlRelation.h.
anonymous enum [protected] |
Definition at line 82 of file QxSqlRelation.h.
anonymous enum [protected] |
Definition at line 83 of file QxSqlRelation.h.
qx::QxSqlRelation< DataType, Owner >::QxSqlRelation | ( | IxDataMember * | p | ) | [inline] |
Definition at line 94 of file QxSqlRelation.h.
virtual qx::QxSqlRelation< DataType, Owner >::~QxSqlRelation | ( | ) | [inline, virtual] |
Definition at line 95 of file QxSqlRelation.h.
type_item qx::QxSqlRelation< DataType, Owner >::createItem | ( | ) | const [inline, protected] |
Definition at line 146 of file QxSqlRelation.h.
type_container& qx::QxSqlRelation< DataType, Owner >::getContainer | ( | QxSqlRelationParams & | params | ) | const [inline, protected] |
Definition at line 143 of file QxSqlRelation.h.
type_data& qx::QxSqlRelation< DataType, Owner >::getData | ( | QxSqlRelationParams & | params | ) | const [inline, protected] |
Definition at line 140 of file QxSqlRelation.h.
DataType* qx::QxSqlRelation< DataType, Owner >::getDataTypePtr | ( | QxSqlRelationParams & | params | ) | const [inline, protected] |
Definition at line 134 of file QxSqlRelation.h.
type_owner& qx::QxSqlRelation< DataType, Owner >::getOwner | ( | QxSqlRelationParams & | params | ) | const [inline, protected] |
Definition at line 137 of file QxSqlRelation.h.
virtual void qx::QxSqlRelation< DataType, Owner >::init | ( | ) | [inline, virtual] |
Implements qx::IxSqlRelation.
Definition at line 97 of file QxSqlRelation.h.
IxDataMember* qx::QxSqlRelation< DataType, Owner >::isValid_DataMember | ( | long | lIndex | ) | const [inline, private] |
Definition at line 116 of file QxSqlRelation.h.
IxDataMember* qx::QxSqlRelation< DataType, Owner >::isValid_SqlRelation | ( | long | lIndex | ) | const [inline, private] |
Definition at line 124 of file QxSqlRelation.h.
bool qx::QxSqlRelation< DataType, Owner >::m_bInitInEvent [protected] |
Class initialisation in progress.
Definition at line 90 of file QxSqlRelation.h.
QxCollection< QString, IxDataMember * > qx::QxSqlRelation< DataType, Owner >::m_lstDataMember [static, protected] |
Optimization : collection of 'IxDataMember'.
Definition at line 87 of file QxSqlRelation.h.
IxSqlRelationX qx::QxSqlRelation< DataType, Owner >::m_lstSqlRelation [static, protected] |
Optimization : collection of 'IxSqlRelation'.
Definition at line 88 of file QxSqlRelation.h.
QMutex qx::QxSqlRelation< DataType, Owner >::m_oMutex [static, protected] |
Mutex : 'QxSqlRelation' is thread-safe.
Definition at line 89 of file QxSqlRelation.h.