class PathInfo |
Class holds information of system paths. Platform Environment API provides interface for quering system paths. Methods provided by the API should be used instead of hard coded path names. All paths have the trailing backslash included. The API consist of the PathInfo class, DriveInfo class and system paths are defined in PathConfiguration.hrh. The DriveInfo class is defined in DriveInfo.h.
Usage:
#include <PathInfo.h> // Get the root path of Phone Memory. TFileName path = PathInfo::PhoneMemoryRootPath(); // Get the games path and append the path to the root path of Phone Memory. path.Append( PathInfo::GamesPath() ); // 'path' contains now the games path in Phone Memory.
Error handling:
The panic mechanism is used to handle programming errors. GetPath(TInt aPath) method will panic if invalid parameter is given as input. The panic category is named PATHINFO and panic code is:
EInvalidParameter = 0 (Invalid parameter.)
Public Member Functions | |
---|---|
IMPORT_C const TDesC & | DigitalSoundsPath() |
IMPORT_C const TDesC & | GamesPath() |
IMPORT_C TInt | GetFullPath(TDes &, TInt, TInt) |
IMPORT_C CDesCArray * | GetListOfPathsL(TInt) |
IMPORT_C CDesCArray * | GetListOfPathsLC(TInt) |
IMPORT_C const TDesC & | GetPath(TInt) |
IMPORT_C TInt | GetRootPath(TDes &, TInt) |
IMPORT_C const TDesC & | GmsPicturesPath() |
IMPORT_C const TDesC & | ImagesPath() |
IMPORT_C const TDesC & | ImagesThumbnailPath() |
IMPORT_C const TDesC & | InstallsPath() |
IMPORT_C const TDesC & | MemoryCardContactsPath() |
IMPORT_C const TDesC & | MemoryCardRootPath() |
IMPORT_C const TDesC & | MmsBackgroundImagesPath() |
IMPORT_C const TDesC & | OthersPath() |
IMPORT_C TInt | PathType(const TDesC &) |
IMPORT_C const TDesC & | PhoneMemoryRootPath() |
IMPORT_C const TDesC & | PicturesPath() |
IMPORT_C const TDesC & | PresenceLogosPath() |
IMPORT_C const TDesC & | RomRootPath() |
IMPORT_C const TDesC & | SimpleSoundsPath() |
IMPORT_C const TDesC & | SoundsPath() |
IMPORT_C const TDesC & | VideosPath() |
Private Member Functions | |
---|---|
PathInfo() |
Public Member Enumerations | |
---|---|
enum | TSystemPaths { ENotSystemPath = -1, ERomRootPath = 0, EPhoneMemoryRootPath, EMemoryCardRootPath, EGamesPath, EInstallsPath, EOthersPath, EVideosPath, EImagesPath, EGsmPicturesPath, EMmsBackgroundImagesPath, EPresenceLogosPath, ESoundsPath, EDigitalSoundsPath, ESimpleSoundsPath, EImagesThumbnailPath, EMemoryCardContactsPath } |
IMPORT_C const TDesC & | DigitalSoundsPath | ( | ) | [static] |
This method returns the digital sounds path to be appended to a root path. Corresponding TSystemPaths value of the returned path is EDigitalSoundsPath.
IMPORT_C const TDesC & | GamesPath | ( | ) | [static] |
This method returns the games path to be appended to a root path. Corresponding TSystemPaths value of the returned path is EGamesPath.
IMPORT_C TInt | GetFullPath | ( | TDes & | aFullPath, |
TInt | aDrive, | |||
TInt | aPath | |||
) | [static] |
This method gets the full path of the requested system path in the requested drive. KErrNotFound is returned when the drive has no requested system path or the requested path cannot be added to the root path.
#include <PathInfo.h> #include <DriveInfo.h> // Get the full path of the images folder in the default // phone memory drive. TFileName path; TInt drive; User::LeaveIfError( DriveInfo::GetDefaultDrive( DriveInfo::EDefaultPhoneMemory, drive ) ); User::LeaveIfError( PathInfo::GetFullPath( path, drive, PathInfo::EImages ) ); // 'path' contains now the full path of the images folder in the default // phone memory drive.
TDriveNumber KMaxPath TSystemPaths DriveInfo
IMPORT_C CDesCArray * | GetListOfPathsL | ( | TInt | aDrive | ) | [static] |
This method gets the list of full system paths in the requested drive.
TInt aDrive | A drive identifier specified by TDriveNumber. |
IMPORT_C CDesCArray * | GetListOfPathsLC | ( | TInt | aDrive | ) | [static] |
This method gets the list of full system paths in the requested drive and leaves the returned pointer in cleanup stack.
#include <PathInfo.h> #include <DriveInfo.h> // Create the default path structure for default mass storage drive TInt drive; User::LeaveIfError( DriveInfo::GetDefaultDrive( DriveInfo::EDefaultMassStorage, drive ) ); CDesCArray* paths = PathInfo::GetListOfPathsLC( drive ); TInt count( paths->MdcaCount() ); for ( TInt i( 0 ); i < count; ++i ) { User::LeaveIfError( iFs.MkDirAll( paths->MdcaPoint( i ) ); } CleanupStack::PopAndDestroy( paths ); // The default mass storage drive contains now the default path structure
TDriveNumber DriveInfo
TInt aDrive | A drive identifier specified by TDriveNumber. |
IMPORT_C const TDesC & | GetPath | ( | TInt | aPath | ) | [static] |
This method returns the requested system path.
#include <PathInfo.h> // Get the the full path of the contacts folder in the memory card. TFileName path = PathInfo::GetPath( PathInfo::EMemoryCardContactsPath ); // 'path' contains now the full path of the contacts folder in the memory card..
TInt aPath | Defines the requested system path. |
IMPORT_C TInt | GetRootPath | ( | TDes & | aRootPath, |
TInt | aDrive | |||
) | [static] |
This method gets the root path of the requested drive. The root path is the path where the system paths are located.
#include <PathInfo.h> #include <DriveInfo.h> // Get the root path of the default phone memory. TInt drive; User::LeaveIfError( DriveInfo::GetDefaultDrive( DriveInfo::EDefaultPhoneMemory, drive ) ); TFileName path; User::LeaveIfError( PathInfo::GetRootPath( path, drive ) ); // 'path' contains now the default folder root path of the default phone memory.
TDriveNumber KMaxPath DriveInfo
IMPORT_C const TDesC & | GmsPicturesPath | ( | ) | [static] |
This method returns the GMS pictures path to be appended to a root path. Corresponding TSystemPaths value of the returned path is EGsmPicturesPath.
IMPORT_C const TDesC & | ImagesPath | ( | ) | [static] |
This method returns the images path to be appended to a root path. Corresponding TSystemPaths value of the returned path is EImagesPath.
IMPORT_C const TDesC & | ImagesThumbnailPath | ( | ) | [static] |
This method returns a thumbnail images path. The thumbnail images directory exists under the same directory where the corresponding image is. Do not try to append this to a root directory. Corresponding TSystemPaths value of the returned path is EImagesThumbnailPath.
IMPORT_C const TDesC & | InstallsPath | ( | ) | [static] |
This method returns the installs path to be appended to a root path. Corresponding TSystemPaths value of the returned path is EInstallsPath.
IMPORT_C const TDesC & | MemoryCardContactsPath | ( | ) | [static] |
This method returns the full path of the contacts folder in the memory card. The path also contains the drive letter. Do not try to append this to any root directory. Corresponding TSystemPaths value of the returned path is EMemoryCardContactsPath.
IMPORT_C const TDesC & | MemoryCardRootPath | ( | ) | [static] |
This method returns the root path in Memory Card. Corresponding TSystemPaths value of the returned path is EMemoryCardRootPath.
IMPORT_C const TDesC & | MmsBackgroundImagesPath | ( | ) | [static] |
This method returns the MMS background images path to be appended to a root path. Corresponding TSystemPaths value of the returned path is EMmsBackgroundImagesPath.
IMPORT_C const TDesC & | OthersPath | ( | ) | [static] |
This method returns the others path to be appended to a root path. Corresponding TSystemPaths value of the returned path is EOthersPath.
IMPORT_C TInt | PathType | ( | const TDesC & | aFullPath | ) | [static] |
This method returns the system path type of the given path. Thumbnail system path can exist in any folder. Other paths must be exact system paths, not subfolders of a system path ENotSystemPath is returned, if the path is not a system path. The given path must have backslash ending.
#include <PathInfo.h> // Check the type of the system path. _LIT( KImagesPath, "E:\\Images\\" ); TInt type( PathInfo::PathType( KImagesPath ) ); // 'type' contains now the EImagesPath value.
const TDesC & aFullPath | A path to be type checked |
IMPORT_C const TDesC & | PhoneMemoryRootPath | ( | ) | [static] |
This method returns the root path in Phone Memory. Corresponding TSystemPaths value of the returned path is EPhoneMemoryRootPath.
IMPORT_C const TDesC & | PicturesPath | ( | ) | [static] |
This method returns the pictures path to be appended to a root path. Corresponding TSystemPaths value of the returned path is EGsmPicturesPath.
Use GmsPicturesPath() instead.
IMPORT_C const TDesC & | PresenceLogosPath | ( | ) | [static] |
This method returns the presence logos path to be appended to a root path. Corresponding TSystemPaths value of the returned path is EPresenceLogosPath.
IMPORT_C const TDesC & | RomRootPath | ( | ) | [static] |
This method returns the root path in ROM. Corresponding TSystemPaths value of the returned path is ERomRootPath.
IMPORT_C const TDesC & | SimpleSoundsPath | ( | ) | [static] |
This method returns the simple sounds path to be appended to a root path. Corresponding TSystemPaths value of the returned path is ESimpleSoundsPath.
IMPORT_C const TDesC & | SoundsPath | ( | ) | [static] |
This method returns the sounds path to be appended to a root path. Corresponding TSystemPaths value of the returned path is ESoundsPath.
IMPORT_C const TDesC & | VideosPath | ( | ) | [static] |
This method returns the videos path to be appended to a root path. Corresponding TSystemPaths value of the returned path is EVideosPath.
ENotSystemPath = -1 |
This value is used only as a return value of PathType() to indicate that the path is not a system path. It is not a valid system path to be given as a parameter for GetPath() or GetFullPath() |
ERomRootPath = 0 |
To get the root path in ROM. |
EPhoneMemoryRootPath |
To get the root path in Phone Memory.. |
EMemoryCardRootPath |
To get the root path in Memory Card. |
EGamesPath |
To get the games path to be appended to a root path. |
EInstallsPath |
To get the installs path to be appended to a root path. |
EOthersPath |
To get the others path to be appended to a root path. |
EVideosPath |
To get the videos path to be appended to a root path. |
EImagesPath |
To get the images path to be appended to a root path. |
EGsmPicturesPath |
To get the GSM pictures path to be appended to a root path. |
EMmsBackgroundImagesPath |
To get the MMS pictures path to be appended to a root path. |
EPresenceLogosPath |
To get the presence logos path to be appended to a root path. |
ESoundsPath |
To get the sounds path to be appended to a root path. |
EDigitalSoundsPath |
To get the digital sounds path to be appended to a root path. |
ESimpleSoundsPath |
To get the simple sounds path to be appended to a root path. |
EImagesThumbnailPath |
To get the images thumbnail path. The thumbnail images directory exists under the same directory where the corresponding image is. Do not try to append this to a root directory. |
EMemoryCardContactsPath |
To get the full path of the contacts folder in the memory card. The path also contains the drive letter. Do not try to append this to any root directory. |
Copyright ©2010 Nokia Corporation and/or its subsidiary(-ies).
All rights
reserved. Unless otherwise stated, these materials are provided under the terms of the Eclipse Public License
v1.0.