00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015 #ifndef TOISTORAGEDEVICE_IDL
00016 #define TOISTORAGEDEVICE_IDL
00017
00018 #include "TToiInvalidArgumentException.idl"
00019 #include "TToiNotEnoughResourcesException.idl"
00020 #include "TToiUnhandledValueException.idl"
00021 #include "ToiApplicationService.idl"
00022 #include "ToiOperationManager.idl"
00023 #include "TToiInvalidPreconditionException.idl"
00024 #include "TToiOperationNotSupportedException.idl"
00025
00026 interface ToiStorageDeviceStorageInfo;
00027
00028 interface ToiStorageDevicePartitionInfo;
00029
00035 interface ToiStorageDevice {
00036
00038 typedef unsigned long TToiStorageDeviceId;
00039
00041 typedef unsigned long TToiPartitionId;
00042
00044 typedef sequence < TToiPartitionId > TToiPartitionIdSequence;
00045
00048
00049 typedef long TToiFileSystemStatus;
00052
00058
00059 const TToiFileSystemStatus FS_STATUS_OK = 0;
00060
00068
00069 const TToiFileSystemStatus FS_STATUS_ERRORS_CORRECTED = 1;
00070
00079
00080 const TToiFileSystemStatus FS_STATUS_ERRORS_LEFT_UNCORRECTED = 2;
00081
00091
00092 const TToiFileSystemStatus FS_STATUS_MAJOR_FAILURE = 3;
00093
00095
00099
00100 typedef long TToiPartitionFeature;
00103
00110
00111 const TToiPartitionFeature PARTITION_FEATURE_DVR = 0x1;
00112
00119
00120 const TToiPartitionFeature PARTITION_FEATURE_TIMESHIFT = 0x2;
00121
00128
00129 const TToiPartitionFeature PARTITION_FEATURE_ACCESS_USER_CONTENT = 0x4;
00130
00132
00134 typedef TToiFileSystemStatus TFileSystemStatus;
00135
00142
00143 ToiStorageDeviceStorageInfo getStorageInfo();
00144
00159
00160 ToiStorageDevicePartitionInfo getPartitionInfo(in TToiPartitionId partitionId)
00161 raises (TToiInvalidArgumentException, TToiInvalidPreconditionException);
00162
00180 void mountPartition(in ToiOperationManager::TToiOperationId operationId,
00181 in TToiPartitionId partitionId,
00182 in string mountPoint)
00183 raises (TToiInvalidArgumentException, TToiInvalidPreconditionException);
00184
00200 void unmountPartition(in ToiOperationManager::TToiOperationId operationId,
00201 in TToiPartitionId partitionId)
00202 raises (TToiInvalidArgumentException, TToiInvalidPreconditionException);
00203
00225 void setEnabledFeatures(in TToiPartitionId partitionId,
00226 in long features)
00227 raises (TToiInvalidArgumentException, TToiInvalidPreconditionException, TToiOperationNotSupportedException);
00228
00245 void reformat(in ToiOperationManager::TToiOperationId operationId)
00246 raises (TToiInvalidArgumentException, TToiInvalidPreconditionException, TToiOperationNotSupportedException);
00247
00261 void scheduleReformatOnNextReboot(in TToiPartitionId partitionId)
00262 raises (TToiOperationNotSupportedException, TToiInvalidArgumentException);
00263
00277 void scheduleFileSystemRepairOnNextReboot(in TToiPartitionId partitionId)
00278 raises (TToiOperationNotSupportedException, TToiInvalidArgumentException);
00279
00289 void spinDown()
00290 raises (TToiInvalidPreconditionException);
00291
00300 void spinUp()
00301 raises (TToiInvalidPreconditionException);
00302
00303 };
00304
00305 #endif