home     download     screen shots     bugs     mailing list     example output     generated MFC docs     help     tools and utilities


 Overview   Project   Class   Tree   Index 
MFC Class Library
FRAMES    NO FRAMES
SUMMARY:  INNER | FIELD | CONSTR | METHOD

MFC
Class CMemFile

CObject
   |
   +--CFile
         |
         +--CMemFile

   in AFX.H
Direct Known Subclasses:
CSharedFile

class CMemFile
extends CFile

Memory based file implementation


Field Summary
 static const AFX_CORE_DATA CRuntimeClass classCMemFile
          
protected BOOL m_bAutoDelete
          
protected BYTE* m_lpBuffer
          
protected DWORD m_nBufferSize
          
protected DWORD m_nFileSize
          
protected UINT m_nGrowBytes
          
protected DWORD m_nPosition
          
   
Fields inherited from class CFile
classCFile, m_hFile, m_bCloseOnDelete, m_strFileName
   
Fields inherited from class CObject
classCObject
 
Constructor Summary
CMemFile( BYTE* lpBuffer, UINT nBufferSize, UINT nGrowBytes = 0 )
          
CMemFile( UINT nGrowBytes = 1024 )
          
virtual ~CMemFile()
          
 
Method Summary
 virtual void Abort()
          
protected virtual BYTE* Alloc( DWORD nBytes )
          
 void Attach( BYTE* lpBuffer, UINT nBufferSize, UINT nGrowBytes = 0 )
          
 virtual void Close()
          
 BYTE* Detach()
          
 virtual CFile* Duplicate() const
          
 virtual void Flush()
          
protected virtual void Free( BYTE* lpMem )
          
 virtual UINT GetBufferPtr( UINT nCommand, UINT nCount = 0, void** ppBufStart = 0, void** ppBufMax = 0 )
          
 virtual DWORD GetPosition() const
          
 virtual CRuntimeClass* GetRuntimeClass() const
          
 BOOL GetStatus( CFileStatus& rStatus ) const
          
protected virtual void GrowFile( DWORD dwNewLen )
          
 virtual void LockRange( DWORD dwPos, DWORD dwCount )
          
protected virtual BYTE* Memcpy( BYTE* lpMemTarget, const BYTE* lpMemSource, UINT nBytes )
          
 virtual UINT Read( void* lpBuf, UINT nCount )
          
protected virtual BYTE* Realloc( BYTE* lpMem, DWORD nBytes )
          
 virtual LONG Seek( LONG lOff, UINT nFrom )
          
 virtual void SetLength( DWORD dwNewLen )
          
 virtual void UnlockRange( DWORD dwPos, DWORD dwCount )
          
 virtual void Write( const void* lpBuf, UINT nCount )
          
   
Methods inherited from class CFile
GetRuntimeClass, HFILE, GetPosition, GetStatus, GetFileName, GetFileTitle, GetFilePath, SetFilePath, Open, Rename, Remove, GetStatus, SetStatus, SeekToEnd, SeekToBegin, ReadHuge, WriteHuge, Duplicate, Seek, SetLength, GetLength, Read, Write, LockRange, UnlockRange, Abort, Flush, Close, GetBufferPtr
   
Methods inherited from class CObject
GetRuntimeClass, new, new, delete, IsSerializable, IsKindOf, Serialize
 

Field Detail

classCMemFile

public static const AFX_CORE_DATA CRuntimeClass classCMemFile;

m_bAutoDelete

protected BOOL m_bAutoDelete;

m_lpBuffer

protected BYTE* m_lpBuffer;

m_nBufferSize

protected DWORD m_nBufferSize;

m_nFileSize

protected DWORD m_nFileSize;

m_nGrowBytes

protected UINT m_nGrowBytes;

m_nPosition

protected DWORD m_nPosition;


Constructor Detail

CMemFile

public CMemFile( BYTE* lpBuffer, UINT nBufferSize, UINT nGrowBytes = 0 );

CMemFile

public CMemFile( UINT nGrowBytes = 1024 );

~CMemFile

public virtual ~CMemFile();


Method Detail

Abort

public virtual void Abort();

Alloc

protected virtual BYTE* Alloc( DWORD nBytes );

Attach

public void Attach( BYTE* lpBuffer, UINT nBufferSize, UINT nGrowBytes = 0 );

Close

public virtual void Close();

Detach

public BYTE* Detach();

Duplicate

public virtual CFile* Duplicate() const;

Flush

public virtual void Flush();

Free

protected virtual void Free( BYTE* lpMem );

GetBufferPtr

public virtual UINT GetBufferPtr( UINT nCommand, UINT nCount = 0, void** ppBufStart = 0, void** ppBufMax = 0 );

GetPosition

public virtual DWORD GetPosition() const;

GetRuntimeClass

public virtual CRuntimeClass* GetRuntimeClass() const;

GetStatus

public BOOL GetStatus( CFileStatus& rStatus ) const;

GrowFile

protected virtual void GrowFile( DWORD dwNewLen );

LockRange

public virtual void LockRange( DWORD dwPos, DWORD dwCount );

Memcpy

protected virtual BYTE* Memcpy( BYTE* lpMemTarget, const BYTE* lpMemSource, UINT nBytes );

Read

public virtual UINT Read( void* lpBuf, UINT nCount );

Realloc

protected virtual BYTE* Realloc( BYTE* lpMem, DWORD nBytes );

Seek

public virtual LONG Seek( LONG lOff, UINT nFrom );

SetLength

public virtual void SetLength( DWORD dwNewLen );

UnlockRange

public virtual void UnlockRange( DWORD dwPos, DWORD dwCount );

Write

public virtual void Write( const void* lpBuf, UINT nCount );

 Overview   Project   Class   Tree   Index 
MFC Class Library
CppDoc v2.3.1
FRAMES    NO FRAMES
SUMMARY:  INNER | FIELD | CONSTR | METHOD