| QxOrm 1.1.7 C++ Object Relational Mapping library

- Main Page
- Modules
- Namespaces
- Classes
- Files
- Directories

- Class List
- Class Index
- Class Hierarchy
- Class Members

Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions | Friends
qx::QxClass< T > Class Template Reference
QxRegister : QxOrm library register context used by introspection engine (class, function, property...)

qx::QxClass<T> : concrete class of type T registered into QxOrm context (this class is a singleton and is thread-safe) More...

`#include <QxClass.h>`

Inheritance diagram for qx::QxClass< T >:

List of all members.

## Public Types
enum | { is_valid_base_class = ((! boost::is_same<type_base_class, T>::value) && (boost::is_base_of<type_base_class, T>::value || boost::is_same<type_base_class, qx::trait::no_base_class_defined>::value)) }
typedef qx::trait::get_primary_key< T > ::type | type_primary_key
typedef qx::trait::get_base_class< T > ::type | type_base_class
typedef IxFunction::type_any_params | type_any_params
## Public Member Functions
QxDataMemberX< T > * | dataMemberX () const
IxFunctionX * | fctMemberX () const
IxDataMember * | id (type_primary_key T::*pDataMemberId, const QString &sKey)
IxDataMember * | id (type_primary_key T::*pDataMemberId, const QString &sKey, long lVersion)
template<typename V , typename U >
IxDataMember * | data (V U::*pData, const QString &sKey)
template<typename V , typename U >
IxDataMember * | data (V U::*pData, const QString &sKey, long lVersion)
template<typename V , typename U >
IxDataMember * | data (V U::*pData, const QString &sKey, long lVersion, bool bSerialize)
template<typename V , typename U >
IxDataMember * | data (V U::*pData, const QString &sKey, long lVersion, bool bSerialize, bool bDao)
template<typename V , typename U >
IxSqlRelation * | relationOneToOne (V U::*pData, const QString &sKey)
template<typename V , typename U >
IxSqlRelation * | relationOneToOne (V U::*pData, const QString &sKey, long lVersion)
template<typename V , typename U >
IxSqlRelation * | relationManyToOne (V U::*pData, const QString &sKey)
template<typename V , typename U >
IxSqlRelation * | relationManyToOne (V U::*pData, const QString &sKey, long lVersion)
template<typename V , typename U >
IxSqlRelation * | relationOneToMany (V U::*pData, const QString &sKey, const QString &sForeignKey)
template<typename V , typename U >
IxSqlRelation * | relationOneToMany (V U::*pData, const QString &sKey, const QString &sForeignKey, long lVersion)
template<typename V , typename U >
IxSqlRelation * | relationManyToMany (V U::*pData, const QString &sKey, const QString &sExtraTable, const QString &sForeignKeyOwner, const QString &sForeignKeyDataType)
template<typename V , typename U >
IxSqlRelation * | relationManyToMany (V U::*pData, const QString &sKey, const QString &sExtraTable, const QString &sForeignKeyOwner, const QString &sForeignKeyDataType, long lVersion)
template<typename R >
IxFunction * | fct_0 (const typename QxFunction_0< T, R >::type_fct &fct, const QString &sKey)
template<typename R , typename P1 >
IxFunction * | fct_1 (const typename QxFunction_1< T, R, P1 >::type_fct &fct, const QString &sKey)
template<typename R , typename P1 , typename P2 >
IxFunction * | fct_2 (const typename QxFunction_2< T, R, P1, P2 >::type_fct &fct, const QString &sKey)
template<typename R , typename P1 , typename P2 , typename P3 >
IxFunction * | fct_3 (const typename QxFunction_3< T, R, P1, P2, P3 >::type_fct &fct, const QString &sKey)
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 >
IxFunction * | fct_4 (const typename QxFunction_4< T, R, P1, P2, P3, P4 >::type_fct &fct, const QString &sKey)
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 >
IxFunction * | fct_5 (const typename QxFunction_5< T, R, P1, P2, P3, P4, P5 >::type_fct &fct, const QString &sKey)
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 >
IxFunction * | fct_6 (const typename QxFunction_6< T, R, P1, P2, P3, P4, P5, P6 >::type_fct &fct, const QString &sKey)
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 >
IxFunction * | fct_7 (const typename QxFunction_7< T, R, P1, P2, P3, P4, P5, P6, P7 >::type_fct &fct, const QString &sKey)
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 >
IxFunction * | fct_8 (const typename QxFunction_8< T, R, P1, P2, P3, P4, P5, P6, P7, P8 >::type_fct &fct, const QString &sKey)
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename P9 >
IxFunction * | fct_9 (const typename QxFunction_9< T, R, P1, P2, P3, P4, P5, P6, P7, P8, P9 >::type_fct &fct, const QString &sKey)
## Static Public Member Functions
static qx_bool | invoke (const QString &sKey, T *pOwner, const QString &params=QString(), boost::any *ret=NULL)
static qx_bool | invoke (const QString &sKey, T *pOwner, const type_any_params &params, boost::any *ret=NULL)
## Protected Member Functions
| QxClass ()
virtual | ~QxClass ()
## Protected Attributes
QMutex | m_oMutexClass
| Mutex -> 'QxClass' is thread-safe.
## Private Member Functions
void | init ()
IxFunction * | insertFct (IxFunction_ptr pFct, const QString &sKey)
void | registerClass ()
void | beforeRegisterClass ()
qx_bool | invokeHelper (const QString &sKey, T *pOwner, const QString &params, boost::any *ret)
qx_bool | invokeHelper (const QString &sKey, T *pOwner, const type_any_params &params, boost::any *ret)
## Friends
class | QxSingleton< QxClass< T > >

## Detailed Description

### template<class T>
class qx::QxClass< T >

qx::QxClass<T> : concrete class of type T registered into QxOrm context (this class is a singleton and is thread-safe)

Definition at line 71 of file QxClass.h.

## Member Typedef Documentation

template<class T >

typedef IxFunction::type_any_params qx::QxClass< T >::type_any_params

Definition at line 80 of file QxClass.h.

template<class T >

typedef qx::trait::get_base_class<T>::type qx::QxClass< T >::type_base_class

Definition at line 79 of file QxClass.h.

template<class T >

typedef qx::trait::get_primary_key<T>::type qx::QxClass< T >::type_primary_key

Definition at line 78 of file QxClass.h.

## Member Enumeration Documentation

template<class T >

anonymous enum

Enumerator:

  is_valid_base_class |

Definition at line 82 of file QxClass.h.

## Constructor & Destructor Documentation

template<class T >

qx::QxClass< T >::QxClass | ( |  | ) | `[inline, protected]`

Definition at line 90 of file QxClass.h.

template<class T >

virtual qx::QxClass< T >::~QxClass | ( |  | ) | `[inline, protected, virtual]`

Definition at line 91 of file QxClass.h.

## Member Function Documentation

template<class T >

void qx::QxClass< T >::beforeRegisterClass | ( |  | ) | `[inline, private]`

Definition at line 136 of file QxClass.h.

template<class T >
template<typename V , typename U >

IxDataMember* qx::QxClass< T >::data | ( | V U::* | pData,
|  | const QString & | sKey
| ) |  |

template<class T >
template<typename V , typename U >

IxDataMember* qx::QxClass< T >::data | ( | V U::* | pData,
|  | const QString & | sKey,
|  | long | lVersion,
|  | bool | bSerialize,
|  | bool | bDao
| ) |  |

template<class T >
template<typename V , typename U >

IxDataMember* qx::QxClass< T >::data | ( | V U::* | pData,
|  | const QString & | sKey,
|  | long | lVersion
| ) |  |

template<class T >
template<typename V , typename U >

IxDataMember* qx::QxClass< T >::data | ( | V U::* | pData,
|  | const QString & | sKey,
|  | long | lVersion,
|  | bool | bSerialize
| ) |  |

template<class T >

QxDataMemberX<T>* qx::QxClass< T >::dataMemberX | ( |  | ) | const`[inline]`

Definition at line 95 of file QxClass.h.

template<class T >
template<typename R >

IxFunction* qx::QxClass< T >::fct_0 | ( | const typename QxFunction_0< T, R >::type_fct & | fct,
|  | const QString & | sKey
| ) |  |

template<class T >
template<typename R , typename P1 >

IxFunction* qx::QxClass< T >::fct_1 | ( | const typename QxFunction_1< T, R, P1 >::type_fct & | fct,
|  | const QString & | sKey
| ) |  |

template<class T >
template<typename R , typename P1 , typename P2 >

IxFunction* qx::QxClass< T >::fct_2 | ( | const typename QxFunction_2< T, R, P1, P2 >::type_fct & | fct,
|  | const QString & | sKey
| ) |  |

template<class T >
template<typename R , typename P1 , typename P2 , typename P3 >

IxFunction* qx::QxClass< T >::fct_3 | ( | const typename QxFunction_3< T, R, P1, P2, P3 >::type_fct & | fct,
|  | const QString & | sKey
| ) |  |

template<class T >
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 >

IxFunction* qx::QxClass< T >::fct_4 | ( | const typename QxFunction_4< T, R, P1, P2, P3, P4 >::type_fct & | fct,
|  | const QString & | sKey
| ) |  |

template<class T >
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 >

IxFunction* qx::QxClass< T >::fct_5 | ( | const typename QxFunction_5< T, R, P1, P2, P3, P4, P5 >::type_fct & | fct,
|  | const QString & | sKey
| ) |  |

template<class T >
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 >

IxFunction* qx::QxClass< T >::fct_6 | ( | const typename QxFunction_6< T, R, P1, P2, P3, P4, P5, P6 >::type_fct & | fct,
|  | const QString & | sKey
| ) |  |

template<class T >
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 >

IxFunction* qx::QxClass< T >::fct_7 | ( | const typename QxFunction_7< T, R, P1, P2, P3, P4, P5, P6, P7 >::type_fct & | fct,
|  | const QString & | sKey
| ) |  |

template<class T >
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 >

IxFunction* qx::QxClass< T >::fct_8 | ( | const typename QxFunction_8< T, R, P1, P2, P3, P4, P5, P6, P7, P8 >::type_fct & | fct,
|  | const QString & | sKey
| ) |  |

template<class T >
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename P9 >

IxFunction* qx::QxClass< T >::fct_9 | ( | const typename QxFunction_9< T, R, P1, P2, P3, P4, P5, P6, P7, P8, P9 >::type_fct & | fct,
|  | const QString & | sKey
| ) |  |

template<class T >

IxFunctionX* qx::QxClass< T >::fctMemberX | ( |  | ) | const`[inline]`

Definition at line 96 of file QxClass.h.

template<class T >

IxDataMember* qx::QxClass< T >::id | ( | type_primary_key T::* | pDataMemberId,
|  | const QString & | sKey,
|  | long | lVersion
| ) |  |

template<class T >

IxDataMember* qx::QxClass< T >::id | ( | type_primary_key T::* | pDataMemberId,
|  | const QString & | sKey
| ) |  |

template<class T >

void qx::QxClass< T >::init | ( |  | ) | `[private]`

template<class T >

IxFunction* qx::QxClass< T >::insertFct | ( | IxFunction_ptr | pFct,
|  | const QString & | sKey
| ) |  | `[private]`

template<class T >

static qx_bool qx::QxClass< T >::invoke | ( | const QString & | sKey,
|  | T * | pOwner,
|  | const QString & | params = `QString()`,
|  | boost::any * | ret = `NULL`
| ) |  | `[inline, static]`

Definition at line 126 of file QxClass.h.

template<class T >

static qx_bool qx::QxClass< T >::invoke | ( | const QString & | sKey,
|  | T * | pOwner,
|  | const type_any_params & | params,
|  | boost::any * | ret = `NULL`
| ) |  | `[inline, static]`

Definition at line 127 of file QxClass.h.

template<class T >

qx_bool qx::QxClass< T >::invokeHelper | ( | const QString & | sKey,
|  | T * | pOwner,
|  | const type_any_params & | params,
|  | boost::any * | ret
| ) |  | `[inline, private]`

Definition at line 149 of file QxClass.h.

template<class T >

qx_bool qx::QxClass< T >::invokeHelper | ( | const QString & | sKey,
|  | T * | pOwner,
|  | const QString & | params,
|  | boost::any * | ret
| ) |  | `[inline, private]`

Definition at line 146 of file QxClass.h.

template<class T >

void qx::QxClass< T >::registerClass | ( |  | ) | `[inline, private]`

Definition at line 134 of file QxClass.h.

template<class T >
template<typename V , typename U >

IxSqlRelation* qx::QxClass< T >::relationManyToMany | ( | V U::* | pData,
|  | const QString & | sKey,
|  | const QString & | sExtraTable,
|  | const QString & | sForeignKeyOwner,
|  | const QString & | sForeignKeyDataType,
|  | long | lVersion
| ) |  |

template<class T >
template<typename V , typename U >

IxSqlRelation* qx::QxClass< T >::relationManyToMany | ( | V U::* | pData,
|  | const QString & | sKey,
|  | const QString & | sExtraTable,
|  | const QString & | sForeignKeyOwner,
|  | const QString & | sForeignKeyDataType
| ) |  |

template<class T >
template<typename V , typename U >

IxSqlRelation* qx::QxClass< T >::relationManyToOne | ( | V U::* | pData,
|  | const QString & | sKey,
|  | long | lVersion
| ) |  |

template<class T >
template<typename V , typename U >

IxSqlRelation* qx::QxClass< T >::relationManyToOne | ( | V U::* | pData,
|  | const QString & | sKey
| ) |  |

template<class T >
template<typename V , typename U >

IxSqlRelation* qx::QxClass< T >::relationOneToMany | ( | V U::* | pData,
|  | const QString & | sKey,
|  | const QString & | sForeignKey
| ) |  |

template<class T >
template<typename V , typename U >

IxSqlRelation* qx::QxClass< T >::relationOneToMany | ( | V U::* | pData,
|  | const QString & | sKey,
|  | const QString & | sForeignKey,
|  | long | lVersion
| ) |  |

template<class T >
template<typename V , typename U >

IxSqlRelation* qx::QxClass< T >::relationOneToOne | ( | V U::* | pData,
|  | const QString & | sKey
| ) |  |

template<class T >
template<typename V , typename U >

IxSqlRelation* qx::QxClass< T >::relationOneToOne | ( | V U::* | pData,
|  | const QString & | sKey,
|  | long | lVersion
| ) |  |

## Friends And Related Function Documentation

template<class T >

friend class QxSingleton< QxClass< T > >`[friend]`

Definition at line 74 of file QxClass.h.

## Member Data Documentation

template<class T >

QMutex qx::QxClass< T >::m_oMutexClass`[protected]`

Mutex -> 'QxClass' is thread-safe.

Definition at line 86 of file QxClass.h.

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

- D:/Dvlp/_Perso/QxOrm/include/QxRegister/QxClass.h

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines