ReactOS 0.4.15-dev-7942-gd23573b
SShellPtr< T > Struct Template Reference

wrapper template class for pointers to shell objects managed by IMalloc More...

#include <shellclasses.h>

Collaboration diagram for SShellPtr< T >:

Public Member Functions

 ~SShellPtr ()
 
Toperator-> ()
 
T constoperator-> () const
 
 operator T const * () const
 
const Toperator* () const
 
Toperator* ()
 

Protected Member Functions

 SShellPtr ()
 
 SShellPtr (T *p)
 
void Free ()
 

Protected Attributes

T_p
 
ShellMalloc _malloc
 

Private Member Functions

 SShellPtr (const SShellPtr &)
 
void operator= (SShellPtr const &)
 

Detailed Description

template<typename T>
struct SShellPtr< T >

wrapper template class for pointers to shell objects managed by IMalloc

Definition at line 271 of file shellclasses.h.

Constructor & Destructor Documentation

◆ ~SShellPtr()

template<typename T >
SShellPtr< T >::~SShellPtr ( )
inline

Definition at line 273 of file shellclasses.h.

274 {
275 _malloc->Free(_p);
276 }
void Free([in] LPVOID pv)
ShellMalloc _malloc
Definition: shellclasses.h:321

◆ SShellPtr() [1/3]

template<typename T >
SShellPtr< T >::SShellPtr ( )
inlineprotected

Definition at line 304 of file shellclasses.h.

305 : _p(0)
306 {
307 }

◆ SShellPtr() [2/3]

template<typename T >
SShellPtr< T >::SShellPtr ( T p)
inlineprotected

Definition at line 309 of file shellclasses.h.

310 : _p(p)
311 {
312 }
GLfloat GLfloat p
Definition: glext.h:8902

◆ SShellPtr() [3/3]

template<typename T >
SShellPtr< T >::SShellPtr ( const SShellPtr< T > &  )
inlineprivate

Definition at line 325 of file shellclasses.h.

325{}

Member Function Documentation

◆ Free()

template<typename T >
void SShellPtr< T >::Free ( )
inlineprotected

Definition at line 314 of file shellclasses.h.

315 {
316 _malloc->Free(_p);
317 _p = NULL;
318 }
#define NULL
Definition: types.h:112

◆ operator T const *()

template<typename T >
SShellPtr< T >::operator T const * ( ) const
inline

Definition at line 288 of file shellclasses.h.

289 {
290 return _p;
291 }

◆ operator*() [1/2]

template<typename T >
T & SShellPtr< T >::operator* ( )
inline

Definition at line 298 of file shellclasses.h.

299 {
300 return *_p;
301 }

◆ operator*() [2/2]

template<typename T >
const T & SShellPtr< T >::operator* ( ) const
inline

Definition at line 293 of file shellclasses.h.

294 {
295 return *_p;
296 }

◆ operator->() [1/2]

template<typename T >
T * SShellPtr< T >::operator-> ( )
inline

Definition at line 278 of file shellclasses.h.

279 {
280 return _p;
281 }

◆ operator->() [2/2]

template<typename T >
T const * SShellPtr< T >::operator-> ( ) const
inline

Definition at line 283 of file shellclasses.h.

284 {
285 return _p;
286 }

◆ operator=()

template<typename T >
void SShellPtr< T >::operator= ( SShellPtr< T > const )
inlineprivate

Definition at line 326 of file shellclasses.h.

326{}

Member Data Documentation

◆ _malloc

template<typename T >
ShellMalloc SShellPtr< T >::_malloc
mutableprotected

Definition at line 321 of file shellclasses.h.

Referenced by SShellPtr< T >::Free(), and SShellPtr< T >::~SShellPtr().

◆ _p


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