Lines Matching refs:SMARTP
31 #define SMARTP libmapping::SMARTP macro
78 template<class T> class SMARTP {
85 SMARTP() : fSmartPtr(0) {} in SMARTP() function
87 SMARTP(T* rawptr) : fSmartPtr(rawptr) { if (fSmartPtr) fSmartPtr->addReference(); } in SMARTP() function
90 SMARTP(const SMARTP<T2>& ptr) : fSmartPtr((T*)ptr) { if (fSmartPtr) fSmartPtr->addReference(); } in SMARTP() function
92 SMARTP(const SMARTP& ptr) : fSmartPtr((T*)ptr) { if (fSmartPtr) fSmartPtr->addReference(); } in SMARTP() function
95 ~SMARTP() { if (fSmartPtr) fSmartPtr->removeReference(); } in ~SMARTP()
116 SMARTP& operator=(T2 p1_) { *this=(T*)p1_; return *this; }
119 SMARTP& operator=(T* p_) {
132 bool operator<(const SMARTP<T>& p_) const { return fSmartPtr < ((T *) p_); }
134 SMARTP& operator=(const SMARTP<T>& p_) { return operator=((T *) p_); }
136 template<class T2> SMARTP& cast(T2* p_) { return operator=(dynamic_cast<T*>(p_)); } in cast()
138 template<class T2> SMARTP& cast(const SMARTP<T2>& p_) { return operator=(dynamic_cast<T*>(p_)); } in cast()