Шаблон класса Cntm::GenericMethodRefPtr< SignatureT >
[Cntm.RefCount]

Полный список членов класса


Подробное описание

template<typename SignatureT>
class Cntm::GenericMethodRefPtr< SignatureT >

Класс указателя на метод объекта.

Объединяет в себе обобщенный ссылочный указатель на объект (GenericRefPtr) и указатель на метод.

Данный класс является шаблоном. В качестве параметра шаблона задается сигнатура метода без указания конкретного класса, например: GenericMethodRefPtr < void (int, double) > methPtr. Это позволяет присваивать указатели на методы любых классов, сигнатура которых совпадает с заданной в шаблоне (что обеспечивает жесткую проверку типов).

Вызов метода осуществляется с помощью свойств Object() и Method() следующим образом: (methPtr.Object()->*methPtr.Method()) (45, 234.78). Перед вызовом следует проверить указатель на NULL: if (methPtr) ...

В остальном поведение этого класса совпадает с поведением GenericRefPtr.

Автор:
Овсеевич Р.

См. определение в файле GenericMethodRefPtr.h строка 38


Открытые типы

typedef SignatureT SignatureType
typedef
SignatureInfo
< SignatureT > 
SignInfo
typedef
SignInfo::template
Method< Closure >
::Pointer 
ClosureMethod

Открытые члены

 GenericMethodRefPtr ()
 Конструктор по умолчанию.
template<typename ClassT>
 GenericMethodRefPtr (const RefPtr< ClassT > &ObjectPtr, typename SignInfo::template Method< ClassT >::Pointer Method)
 Конструктор инициализации из ссылочного указателя и указателя на метод.
template<typename ClassT>
 GenericMethodRefPtr (ClassT *ObjectPtr, typename SignInfo::template Method< ClassT >::Pointer Method)
 Конструктор инициализации из обычного указателя и указателя на метод.
 GenericMethodRefPtr (const GenericMethodNoRefPtr< SignatureT > &Src)
 Конструктор копирования из не ссылочного указателя.
 GenericMethodRefPtr (const GenericMethodRefPtr< SignatureT > &Src)
 Конструктор копирования.
GenericMethodRefPtr
< SignatureT > & 
operator= (const GenericMethodNoRefPtr< SignatureT > &Src)
 Оператор присвоения из не ссылочного указателя.
GenericMethodRefPtr
< SignatureT > & 
operator= (const GenericMethodRefPtr< SignatureT > &Src)
 Оператор присвоения.
 operator bool () const
 Приведение к типу bool.
bool operator! () const
 Оператор not.
bool operator== (const GenericMethodNoRefPtr< SignatureT > &Ptr) const
 Оператор сравнения на равенство.
bool operator== (const GenericMethodRefPtr< SignatureT > &Ptr) const
 Оператор сравнения на равенство.
bool operator!= (const GenericMethodNoRefPtr< SignatureT > &Ptr) const
 Оператор сравнения на не равенство.
bool operator!= (const GenericMethodRefPtr< SignatureT > &Ptr) const
 Оператор сравнения на не равенство.
const GenericRefPtrGenericPtr () const
 Возвращает обобщенный ссылочный указатель.
ClosureObject () const
 Возвращает объект, приведенный к специальному классу Closure.
ClosureMethod Method () const
 Возвращает указатель на метод специального класса Closure с указанной сигнатурой.
template<typename ClassT>
void Set (const RefPtr< ClassT > &ObjectPtr, typename SignInfo::template Method< ClassT >::Pointer Method)
 Установить новые значения из ссылочного указателя и указателя на метод.
template<typename ClassT>
void Set (ClassT *ObjectPtr, typename SignInfo::template Method< ClassT >::Pointer Method)
 Установить новые значения обычного указателя и указателя на метод.
template<typename ClassT>
void Set (const ClassT &Object, typename SignInfo::template Method< ClassT >::Pointer Method)
 Установить новые значения ссылки на объект и указателя на метод.
void SetNull ()
 Установить указатель в NULL.

Классы

class  Closure
 Специальный класс, используемый для вызова метода, на который указывает указатель. Подробнее...

Определения типов

template<typename SignatureT>
typedef SignatureT Cntm::GenericMethodRefPtr< SignatureT >::SignatureType

См. определение в файле GenericMethodRefPtr.h строка 49

template<typename SignatureT>
typedef SignatureInfo< SignatureT > Cntm::GenericMethodRefPtr< SignatureT >::SignInfo

См. определение в файле GenericMethodRefPtr.h строка 50

template<typename SignatureT>
typedef SignInfo::template Method< Closure >::Pointer Cntm::GenericMethodRefPtr< SignatureT >::ClosureMethod

См. определение в файле GenericMethodRefPtr.h строка 51


Конструктор(ы)

template<typename SignatureT>
Cntm::GenericMethodRefPtr< SignatureT >::GenericMethodRefPtr (  )  [inline]

Конструктор по умолчанию.

Инициализирует указатель в NULL.

См. определение в файле GenericMethodRefPtr.h строка 56

template<typename SignatureT>
template<typename ClassT>
Cntm::GenericMethodRefPtr< SignatureT >::GenericMethodRefPtr ( const RefPtr< ClassT > &  ObjectPtr,
typename SignInfo::template Method< ClassT >::Pointer  Method 
) [inline]

Конструктор инициализации из ссылочного указателя и указателя на метод.

См. определение в файле GenericMethodRefPtr.h строка 62

template<typename SignatureT>
template<typename ClassT>
Cntm::GenericMethodRefPtr< SignatureT >::GenericMethodRefPtr ( ClassT *  ObjectPtr,
typename SignInfo::template Method< ClassT >::Pointer  Method 
) [inline]

Конструктор инициализации из обычного указателя и указателя на метод.

См. определение в файле GenericMethodRefPtr.h строка 69

template<typename SignatureT>
Cntm::GenericMethodRefPtr< SignatureT >::GenericMethodRefPtr ( const GenericMethodNoRefPtr< SignatureT > &  Src  )  [inline]

Конструктор копирования из не ссылочного указателя.

См. определение в файле GenericMethodRefPtr.h строка 75

template<typename SignatureT>
Cntm::GenericMethodRefPtr< SignatureT >::GenericMethodRefPtr ( const GenericMethodRefPtr< SignatureT > &  Src  )  [inline]

Конструктор копирования.

См. определение в файле GenericMethodRefPtr.h строка 81


Методы

template<typename SignatureT>
GenericMethodRefPtr< SignatureT >& Cntm::GenericMethodRefPtr< SignatureT >::operator= ( const GenericMethodNoRefPtr< SignatureT > &  Src  )  [inline]

Оператор присвоения из не ссылочного указателя.

См. определение в файле GenericMethodRefPtr.h строка 87

Перекрестные ссылки Cntm::GenericMethodNoRefPtr< SignatureT >::GenericPtr() и Cntm::GenericMethodNoRefPtr< SignatureT >::Method().

template<typename SignatureT>
GenericMethodRefPtr< SignatureT >& Cntm::GenericMethodRefPtr< SignatureT >::operator= ( const GenericMethodRefPtr< SignatureT > &  Src  )  [inline]

Оператор присвоения.

См. определение в файле GenericMethodRefPtr.h строка 97

Перекрестные ссылки Cntm::GenericMethodRefPtr< SignatureT >::GenericPtr() и Cntm::GenericMethodRefPtr< SignatureT >::Method().

template<typename SignatureT>
Cntm::GenericMethodRefPtr< SignatureT >::operator bool (  )  const [inline]

Приведение к типу bool.

true - если указатель не равен NULL, иначе false.

См. определение в файле GenericMethodRefPtr.h строка 107

template<typename SignatureT>
bool Cntm::GenericMethodRefPtr< SignatureT >::operator! (  )  const [inline]

Оператор not.

Противоположен operator bool().

См. определение в файле GenericMethodRefPtr.h строка 115

template<typename SignatureT>
bool Cntm::GenericMethodRefPtr< SignatureT >::operator== ( const GenericMethodNoRefPtr< SignatureT > &  Ptr  )  const [inline]

Оператор сравнения на равенство.

См. определение в файле GenericMethodRefPtr.h строка 123

Перекрестные ссылки Cntm::GenericMethodNoRefPtr< SignatureT >::GenericPtr() и Cntm::GenericMethodNoRefPtr< SignatureT >::Method().

template<typename SignatureT>
bool Cntm::GenericMethodRefPtr< SignatureT >::operator== ( const GenericMethodRefPtr< SignatureT > &  Ptr  )  const [inline]

Оператор сравнения на равенство.

См. определение в файле GenericMethodRefPtr.h строка 131

Перекрестные ссылки Cntm::GenericMethodRefPtr< SignatureT >::GenericPtr() и Cntm::GenericMethodRefPtr< SignatureT >::Method().

template<typename SignatureT>
bool Cntm::GenericMethodRefPtr< SignatureT >::operator!= ( const GenericMethodNoRefPtr< SignatureT > &  Ptr  )  const [inline]

Оператор сравнения на не равенство.

См. определение в файле GenericMethodRefPtr.h строка 139

template<typename SignatureT>
bool Cntm::GenericMethodRefPtr< SignatureT >::operator!= ( const GenericMethodRefPtr< SignatureT > &  Ptr  )  const [inline]

Оператор сравнения на не равенство.

См. определение в файле GenericMethodRefPtr.h строка 147

template<typename SignatureT>
const GenericRefPtr& Cntm::GenericMethodRefPtr< SignatureT >::GenericPtr (  )  const [inline]

Возвращает обобщенный ссылочный указатель.

См. определение в файле GenericMethodRefPtr.h строка 155

template<typename SignatureT>
Closure* Cntm::GenericMethodRefPtr< SignatureT >::Object (  )  const [inline]

Возвращает объект, приведенный к специальному классу Closure.

Используется для вызова метода.

См. определение в файле GenericMethodRefPtr.h строка 163

Перекрестные ссылки Cntm::BasicGenericRefPtr::Pointer().

template<typename SignatureT>
ClosureMethod Cntm::GenericMethodRefPtr< SignatureT >::Method (  )  const [inline]

Возвращает указатель на метод специального класса Closure с указанной сигнатурой.

Используется для вызова метода.

См. определение в файле GenericMethodRefPtr.h строка 171

template<typename SignatureT>
template<typename ClassT>
void Cntm::GenericMethodRefPtr< SignatureT >::Set ( const RefPtr< ClassT > &  ObjectPtr,
typename SignInfo::template Method< ClassT >::Pointer  Method 
) [inline]

Установить новые значения из ссылочного указателя и указателя на метод.

См. определение в файле GenericMethodRefPtr.h строка 180

template<typename SignatureT>
template<typename ClassT>
void Cntm::GenericMethodRefPtr< SignatureT >::Set ( ClassT *  ObjectPtr,
typename SignInfo::template Method< ClassT >::Pointer  Method 
) [inline]

Установить новые значения обычного указателя и указателя на метод.

См. определение в файле GenericMethodRefPtr.h строка 190

template<typename SignatureT>
template<typename ClassT>
void Cntm::GenericMethodRefPtr< SignatureT >::Set ( const ClassT &  Object,
typename SignInfo::template Method< ClassT >::Pointer  Method 
) [inline]

Установить новые значения ссылки на объект и указателя на метод.

См. определение в файле GenericMethodRefPtr.h строка 200

template<typename SignatureT>
void Cntm::GenericMethodRefPtr< SignatureT >::SetNull (  )  [inline]

Установить указатель в NULL.

См. определение в файле GenericMethodRefPtr.h строка 209

Перекрестные ссылки Cntm::GenericRefPtr::SetNull().


Объявления и описания членов класса находятся в файле:
SourceForge.net Logo
© Овсеевич Р.В. Документация по CntmLib 1.1.4 от 28 May 2008. Создано системой  doxygen 1.5.3