Symbian Developer Library

SYMBIAN OS V6.1 EDITION FOR C++

[Index] [Glossary] [Previous] [Next]



Location: s32file.h
Link against: estor.lib

Class CDirectFileStore

CDirectFileStore

Support

Supported from 5.0

Description

Direct file store.

A direct file store implements a subset of the operations defined by the store abstract framework. Direct file stores allow streams to be created and objects externalised to them — however once the streams have been committed and closed, they cannot subsequently be changed, i.e. streams cannot be replaced, deleted, extended or changed in any way.

Derivation

CBaseBase class for all classes to be instantiated on the heap
CDirectFileStoreDirect file store
CFileStoreFile based persistent store -- abstract base class
CPersistentStorePersistent store abstract base class
CStreamStoreProvides the core abstract framework for stores allowing streams to be created and manipulated

Defined in CDirectFileStore:
CreateL(), CreateLC(), FromL(), FromLC(), Layout(), NewL(), NewLC(), OpenL(), OpenLC(), ReplaceL(), ReplaceLC(), TempL(), TempLC()

Inherited from CBase:
operator new()

Inherited from CFileStore:
Detach(), File(), Reattach(), Reset(), SetTypeL(), Type()

Inherited from CPersistentStore:
Root(), SetRootL()

Inherited from CStreamStore:
Commit(), CommitL(), CompactL(), Delete(), DeleteL(), DoCommitL(), DoCompactL(), DoCreateL(), DoDeleteL(), DoReadL(), DoReclaimL(), DoReplaceL(), DoRevertL(), DoWriteL(), ExtendL(), ReclaimL(), Revert(), RevertL()


Allocation and construction


NewL()

static CDirectFileStore* NewL(RFile& aFile);

Description

Constructs a new direct file store object in an already opened file.

The file must already be open before calling the function. The existing content of the file is discarded.

Note that ownership of the file passes to the store. The referenced RFile is cleared and is no longer valid:

Parameters

RFile& aFile

A reference to the opened file.

Return value

CDirectFileStore*

A pointer to the new direct file store object.

Leave codes

 

If the function leaves, the file is closed.


NewLC()

static CDirectFileStore* NewLC(RFile& aFile);

Description

Constructs a new direct file store object in an already opened file and places the pointer onto the cleanup stack.

The file must already be open before calling the function. The existing content of the file is discarded.

Note that ownership of the file passes to the store. The referenced RFile is cleared and is no longer valid:

Parameters

RFile& aFile

A reference to the opened file.

Return value

CDirectFileStore*

A pointer to the new direct file store object.

Leave codes

 

If the function leaves, the file is closed.


CreateL()

static CDirectFileStore* CreateL(RFs& aFs,const TDesC& aName,TUint aFileMode);

Description

Creates a new file and constructs a new direct file store object to be associated with this file.

Parameters

RFs& aFs

Handle to a file server session.

const TDesC& aName

The full path name of the new file. A file with this name must not already exist, otherwise the function leaves.

TUint aFileMode

The mode in which the file is to be accessed. The mode is defined by the TFileMode type.

Return value

CDirectFileStore*

A pointer to the new direct file store object

Leave codes

 

If the new file has been successfully created, and a leave occurs, the file is closed but is not deleted.

See also:


CreateLC()

static CDirectFileStore* CreateLC(RFs& aFs,const TDesC& aName,TUint aFileMode);

Description

Creates a new file and constructs a new direct file store object to be associated with this file, and places the pointer onto the cleanup stack.

Parameters

RFs& aFs

Handle to a file server session.

const TDesC& aName

The full path name of the new file. A file with this name must not already exist, otherwise the function leaves.

TUint aFileMode

The mode in which the file is to be accessed. The mode is defined by the TFileMode type.

Return value

CDirectFileStore*

A pointer to the new direct file store object

Leave codes

 

If the new file has been successfully created, and a leave occurs, the file is closed but is not deleted.

See also:


FromL()

static CDirectFileStore* FromL(RFile& aFile);

Description

Constructs a direct file store object from an already opened file.

The file must already be open before calling this function.

Note that ownership of the file passes to the store. The referenced RFile is cleared and is no longer valid.

Parameters

RFile& aFile

A reference to the opened file.

Return value

CDirectFileStore*

A pointer to the new direct file store object.

Leave codes

 

The file must contain a direct file store, otherwise the function leaves. If the function leaves, the file is closed.


FromLC()

static CDirectFileStore* FromLC(RFile& aFile);

Description

Constructs a direct file store object from an already opened file, and places the pointer onto the cleanup stack.

The file must already be open before calling this function.

Note that ownership of the file passes to the store. The referenced RFile is cleared and is no longer valid.

Parameters

RFile& aFile

A reference to the opened file.

Return value

CDirectFileStore*

A pointer to the new direct file store object.

Leave codes

 

The file must contain a direct file store, otherwise the function leaves. If the function leaves, the file is closed.


OpenL()

static CDirectFileStore* OpenL(RFs& aFs,const TDesC& aName,TUint aFileMode);

Description

Opens a file containing a direct file store, and constructs a direct file store object.

Parameters

RFs& aFs

Handle to a file server session.

const TDesC& aName

The full path name of the file containing the store.

TUint aFileMode

The mode in which the file is to be accessed. The mode is defined by the TFileMode type.

Return value

CDirectFileStore*

A pointer to the new direct file store object.

Leave codes

 

The file must contain a direct file store, otherwise the function leaves. If the function leaves, the file is closed.

See also:


OpenLC()

static CDirectFileStore* OpenLC(RFs& aFs,const TDesC& aName,TUint aFileMode);

Description

Opens a file containing a direct file store, constructs a direct file store object, and places the pointer onto the cleanup stack.

Parameters

RFs& aFs

Handle to a file server session.

const TDesC& aName

The full path name of the file containing the store.

TUint aFileMode

The mode in which the file is to be accessed. The mode is defined by the TFileMode type.

Return value

CDirectFileStore*

A pointer to the new direct file store object.

Leave codes

 

The file must contain a direct file store, otherwise the function leaves. If the function leaves, the file is closed.

See also:


ReplaceL()

static CDirectFileStore* ReplaceL(RFs& aFs,const TDesC& aName,TUint aFileMode);

Description

Creates a file and constructs a direct file store object to be associated with it.

The file replaces any existing file of the same name.

Parameters

RFs& aFs

Handle to a file server session.

const TDesC& aName

The full path name of the file to be replaced.

TUint aFileMode

The mode in which the file is to be accessed. The mode is defined by the TFileMode type.

Return value

CDirectFileStore*

A pointer to the new direct file store object.

Leave codes

 

If the function leaves, the file is closed.

See also:


ReplaceLC()

static CDirectFileStore* ReplaceLC(RFs& aFs,const TDesC& aName,TUint aFileMode);

Description

Creates a file, constructs a direct file store object to be associated with it, and places the pointer onto the cleanup stack.

The file replaces any existing file of the same name.

Parameters

RFs& aFs

Handle to a file server session.

const TDesC& aName

The full path name of the file to be replaced.

TUint aFileMode

The mode in which the file is to be accessed. The mode is defined by the TFileMode type.

Return value

CDirectFileStore*

A pointer to the new direct file store object.

Leave codes

 

If the function leaves, the file is closed.

See also:


TempL()

static CDirectFileStore* TempL(RFs& aFs,const TDesC& aPath,TFileName& aName,TUint aFileMode);

Description

Creates a temporary file and constructs a direct file store object to be associated with it.

The new file is created in the specified path and a unique file name is generated by the file server.

Note that the store framework does not delete a temporary file after it is closed.

Parameters

RFs& aFs

Handle to a file server session.

const TDesC& aPath

The path where the new file is to be created.

TFileName& aName

On return, contains the full path name of the new file.

TUint aFileMode

The mode in which the new file is to be accessed. The mode is defined by the TFileMode type.

Return value

CDirectFileStore*

A pointer to the new direct file store object.

Leave codes

 

If the new file has been successfully created, and a leave occurs, the file is closed but is not deleted.

See also:


TempLC()

static CDirectFileStore* TempLC(RFs& aFs,const TDesC& aPath,TFileName& aName,TUint aFileMode);

Description

Creates a temporary file, constructs a direct file store object to be associated with it, and places the pointer onto the cleanup stack.

The new file is created in the specified path and a unique file name is generated by the file server.

Note that the store framework does not delete a temporary file after it is closed.

Parameters

RFs& aFs

Handle to a file server session.

const TDesC& aPath

The path where the new file is to be created.

TFileName& aName

On return, contains the full path name of the new file.

TUint aFileMode

The mode in which the new file is to be accessed. The mode is defined by the TFileMode type.

Return value

CDirectFileStore*

A pointer to the new direct file store object.

Leave codes

 

If the new file has been successfully created, and a leave occurs, the file is closed but is not deleted.

See also:

[Top]


File store layout


Layout()

TUid Layout() const;

Description

Gets the UID that uniquely identifies this file store as a direct file store.

Return value

TUid

KDirectFileStoreLayoutUid.