NSFileSystem::TVirtualFileAutoPtr< T > Class Template Reference

This class represents AUTOPTR for class TVirtualFile. More...

#include <VirtualFile.h>

Inheritance diagram for NSFileSystem::TVirtualFileAutoPtr< T >:

Inheritance graph
[legend]
Collaboration diagram for NSFileSystem::TVirtualFileAutoPtr< T >:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 TVirtualFileAutoPtr (void)
 Empty constructor.
 TVirtualFileAutoPtr (T *vfile)
 Constructor from pointer to TVirtualFile.
 ~TVirtualFileAutoPtr (void)
 Destroy this object and close opened virtual file if it is stored inside.
 TVirtualFileAutoPtr (const TVirtualFileAutoPtr< T > &orig)
void operator= (const TVirtualFileAutoPtr< T > &orig)
void operator= (T *vfile)
 Assignment operator.
BOOL operator== (const TVirtualFileAutoPtr< T > &vfileptr)
 Compare two virtual files.
BOOL operator== (const T *vfile)
 Compare this virtual file with another virtual file.
BOOL operator!= (const TVirtualFileAutoPtr< T > &vfileptr)
 Compare two virtual files.
BOOL operator!= (const T *vfile)
 Compare this virtual file with another virtual file.
BOOL operator! (void) const
 Returns negation of pointer converted to BOOL.
BOOL IsNULL (void) const
 Check whether pointer inside object is NULL.
T * GetPtr (void)
 Returns pointer stored inside this object.
const T * GetPtr (void) const
 Returns pointer stored inside this object.
T * operator-> (void)
 Pointer access operator.
const T * operator-> (void) const
 Pointer access operator.

Detailed Description

template<class T>
class NSFileSystem::TVirtualFileAutoPtr< T >

This class represents AUTOPTR for class TVirtualFile.

You may simply use this class. Class initializes their pointer to NULL at begin and automatically destroy non-NULL pointer when object is destroyed.

It is not allowed assignment of this class (copy constructor, assignment operator etc.) because no reference counting is used. Thus you should use class only in scope where was object declared.

Warning:
You CANNOT call TVirtualFile::Close to pointer bounded inside this class!!! You close file simply via destructor (its called automatically for AUTO variables) or via assignment to NULL.

Definition at line 171 of file VirtualFile.h.


Constructor & Destructor Documentation

template<class T>
NSFileSystem::TVirtualFileAutoPtr< T >::TVirtualFileAutoPtr void   )  [inline]
 

Empty constructor.

Initialize object to NULL.

Definition at line 210 of file VirtualFile.h.

template<class T>
NSFileSystem::TVirtualFileAutoPtr< T >::TVirtualFileAutoPtr T *  vfile  )  [inline]
 

Constructor from pointer to TVirtualFile.

Parameters:
vfile [in] pointer to virtual file

Definition at line 220 of file VirtualFile.h.

template<class T>
NSFileSystem::TVirtualFileAutoPtr< T >::~TVirtualFileAutoPtr void   )  [inline]
 

Destroy this object and close opened virtual file if it is stored inside.

Definition at line 228 of file VirtualFile.h.

template<class T>
NSFileSystem::TVirtualFileAutoPtr< T >::TVirtualFileAutoPtr const TVirtualFileAutoPtr< T > &  orig  ) 
 


Member Function Documentation

template<class T>
const T * NSFileSystem::TVirtualFileAutoPtr< T >::GetPtr void   )  const [inline]
 

Returns pointer stored inside this object.

Definition at line 332 of file VirtualFile.h.

template<class T>
T * NSFileSystem::TVirtualFileAutoPtr< T >::GetPtr void   )  [inline]
 

Returns pointer stored inside this object.

Definition at line 324 of file VirtualFile.h.

template<class T>
BOOL NSFileSystem::TVirtualFileAutoPtr< T >::IsNULL void   )  const [inline]
 

Check whether pointer inside object is NULL.

Definition at line 316 of file VirtualFile.h.

Referenced by NSConfigFile::TConfigFile::LoadConfigFileFromVFS().

template<class T>
BOOL NSFileSystem::TVirtualFileAutoPtr< T >::operator! void   )  const [inline]
 

Returns negation of pointer converted to BOOL.

Note:
It is useful for comparsion to NULL.

Definition at line 308 of file VirtualFile.h.

template<class T>
BOOL NSFileSystem::TVirtualFileAutoPtr< T >::operator!= const T *  vfile  )  [inline]
 

Compare this virtual file with another virtual file.

Note:
Comparsion is done according to pointers (memory addresses).
Parameters:
vfile [in] second virtual file to compare

Definition at line 298 of file VirtualFile.h.

template<class T>
BOOL NSFileSystem::TVirtualFileAutoPtr< T >::operator!= const TVirtualFileAutoPtr< T > &  vfileptr  )  [inline]
 

Compare two virtual files.

Note:
Comparsion is done according to pointers (memory addresses).
Parameters:
vfileptr [in] second virtual file to compare

Definition at line 286 of file VirtualFile.h.

References NSFileSystem::TVirtualFileAutoPtr< T >::m_ptr.

template<class T>
const T * NSFileSystem::TVirtualFileAutoPtr< T >::operator-> void   )  const [inline]
 

Pointer access operator.

Definition at line 348 of file VirtualFile.h.

template<class T>
T * NSFileSystem::TVirtualFileAutoPtr< T >::operator-> void   )  [inline]
 

Pointer access operator.

Definition at line 340 of file VirtualFile.h.

template<class T>
void NSFileSystem::TVirtualFileAutoPtr< T >::operator= T *  vfile  )  [inline]
 

Assignment operator.

Note:
Previsous file is closed (if exists).
Parameters:
vfile [in] pointer to virtual file

Definition at line 244 of file VirtualFile.h.

template<class T>
void NSFileSystem::TVirtualFileAutoPtr< T >::operator= const TVirtualFileAutoPtr< T > &  orig  ) 
 

template<class T>
BOOL NSFileSystem::TVirtualFileAutoPtr< T >::operator== const T *  vfile  )  [inline]
 

Compare this virtual file with another virtual file.

Note:
Comparsion is done according to pointers (memory addresses).
Parameters:
vfile [in] second virtual file to compare

Definition at line 274 of file VirtualFile.h.

template<class T>
BOOL NSFileSystem::TVirtualFileAutoPtr< T >::operator== const TVirtualFileAutoPtr< T > &  vfileptr  )  [inline]
 

Compare two virtual files.

Note:
Comparsion is done according to pointers (memory addresses).
Parameters:
vfileptr [in] second virtual file to compare

Definition at line 262 of file VirtualFile.h.

References NSFileSystem::TVirtualFileAutoPtr< T >::m_ptr.


The documentation for this class was generated from the following file:
Generated on Wed Nov 28 22:45:07 2007 for Joy4D by  doxygen 1.4.6-NO