Public Member Functions | Static Public Member Functions | List of all members
istd::CClassInfo Class Reference

Represents platform independent type info and provide set of static class manipulation functions. More...

#include <CClassInfo.h>

Inheritance diagram for istd::CClassInfo:
istd::IPolymorphic

Public Member Functions

 CClassInfo ()
 
 CClassInfo (const std::type_info &info)
 
 CClassInfo (const QByteArray &name)
 
 CClassInfo (const istd::IPolymorphic &object)
 
bool IsValid () const
 Check if this class info object is valid. More...
 
const QByteArray & GetName () const
 Get undecorated and platform undependent class name. More...
 
bool IsVoid () const
 Check if this class information represents void type. More...
 
bool IsConst () const
 Check if this class information represents const class. More...
 
CClassInfo GetConstCasted (bool enableConst=true) const
 Get class with enabled or disabled const attribute. More...
 
bool ConstCast (bool enableConst=true)
 Enable or disable const attribute. More...
 
bool IsTemplateClass () const
 Check if this class information represents template class. More...
 
int GetTemplateParamsCount () const
 Get number of template parameters if this class is template class. More...
 
CClassInfo GetTemplateParam (int paramIndex=0) const
 Get class info of some template parameter if this class is template. More...
 
template<class C >
bool IsType () const
 
CClassInfooperator= (const std::type_info &info)
 
CClassInfooperator= (const CClassInfo &info)
 
bool operator== (const CClassInfo &info) const
 
bool operator!= (const CClassInfo &info) const
 
bool operator< (const CClassInfo &info) const
 
bool operator> (const CClassInfo &info) const
 
- Public Member Functions inherited from istd::IPolymorphic
virtual ~IPolymorphic ()
 

Static Public Member Functions

template<class C >
static CClassInfo GetInfo ()
 Get class name defined as template parameter. More...
 
template<class C >
static QByteArray GetName ()
 Get class name defined as template parameter. More...
 
static QByteArray GetName (const std::type_info &info)
 Get class name from RTTI. More...
 
static QByteArray GetName (const istd::IPolymorphic &object)
 Get class name of polymorphic object. More...
 
static QByteArray GetUndecoratedName (const QByteArray &rawName)
 Get undecorated class name from raw name. More...
 

Detailed Description

Represents platform independent type info and provide set of static class manipulation functions.

Definition at line 22 of file CClassInfo.h.

Constructor & Destructor Documentation

istd::CClassInfo::CClassInfo ( )
inline

Definition at line 117 of file CClassInfo.h.

istd::CClassInfo::CClassInfo ( const std::type_info &  info)
inlineexplicit

Definition at line 122 of file CClassInfo.h.

istd::CClassInfo::CClassInfo ( const QByteArray &  name)
inlineexplicit

Definition at line 128 of file CClassInfo.h.

istd::CClassInfo::CClassInfo ( const istd::IPolymorphic object)
inlineexplicit

Definition at line 134 of file CClassInfo.h.

Member Function Documentation

bool istd::CClassInfo::ConstCast ( bool  enableConst = true)

Enable or disable const attribute.

CClassInfo istd::CClassInfo::GetConstCasted ( bool  enableConst = true) const

Get class with enabled or disabled const attribute.

Referenced by icomp::TSubelementStaticInfo< ComponentType >::GetComponentInterface().

template<class C >
CClassInfo istd::CClassInfo::GetInfo ( )
static

Get class name defined as template parameter.

Definition at line 208 of file CClassInfo.h.

const QByteArray & istd::CClassInfo::GetName ( ) const
inline
template<class C >
QByteArray istd::CClassInfo::GetName ( )
static

Get class name defined as template parameter.

Definition at line 217 of file CClassInfo.h.

References GetUndecoratedName().

static QByteArray istd::CClassInfo::GetName ( const std::type_info &  info)
static

Get class name from RTTI.

static QByteArray istd::CClassInfo::GetName ( const istd::IPolymorphic object)
static

Get class name of polymorphic object.

CClassInfo istd::CClassInfo::GetTemplateParam ( int  paramIndex = 0) const

Get class info of some template parameter if this class is template.

int istd::CClassInfo::GetTemplateParamsCount ( ) const

Get number of template parameters if this class is template class.

Returns
number of parameters of negative value, if this class is not a template.
static QByteArray istd::CClassInfo::GetUndecoratedName ( const QByteArray &  rawName)
static

Get undecorated class name from raw name.

Referenced by GetName().

bool istd::CClassInfo::IsConst ( ) const

Check if this class information represents const class.

Referenced by icomp::TSubelementStaticInfo< ComponentType >::GetComponentInterface().

bool istd::CClassInfo::IsTemplateClass ( ) const

Check if this class information represents template class.

template<class C >
bool istd::CClassInfo::IsType ( ) const
inline

Definition at line 159 of file CClassInfo.h.

References GetName().

bool istd::CClassInfo::IsValid ( ) const
inline

Check if this class info object is valid.

It is valid if stored RTTI type info is set.

Definition at line 140 of file CClassInfo.h.

Referenced by icomp::TSubelementStaticInfo< ComponentType >::GetComponentInterface(), and icomp::TAttributeStaticInfo< Attribute >::TAttributeStaticInfo().

bool istd::CClassInfo::IsVoid ( ) const
inline
bool istd::CClassInfo::operator!= ( const CClassInfo info) const
inline

Definition at line 187 of file CClassInfo.h.

bool istd::CClassInfo::operator< ( const CClassInfo info) const
inline

Definition at line 193 of file CClassInfo.h.

CClassInfo & istd::CClassInfo::operator= ( const std::type_info &  info)
inline

Definition at line 165 of file CClassInfo.h.

References GetName().

CClassInfo & istd::CClassInfo::operator= ( const CClassInfo info)
inline

Definition at line 173 of file CClassInfo.h.

bool istd::CClassInfo::operator== ( const CClassInfo info) const
inline

Definition at line 181 of file CClassInfo.h.

bool istd::CClassInfo::operator> ( const CClassInfo info) const
inline

Definition at line 199 of file CClassInfo.h.


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

© 2007-2017 Witold Gantzke and Kirill Lepskiy