Lines Matching refs:partition

69 	BPartition*	partition;
79 : partition(NULL),
90 BPartition* partition;
137 // associated shadow partition, i.e. those that shall be deleted.
138 // 2) Generate uninitialize jobs for all partition whose initialization
190 DiskDeviceJobGenerator::_GenerateCleanupJobs(BPartition* partition)
193 // all descendants of a partition to be uninitialized or removed.
194 if (BMutablePartition* shadow = _GetMutablePartition(partition)) {
196 && partition->fPartitionData->content_type) {
197 // partition changes initialization
198 status_t error = _GenerateUninitializeJob(partition);
203 for (int32 i = 0; BPartition* child = partition->_ChildAt(i); i++) {
209 } else if (BPartition* parent = partition->Parent()) {
211 status_t error = _GenerateDeleteChildJob(parent, partition);
221 DiskDeviceJobGenerator::_GeneratePlacementJobs(BPartition* partition)
223 if (BMutablePartition* shadow = _GetMutablePartition(partition)) {
227 && (shadow->Size() != partition->Size()
228 || shadow->Offset() != partition->Offset())) {
232 if (shadow->Size() > partition->Size()) {
234 status_t error = _GenerateResizeJob(partition);
240 status_t error = _GenerateChildPlacementJobs(partition);
244 if (shadow->Size() < partition->Size()) {
246 status_t error = _GenerateResizeJob(partition);
258 DiskDeviceJobGenerator::_GenerateChildPlacementJobs(BPartition* partition)
260 BMutablePartition* shadow = _GetMutablePartition(partition);
262 // nothing to do, if the partition contains no partitioning system or
274 for (int32 i = 0; BPartition* child = partition->_ChildAt(i); i++) {
279 info.partition = child;
316 // check OK -- the partition wouldn't be moved before
318 status_t error = _GenerateMoveJob(info.partition);
335 // check OK -- the partition wouldn't be moved before
337 status_t error = _GenerateMoveJob(info.partition);
348 // terminate, if no partition could be moved
355 for (int32 i = 0; BPartition* child = partition->_ChildAt(i); i++) {
372 BPartition* partition)
374 user_partition_data* partitionData = partition->fPartitionData;
377 = partition->fDelegate->MutablePartition()->ChangeFlags();
379 // create the partition, if not existing yet
384 status_t error = _GenerateCreateChildJob(parent, partition);
388 // partition already exists: set non-content properties
392 || compare_string(partition->Name(), partitionData->name)) {
396 status_t error = _GenerateSetNameJob(parent, partition);
403 || compare_string(partition->Type(), partitionData->type)) {
407 status_t error = _GenerateSetTypeJob(parent, partition);
414 || compare_string(partition->Parameters(),
419 status_t error = _GenerateSetParametersJob(parent, partition);
425 if (partition->ContentType()) {
426 // initialize the partition, if required
428 status_t error = _GenerateInitializeJob(partition);
432 // partition not (re-)initialized, set content properties
436 || compare_string(partition->ContentName(),
438 status_t error = _GenerateSetContentNameJob(partition);
445 || compare_string(partition->ContentParameters(),
447 status_t error = _GenerateSetContentParametersJob(partition);
454 status_t error = _GenerateDefragmentJob(partition);
463 status_t error = _GenerateRepairJob(partition, repair);
471 for (int32 i = 0; BPartition* child = partition->ChildAt(i); i++) {
472 status_t error = _GenerateRemainingJobs(partition, child);
483 DiskDeviceJobGenerator::_GetMutablePartition(BPartition* partition)
485 if (!partition)
488 return partition->fDelegate
489 ? partition->fDelegate->MutablePartition() : NULL;
495 DiskDeviceJobGenerator::_GenerateInitializeJob(BPartition* partition)
498 status_t error = _GetPartitionReference(partition, reference);
506 error = job->Init(partition->ContentType(),
507 partition->ContentName(), partition->ContentParameters());
519 DiskDeviceJobGenerator::_GenerateUninitializeJob(BPartition* partition)
522 status_t error = _GetPartitionReference(partition, reference);
532 DiskDeviceJobGenerator::_GenerateSetContentNameJob(BPartition* partition)
535 status_t error = _GetPartitionReference(partition, reference);
543 error = job->Init(partition->ContentName(),
556 DiskDeviceJobGenerator::_GenerateSetContentParametersJob(BPartition* partition)
559 status_t error = _GetPartitionReference(partition, reference);
567 error = job->Init(partition->ContentParameters(),
580 DiskDeviceJobGenerator::_GenerateDefragmentJob(BPartition* partition)
583 status_t error = _GetPartitionReference(partition, reference);
593 DiskDeviceJobGenerator::_GenerateRepairJob(BPartition* partition, bool repair)
596 status_t error = _GetPartitionReference(partition, reference);
607 BPartition* partition)
615 error = _GetPartitionReference(partition, reference);
624 error = job->Init(partition->Offset(), partition->Size(), partition->Type(),
625 partition->Name(), partition->Parameters());
638 BPartition* partition)
646 error = _GetPartitionReference(partition, reference);
656 DiskDeviceJobGenerator::_GenerateResizeJob(BPartition* partition)
658 BPartition* parent = partition->Parent();
668 error = _GetPartitionReference(partition, reference);
673 partition->Size(), partition->ContentSize()));
679 DiskDeviceJobGenerator::_GenerateMoveJob(BPartition* partition)
681 BPartition* parent = partition->Parent();
691 error = _GetPartitionReference(partition, reference);
697 error = _CollectContentsToMove(partition);
706 error = job->Init(partition->Offset(), fContentsToMove,
720 BPartition* partition)
728 error = _GetPartitionReference(partition, reference);
736 error = job->Init(partition->Name(), B_DISK_DEVICE_JOB_SET_NAME);
749 BPartition* partition)
757 error = _GetPartitionReference(partition, reference);
765 error = job->Init(partition->Type(), B_DISK_DEVICE_JOB_SET_TYPE);
778 BPartition* partition)
786 error = _GetPartitionReference(partition, reference);
794 error = job->Init(partition->Parameters(),
807 DiskDeviceJobGenerator::_CollectContentsToMove(BPartition* partition)
809 BMutablePartition* shadow = _GetMutablePartition(partition);
813 // if the partition has contents, push its ID
816 status_t error = _PushContentsToMove(partition);
822 for (int32 i = 0; BPartition* child = partition->ChildAt(i); i++) {
833 DiskDeviceJobGenerator::_PushContentsToMove(BPartition* partition)
839 status_t error = _GetPartitionReference(partition, reference);
851 DiskDeviceJobGenerator::_GetPartitionReference(BPartition* partition,
854 if (!partition)
860 if (info.partition == partition) {
865 if (info.partition == NULL) {
866 // create partition reference
871 // set partition ID and change counter
872 user_partition_data* partitionData = partition->fPartitionData;
878 info.partition = partition;