sl@0: // Copyright (c) 2003-2009 Nokia Corporation and/or its subsidiary(-ies). sl@0: // All rights reserved. sl@0: // This component and the accompanying materials are made available sl@0: // under the terms of the License "Eclipse Public License v1.0" sl@0: // which accompanies this distribution, and is available sl@0: // at the URL "http://www.eclipse.org/legal/epl-v10.html". sl@0: // sl@0: // Initial Contributors: sl@0: // Nokia Corporation - initial contribution. sl@0: // sl@0: // Contributors: sl@0: // sl@0: // Description: sl@0: // f32\sfile\sf_ops.h sl@0: // sl@0: // sl@0: sl@0: #ifndef SF_OPS_H sl@0: #define SF_OPS_H sl@0: sl@0: sl@0: #define MSG0(aType) ((TUint32)(TFsPluginRequest::aType)) sl@0: #define MSG1(aType) ((TUint32)(TFsPluginRequest::aType) << 8) sl@0: #define MSG2(aType) ((TUint32)(TFsPluginRequest::aType) << 16) sl@0: #define MSG3(aType) ((TUint32)(TFsPluginRequest::aType) << 24) sl@0: sl@0: static const TOperation OperationArray[EMaxClientOperations]= sl@0: {/* function Flags iInitialise iPostInitialise iDoRequestL iMessageArguments*/ sl@0: { EFsAddFileSystem, ESync, &TFsAddFileSystem::Initialise, NULL, &TFsAddFileSystem::DoRequestL }, sl@0: { EFsRemoveFileSystem, ESync, &TFsRemoveFileSystem::Initialise, NULL, &TFsRemoveFileSystem::DoRequestL }, sl@0: { EFsMountFileSystem, 0, &TFsMountFileSystem::Initialise, NULL, &TFsMountFileSystem::DoRequestL }, sl@0: { EFsNotifyChange, ESync, &TFsNotifyChange::Initialise, NULL, &TFsNotifyChange::DoRequestL }, sl@0: { EFsNotifyChangeCancel, ESync, &TFsNotifyChangeCancel::Initialise, NULL, &TFsNotifyChangeCancel::DoRequestL }, sl@0: { EFsDriveList, ESync, &TFsDriveList::Initialise, NULL, &TFsDriveList::DoRequestL }, sl@0: { EFsDrive, ESync, &TFsDrive::Initialise, NULL, &TFsDrive::DoRequestL }, sl@0: { EFsVolume, 0, &TFsVolume::Initialise, NULL, &TFsVolume::DoRequestL , MSG0(EVolumeInfo)}, sl@0: { EFsSetVolume, 0, &TFsSetVolume::Initialise, NULL, &TFsSetVolume::DoRequestL }, sl@0: { EFsSubst, ESync, &TFsSubst::Initialise, NULL, &TFsSubst::DoRequestL }, sl@0: { EFsSetSubst, ESync | EParseSrc, &TFsSetSubst::Initialise, NULL, &TFsSetSubst::DoRequestL }, sl@0: { EFsRealName, ESync | EParseSrc, &TFsRealName::Initialise, NULL, &TFsRealName::DoRequestL }, sl@0: { EFsDefaultPath, ESync, &TFsDefaultPath::Initialise, NULL, &TFsDefaultPath::DoRequestL }, sl@0: { EFsSetDefaultPath, ESync, &TFsSetDefaultPath::Initialise, NULL, &TFsSetDefaultPath::DoRequestL }, sl@0: { EFsSessionPath, ESync, &TFsSessionPath::Initialise, NULL, &TFsSessionPath::DoRequestL }, sl@0: { EFsSetSessionPath, ESync, &TFsSetSessionPath::Initialise, NULL, &TFsSetSessionPath::DoRequestL }, sl@0: { EFsMkDir, EParseSrc, &TFsMkDir::Initialise, NULL, &TFsMkDir::DoRequestL , MSG0(EName) | MSG1(EMode)}, sl@0: { EFsRmDir, EParseSrc, &TFsRmDir::Initialise, NULL, &TFsRmDir::DoRequestL , MSG0(EName)}, sl@0: { EFsParse, ESync, &TFsParse::Initialise, NULL, &TFsParse::DoRequestL }, sl@0: { EFsDelete, EParseSrc, &TFsDelete::Initialise, NULL, &TFsDelete::DoRequestL , MSG0(EName)}, sl@0: { EFsRename, EParseDst | EParseSrc, &TFsRename::Initialise, NULL, &TFsRename::DoRequestL , MSG0(EName) | MSG1(ENewName)}, sl@0: { EFsReplace, EParseDst | EParseSrc, &TFsReplace::Initialise, NULL, &TFsReplace::DoRequestL , MSG0(EName) | MSG1(ENewName)}, sl@0: { EFsEntry, EParseSrc, &TFsEntry::Initialise, NULL, &TFsEntry::DoRequestL , MSG0(EName) | MSG1(EEntry)}, sl@0: { EFsSetEntry, EParseSrc, &TFsSetEntry::Initialise, NULL, &TFsSetEntry::DoRequestL , MSG0(EName) | MSG1(ETime) | MSG2(ESetAtt) | MSG3(EClearAtt)}, sl@0: { EFsGetDriveName, ESync, &TFsGetDriveName::Initialise, NULL, &TFsGetDriveName::DoRequestL }, sl@0: { EFsSetDriveName, ESync, &TFsSetDriveName::Initialise, NULL, &TFsSetDriveName::DoRequestL }, sl@0: { EFsFormatSubClose, ESync, &TFsSubClose::Initialise, NULL, &TFsSubClose::DoRequestL }, sl@0: { EFsDirSubClose, ESync, &TFsSubClose::Initialise, NULL, &TFsSubClose::DoRequestL }, sl@0: { EFsFileSubClose, EFileShare, &TFsSubClose::Initialise, NULL, &TFsSubClose::DoRequestL }, sl@0: { EFsRawSubClose, ESync, &TFsSubClose::Initialise, NULL, &TFsSubClose::DoRequestL }, sl@0: { EFsFileOpen, EParseSrc, &TFsFileOpen::Initialise, NULL, &TFsFileOpen::DoRequestL , MSG0(EName) | MSG1(EMode)}, sl@0: { EFsFileCreate, EParseSrc, &TFsFileCreate::Initialise, NULL, &TFsFileCreate::DoRequestL , MSG0(EName) | MSG1(EMode)}, sl@0: { EFsFileReplace, EParseSrc, &TFsFileReplace::Initialise, NULL, &TFsFileReplace::DoRequestL , MSG0(EName) | MSG1(EMode)}, sl@0: { EFsFileTemp, EParseSrc, &TFsFileTemp::Initialise, NULL, &TFsFileTemp::DoRequestL , MSG0(EName) | MSG1(EMode) | MSG2(ENewName)}, sl@0: { EFsFileRead, EParseSrc | EFileShare, &TFsFileRead::Initialise, &TFsFileRead::PostInitialise, &TFsFileRead::DoRequestL , MSG0(EData) | MSG1(ELength) | MSG2(EPosition) }, sl@0: { EFsFileWrite, EParseSrc | EFileShare, &TFsFileWrite::Initialise, &TFsFileWrite::PostInitialise, &TFsFileWrite::DoRequestL , MSG0(EData) | MSG1(ELength) | MSG2(EPosition) }, sl@0: { EFsFileLock, EParseSrc | EFileShare, &TFsFileLock::Initialise, NULL, &TFsFileLock::DoRequestL , MSG0(EPosition) | MSG1(ELength)}, sl@0: { EFsFileUnLock, EParseSrc | EFileShare, &TFsFileUnlock::Initialise, NULL, &TFsFileUnlock::DoRequestL , MSG0(EPosition) | MSG1(ELength)}, sl@0: { EFsFileSeek, EParseSrc | EFileShare, &TFsFileSeek::Initialise, NULL, &TFsFileSeek::DoRequestL , MSG0(EPosition) | MSG1(EMode) | MSG2(ENewPosition)}, sl@0: { EFsFileFlush, EParseSrc | EFileShare, &TFsFileFlush::Initialise, NULL, &TFsFileFlush::DoRequestL }, sl@0: { EFsFileSize, EParseSrc | EFileShare, &TFsFileSize::Initialise, NULL, &TFsFileSize::DoRequestL , MSG0(ESize)}, sl@0: { EFsFileSetSize, EParseSrc | EFileShare, &TFsFileSetSize::Initialise, NULL, &TFsFileSetSize::DoRequestL , MSG0(ESize)}, sl@0: { EFsFileAtt, EParseSrc | EFileShare, &TFsFileAtt::Initialise, NULL, &TFsFileAtt::DoRequestL , MSG0(EAtt)}, sl@0: { EFsFileSetAtt, EParseSrc | EFileShare, &TFsFileSetAtt::Initialise, NULL, &TFsFileSetAtt::DoRequestL , MSG0(ESetAtt) | MSG1(EClearAtt)}, sl@0: { EFsFileModified, EParseSrc | EFileShare, &TFsFileModified::Initialise, NULL, &TFsFileModified::DoRequestL , MSG0(ETime)}, sl@0: { EFsFileSetModified, EParseSrc | EFileShare, &TFsFileSetModified::Initialise, NULL, &TFsFileSetModified::DoRequestL , MSG0(ETime)}, sl@0: { EFsFileSet, EParseSrc | EFileShare, &TFsFileSet::Initialise, NULL, &TFsFileSet::DoRequestL , MSG0(ETime) | MSG1(ESetAtt) | MSG2(EClearAtt)}, sl@0: { EFsFileChangeMode, EParseSrc | EFileShare, &TFsFileChangeMode::Initialise, NULL, &TFsFileChangeMode::DoRequestL , MSG0(EMode)}, sl@0: { EFsFileRename, EParseDst | EParseSrc, &TFsFileRename::Initialise, NULL, &TFsFileRename::DoRequestL , MSG0(ENewName)}, sl@0: { EFsDirOpen, EParseSrc, &TFsDirOpen::Initialise, NULL, &TFsDirOpen::DoRequestL , MSG0(EName) | MSG1(EAttMask) | MSG2(EUid)}, sl@0: { EFsDirReadOne, 0, &TFsDirReadOne::Initialise, NULL, &TFsDirReadOne::DoRequestL , MSG0(EEntry)}, sl@0: { EFsDirReadPacked, 0, &TFsDirReadPacked::Initialise, NULL, &TFsDirReadPacked::DoRequestL , MSG0(EEntryArray)}, sl@0: { EFsFormatOpen, EParseSrc, &TFsFormatOpen::Initialise, NULL, &TFsFormatOpen::DoRequestL }, sl@0: { EFsFormatNext, EParseSrc, &TFsFormatNext::Initialise, NULL, &TFsFormatNext::DoRequestL }, sl@0: { EFsRawDiskOpen, 0, &TFsRawDiskOpen::Initialise, NULL, &TFsRawDiskOpen::DoRequestL }, sl@0: { EFsRawDiskRead, EParseSrc, &TFsRawDiskRead::Initialise, NULL, &TFsRawDiskRead::DoRequestL }, sl@0: { EFsRawDiskWrite, EParseSrc, &TFsRawDiskWrite::Initialise, NULL, &TFsRawDiskWrite::DoRequestL }, sl@0: { EFsResourceCountMarkStart, ESync, &TFsResourceCountMarkStart::Initialise, NULL, &TFsResourceCountMarkStart::DoRequestL }, sl@0: { EFsResourceCountMarkEnd, ESync, &TFsResourceCountMarkEnd::Initialise, NULL, &TFsResourceCountMarkEnd::DoRequestL }, sl@0: { EFsResourceCount, ESync, &TFsResourceCount::Initialise, NULL, &TFsResourceCount::DoRequestL }, sl@0: { EFsCheckDisk, EParseSrc, &TFsCheckDisk::Initialise, NULL, &TFsCheckDisk::DoRequestL }, sl@0: { EFsGetShortName, EParseSrc, &TFsGetShortName::Initialise, NULL, &TFsGetShortName::DoRequestL }, sl@0: { EFsGetLongName, EParseSrc, &TFsGetLongName::Initialise, NULL, &TFsGetLongName::DoRequestL }, sl@0: { EFsIsFileOpen, EParseSrc, &TFsIsFileOpen::Initialise, NULL, &TFsIsFileOpen::DoRequestL }, sl@0: { EFsListOpenFiles, ESync, &TFsListOpenFiles::Initialise, NULL, &TFsListOpenFiles::DoRequestL }, sl@0: { EFsGetNotifyUser, ESync, &TFsGetNotifyUser::Initialise, NULL, &TFsGetNotifyUser::DoRequestL }, sl@0: { EFsSetNotifyUser, ESync, &TFsSetNotifyUser::Initialise, NULL, &TFsSetNotifyUser::DoRequestL }, sl@0: { EFsIsFileInRom, EParseSrc, &TFsIsFileInRom::Initialise, NULL, &TFsIsFileInRom::DoRequestL }, sl@0: { EFsIsValidName, ESync, &TFsIsValidName::Initialise, NULL, &TFsIsValidName::DoRequestL }, sl@0: { EFsDebugFunction, ESync, &TFsDebugFunc::Initialise, NULL, &TFsDebugFunc::DoRequestL }, sl@0: { EFsReadFileSection, EParseSrc, &TFsReadFileSection::Initialise, NULL, &TFsReadFileSection::DoRequestL , MSG0(EData) | MSG1(EName) | MSG2(EPosition) | MSG3(ELength)}, sl@0: { EFsNotifyChangeEx, ESync | EParseSrc, &TFsNotifyChangeEx::Initialise, NULL, &TFsNotifyChangeEx::DoRequestL }, sl@0: { EFsNotifyChangeCancelEx, ESync, &TFsNotifyChangeCancelEx::Initialise, NULL, &TFsNotifyChangeCancelEx::DoRequestL }, sl@0: { EFsDismountFileSystem, 0, &TFsDismountFileSystem::Initialise, NULL, &TFsDismountFileSystem::DoRequestL }, sl@0: { EFsFileSystemName, ESync, &TFsFileSystemName::Initialise, NULL, &TFsFileSystemName::DoRequestL }, sl@0: { EFsScanDrive, EParseSrc, &TFsScanDrive::Initialise, NULL, &TFsScanDrive::DoRequestL }, sl@0: { EFsControlIo, 0, &TFsControlIo::Initialise, NULL, &TFsControlIo::DoRequestL }, sl@0: { EFsLockDrive, 0, &TFsLockDrive::Initialise, NULL, &TFsLockDrive::DoRequestL }, sl@0: { EFsUnlockDrive, 0, &TFsUnlockDrive::Initialise, NULL, &TFsUnlockDrive::DoRequestL }, sl@0: { EFsClearPassword, 0, &TFsClearPassword::Initialise, NULL, &TFsClearPassword::DoRequestL }, sl@0: { EFsNotifyDiskSpace, 0, &TFsNotifyDiskSpace::Initialise, NULL, &TFsNotifyDiskSpace::DoRequestL }, sl@0: { EFsNotifyDiskSpaceCancel, ESync, &TFsNotifyDiskSpaceCancel::Initialise, NULL, &TFsNotifyDiskSpaceCancel::DoRequestL }, sl@0: { EFsFileDrive, EParseSrc | EFileShare, &TFsFileDrive::Initialise, NULL, &TFsFileDrive::DoRequestL }, sl@0: { EFsRemountDrive, 0, &TFsRemountDrive::Initialise, NULL, &TFsRemountDrive::DoRequestL }, sl@0: { EFsMountFileSystemScan, 0, &TFsMountFileSystemScan::Initialise, NULL, &TFsMountFileSystemScan::DoRequestL }, sl@0: { EFsSessionToPrivate, ESync, &TFsSessionToPrivate::Initialise, NULL, &TFsSessionToPrivate::DoRequestL }, sl@0: { EFsPrivatePath, ESync, &TFsPrivatePath::Initialise, NULL, &TFsPrivatePath::DoRequestL }, sl@0: { EFsCreatePrivatePath, 0, &TFsCreatePrivatePath::Initialise, NULL, &TFsCreatePrivatePath::DoRequestL }, sl@0: { EFsAddExtension, ESync, &TFsAddExtension::Initialise, NULL, &TFsAddExtension::DoRequestL }, sl@0: { EFsMountExtension, 0, &TFsMountExtension::Initialise, NULL, &TFsMountExtension::DoRequestL }, sl@0: { EFsDismountExtension, 0, &TFsDismountExtension::Initialise, NULL, &TFsDismountExtension::DoRequestL }, sl@0: { EFsRemoveExtension, ESync, &TFsRemoveExtension::Initialise, NULL, &TFsRemoveExtension::DoRequestL }, sl@0: { EFsExtensionName, 0, &TFsExtensionName::Initialise, NULL, &TFsExtensionName::DoRequestL }, sl@0: { EFsStartupInitComplete, ESync, &TFsStartupInitComplete::Initialise, NULL, &TFsStartupInitComplete::DoRequestL }, sl@0: { EFsSetLocalDriveMapping, ESync, &TFsSetLocalDriveMapping::Initialise, NULL, &TFsSetLocalDriveMapping::DoRequestL }, sl@0: { EFsFinaliseDrive, 0, &TFsFinaliseDrive::Initialise, NULL, &TFsFinaliseDrive::DoRequestL }, sl@0: { EFsFileDuplicate, 0 | EFileShare, &TFsFileDuplicate::Initialise, NULL, &TFsFileDuplicate::DoRequestL }, // Not done sl@0: { EFsFileAdopt, ESync, &TFsFileAdopt::Initialise, NULL, &TFsFileAdopt::DoRequestL }, // Not done sl@0: { EFsSwapFileSystem, ESync, &TFsSwapFileSystem::Initialise, NULL, &TFsSwapFileSystem::DoRequestL }, sl@0: { EFsErasePassword, 0, &TFsErasePassword::Initialise, NULL, &TFsErasePassword::DoRequestL }, sl@0: { EFsReserveDriveSpace, 0, &TFsReserveDriveSpace::Initialise, NULL, &TFsReserveDriveSpace::DoRequestL }, sl@0: { EFsGetReserveAccess, ESync, &TFsGetReserveAccess::Initialise, NULL, &TFsGetReserveAccess::DoRequestL }, sl@0: { EFsReleaseReserveAccess, ESync, &TFsReleaseReserveAccess::Initialise, NULL, &TFsReleaseReserveAccess::DoRequestL }, sl@0: { EFsFileName, ESync, &TFsFileName::Initialise, NULL, &TFsFileName::DoRequestL , MSG0(EName)}, sl@0: { EFsGetMediaSerialNumber, 0, &TFsGetMediaSerialNumber::Initialise, NULL, &TFsGetMediaSerialNumber::DoRequestL }, sl@0: { EFsFileFullName, ESync, &TFsFileFullName::Initialise, NULL, &TFsFileFullName::DoRequestL , MSG0(EName)}, // Wasn't in original list? sl@0: { EFsAddPlugin, ESync, &TFsAddPlugin::Initialise, NULL, &TFsAddPlugin::DoRequestL }, sl@0: { EFsRemovePlugin, ESync, &TFsRemovePlugin::Initialise, NULL, &TFsRemovePlugin::DoRequestL }, sl@0: { EFsMountPlugin, ESync, &TFsMountPlugin::Initialise, NULL, &TFsMountPlugin::DoRequestL }, sl@0: { EFsDismountPlugin, 0, &TFsDismountPlugin::Initialise, NULL, &TFsDismountPlugin::DoRequestL }, sl@0: { EFsPluginName, ESync, &TFsPluginName::Initialise, NULL, &TFsPluginName::DoRequestL }, sl@0: { EFsPluginOpen, ESync | EParseSrc, &TFsPluginOpen::Initialise, NULL, &TFsPluginOpen::DoRequestL }, sl@0: { EFsPluginSubClose, ESync, &TFsSubClose::Initialise, NULL, &TFsSubClose::DoRequestL }, sl@0: { EFsPluginDoRequest, 0, &TFsPluginDoRequest::Initialise, NULL, &TFsPluginDoRequest::DoRequestL }, sl@0: { EFsPluginDoControl, 0, &TFsPluginDoControl::Initialise, NULL, &TFsPluginDoControl::DoRequestL }, sl@0: { EFsPluginDoCancel, 0, &TFsPluginDoCancel::Initialise, NULL, &TFsPluginDoCancel::DoRequestL }, sl@0: { EFsNotifyDismount, 0, &TFsNotifyDismount::Initialise, NULL, &TFsNotifyDismount::DoRequestL }, sl@0: { EFsNotifyDismountCancel, ESync, &TFsNotifyDismountCancel::Initialise, NULL, &TFsNotifyDismountCancel::DoRequestL }, sl@0: { EFsAllowDismount, 0, &TFsAllowDismount::Initialise, NULL, &TFsAllowDismount::DoRequestL }, sl@0: { EFsSetStartupConfiguration, ESync, &TFsSetStartupConfiguration::Initialise, NULL, &TFsSetStartupConfiguration::DoRequestL }, sl@0: { EFsFileReadCancel, ESync, &TFsFileReadCancel::Initialise, NULL, &TFsFileReadCancel::DoRequestL }, sl@0: { EFsAddCompositeMount, ESync, &TFsAddCompositeMount::Initialise, NULL, &TFsAddCompositeMount::DoRequestL }, sl@0: { EFsSetSessionFlags, ESync, &TFsSetSessionFlags::Initialise, NULL, &TFsSetSessionFlags::DoRequestL }, sl@0: { EFsSetSystemDrive, ESync, &TFsSetSystemDrive::Initialise, NULL, &TFsSetSystemDrive::DoRequestL }, sl@0: { EFsBlockMap, EParseSrc, &TFsBlockMap::Initialise, NULL, &TFsBlockMap::DoRequestL }, sl@0: { EFsUnclamp, 0, &TFsUnclamp::Initialise, NULL, &TFsUnclamp::DoRequestL }, sl@0: { EFsFileClamp, EParseSrc, &TFsFileClamp::Initialise, NULL, &TFsFileClamp::DoRequestL }, sl@0: { EFsQueryVolumeInfoExt, 0, &TFsQueryVolumeInfoExt::Initialise, NULL, &TFsQueryVolumeInfoExt::DoRequestL }, sl@0: { EFsInitialisePropertiesFile,0, &TFsInitialisePropertiesFile::Initialise, NULL, &TFsInitialisePropertiesFile::DoRequestL }, sl@0: { EFsFileWriteDirty, EFileShare, NULL, &TFsFileWriteDirty::PostInitialise, &TFsFileWrite::DoRequestL }, sl@0: { EFsSynchroniseDriveThread, 0, &TFsSynchroniseDriveThread::Initialise, NULL, &TFsSynchroniseDriveThread::DoRequestL }, sl@0: { EFsAddProxyDrive, ESync, &TFsAddProxyDrive::Initialise, NULL, &TFsAddProxyDrive::DoRequestL }, sl@0: { EFsRemoveProxyDrive, ESync, &TFsRemoveProxyDrive::Initialise, NULL, &TFsRemoveProxyDrive::DoRequestL }, sl@0: { EFsMountProxyDrive, 0, &TFsMountProxyDrive::Initialise, NULL, &TFsMountProxyDrive::DoRequestL }, sl@0: { EFsDismountProxyDrive, 0, &TFsDismountProxyDrive::Initialise, NULL, &TFsDismountProxyDrive::DoRequestL }, sl@0: { EFsNotificationOpen, ESync, &TFsNotificationOpen::Initialise, NULL, &TFsNotificationOpen::DoRequestL }, sl@0: { EFsNotificationBuffer, ESync, &TFsNotificationBuffer::Initialise, NULL, &TFsNotificationBuffer::DoRequestL }, sl@0: { EFsNotificationRequest, ESync, &TFsNotificationRequest::Initialise, NULL, &TFsNotificationRequest::DoRequestL }, sl@0: { EFsNotificationCancel, ESync, &TFsNotificationCancel::Initialise, NULL, &TFsNotificationCancel::DoRequestL }, sl@0: { EFsNotificationSubClose, ESync, &TFsNotificationSubClose::Initialise, NULL, &TFsNotificationSubClose::DoRequestL }, sl@0: { EFsNotificationAdd, ESync, &TFsNotificationAdd::Initialise, NULL, &TFsNotificationAdd::DoRequestL }, sl@0: { EFsNotificationRemove, ESync, &TFsNotificationRemove::Initialise, NULL, &TFsNotificationRemove::DoRequestL }, sl@0: { EFsLoadCodePage, 0, &TFsLoadCodePage::Initialise, NULL, &TFsLoadCodePage::DoRequestL }, sl@0: }; sl@0: sl@0: #endif //SF_OPS_H