Changeset 15290 in vbox for trunk/src/VBox/Main/idl
- Timestamp:
- Dec 11, 2008 8:08:13 AM (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Main/idl/VirtualBox.xidl
r15283 r15290 371 371 > 372 372 <desc> 373 Virtual machine execution state. 374 375 This enumeration represents possible values of the <link 376 to="IMachine::state"/> attribute. 377 378 Below is the basic virtual machine state diagram. It shows how the state 379 changes during virtual machine execution. The text in square braces shows 380 a method of the IConsole interface that performs the given state 381 transition. 382 383 <pre> 384 +---------[powerDown()] <- Stuck <--[failure]-+ 385 V | 386 +-> PoweredOff --+-->[powerUp()]--> Starting --+ | +-----[resume()]-----+ 387 | | | | V | 388 | Aborted -----+ +--> Running --[pause()]--> Paused 389 | | ^ | ^ | 390 | Saved -----------[powerUp()]--> Restoring -+ | | | | 391 | ^ | | | | 392 | | +-----------------------------------------+-|-------------------+ + 393 | | | | | 394 | | +-- Saving <--------[takeSnapshot()]<-------+---------------------+ 395 | | | | 396 | +-------- Saving <--------[saveState()]<----------+---------------------+ 397 | | | 398 +-------------- Stopping -------[powerDown()]<----------+---------------------+ 399 </pre> 400 401 Note that states to the left from PoweredOff, Aborted and Saved in the 402 above diagram are called <i>online VM states</i>. These states 403 represent the virtual machine which is being executed in a dedicated 404 process (usually with a GUI window attached to it where you can see the 405 activity of the virtual machine and interact with it). There are two 406 special pseudo-states, FirstOnline and LastOnline, that can be used in 407 relational expressions to detect if the given machine state is online or 408 not: 409 410 <pre> 411 if (machine.GetState() >= MachineState_FirstOnline && 412 machine.GetState() <= MachineState_LastOnline) 413 { 414 ...the machine is being executed... 415 } 416 </pre> 417 418 When the virtual machine is on one of the online VM states (that is, being 419 executed), only a few machine settings can be modified. Methods working 420 with such settings contain an explicit note about that. An attempt to 421 change any oter setting or perform a modifying operation during this time 422 will result in the <link to="VBOX_E_INVALID_VM_STATE"/> error. 423 424 All online states except Running, Paused and Stuck are transitional: they 425 represent temporary conditions of the virtual machine that will last as 426 long as the operation that initiated such a condition. 427 428 The Stuck state is a special case. It means that execution of the machine 429 has reached the "Guru Meditation" condition. This condition indicates an 430 internal VMM (virtual machine manager) failure which may happen as a 431 result of either an unhandled low-level virtual hardware exception or one 432 of the recompiler exceptions (such as the <i>too-many-traps</i> 433 condition). 434 435 Note also that any online VM state may transit to the Aborted state. This 436 happens if the process that is executing the virtual machine terminates 437 unexpectedly (for example, crashes). Other than that, the Aborted state is 438 equivalent to PoweredOff. 439 440 There are also a few additional state diagrams that do not deal with 441 virtual machine execution and therefore are shown separately. The states 442 shown on these diagrams are called <i>offline VM states</i> (this includes 443 PoweredOff, Aborted and Saved too). 444 445 The first diagram shows what happens when a lengthy setup operation is 446 being executed (such as <link to="IMachine::attachHardDisk2()"/>). 447 448 <pre> 449 +-----------------------------------(same sate as before the call)------+ 450 | | 451 +-> PoweredOff --+ | 452 | | | 453 |-> Aborted -----+-->[lengthy VM configuration call] --> SettingUp -----+ 454 | | 455 +-> Saved -------+ 456 </pre> 457 458 The next two diagrams demonstrate the process of taking a snapshot of a 459 powered off virtual machine and performing one of the "discard..." 460 operations, respectively. 461 462 <pre> 463 +-----------------------------------(same sate as before the call)------+ 464 | | 465 +-> PoweredOff --+ | 466 | +-->[takeSnapshot()] -------------------> Saving ------+ 467 +-> Aborted -----+ 468 469 +-> PoweredOff --+ 470 | | 471 | Aborted -----+-->[discardSnapshot() ]-------------> Discarding --+ 472 | | [discardCurrentState()] | 473 +-> Saved -------+ [discardCurrentSnapshotAndState()] | 474 | | 475 +---(Saved if restored from an online snapshot, PoweredOff otherwise)---+ 476 </pre> 477 478 Note that the Saving state is present in both the offline state group and 479 online state group. Currently, the only way to determine what group is 480 assumed in a particular case is to remember the previous machine state: if 481 it was Running or Paused, then Saving is an online state, otherwise it is 482 an offline state. This inconsistency may be removed in one of the future 483 versions of VirtualBox by adding a new state. 373 Virtual machine execution state. This enumeration represents possible 374 values of the <link to="IMachine::state"/> attribute. 484 375 </desc> 485 376 486 377 <const name="Null" value="0"> 487 <desc> Null value (nver used by the API).</desc>378 <desc><tt>null</tt> value. Never used by the API.</desc> 488 379 </const> 489 380 <const name="PoweredOff" value="1"> … … 494 385 <const name="Saved" value="2"> 495 386 <desc> 496 The machine is not currently running, but the execution state of the machine 497 has been saved to an external file when it was running. 387 The machine is not currently running, but the execution state 388 of the machine has been saved to an external file when it 389 was running. 390 <note> 391 Only a few machine settings can be altered when the machine 392 is in this state. 393 </note> 498 394 </desc> 499 395 </const> 500 396 <const name="Aborted" value="3"> 501 397 <desc> 502 The process running the machine has terminated abnormally. 398 A process running the machine has terminated abnormally. 399 Other than that, this value is equivalent to #PoweredOff. 503 400 </desc> 504 401 </const> … … 506 403 <desc> 507 404 The machine is currently being executed. 405 <note> 406 This value can be used in relational expressions: 407 all state values less than Running describe a virtual machine that is 408 not currently being executed (i.e., it is completely out of 409 action). 410 </note> 508 411 <note internal="yes"> 509 412 For whoever decides to touch this enum: In order to keep the 510 comparisons in the source codevalid, this state must immediately413 aforementioned comparisons valid, this state must immediately 511 414 precede the Paused state. 512 415 </note> … … 516 419 <desc> 517 420 Execution of the machine has been paused. 421 <note> 422 This value can be used in relational expressions: all state values 423 greater than Paused represent unstable states of the running virtual 424 machine. Unless explicitly stated otherwise, no machine settings can 425 be altered when it is in one of the unstable states. 426 </note> 518 427 <note internal="yes"> 519 428 For whoever decides to touch this enum: In order to keep the 520 comparisons in the source codevalid, this state must immediately429 aforementioned comparisons valid, this state must immediately 521 430 follow the Running state. 522 431 </note> … … 526 435 <desc> 527 436 Execution of the machine has reached the "Guru Meditation" 528 condition. 437 condition. This condition indicates an internal VMM failure which may 438 happen as a result of either an unhandled low-level virtual hardware 439 exception or one of the recompiler exceptions (such as 440 the <i>too-many-traps</i> condition). 529 441 </desc> 530 442 </const> 531 443 <const name="Starting" value="7"> 532 444 <desc> 533 Machine is being started after powering it on from a 445 Machine is being started after 446 <link to="IConsole::powerUp">powering it on</link> from a 534 447 zero execution state. 535 448 </desc> … … 537 450 <const name="Stopping" value="8"> 538 451 <desc> 539 Machine is being normally stopped powering it off, or after the guest OS 540 has initiated a shutdown sequence. 452 Machine is being normally stopped 453 (after explicitly <link to="IConsole::powerDown">powering it off</link>, 454 or after the guest OS has initiated a shutdown sequence). 541 455 </desc> 542 456 </const> 543 457 <const name="Saving" value="9"> 544 458 <desc> 545 Machine is saving its execution state to a file or an online 546 snapshot of the machine is being taken. 459 Machine is saving its execution state to a file as a 460 result of calling <link to="IConsole::saveState"/> or an online 461 snapshot of the machine is being taken using 462 <link to="IConsole::takeSnapshot"/>. 547 463 </desc> 548 464 </const> … … 550 466 <desc> 551 467 Execution state of the machine is being restored from a file 552 after powering it on from the saved execution state. 468 after <link to="IConsole::powerUp">powering it on</link> from 469 a saved execution state. 553 470 </desc> 554 471 </const> 555 472 <const name="Discarding" value="11"> 556 473 <desc> 557 Snapshot of the machine is being discarded. 474 Snapshot of the machine is being discarded after calling 475 <link to="IConsole::discardSnapshot"/> or its current state is 476 being discarded after <link to="IConsole::discardCurrentState"/>. 558 477 </desc> 559 478 </const> 560 479 <const name="SettingUp" value="12"> 561 480 <desc> 562 Lengthy setup operation is in progress. 481 Lengthy setup operation is in progress (e.g. 482 <link to="IMachine::attachHardDisk2"/>). 563 483 </desc> 564 484 </const> 565 566 <const name="FirstOnline" value="4" wsmap="suppress"> <!-- Running -->567 <desc>568 Pseudo-state: first online state (for use in relational expressions).569 <note internal="yes">570 For whoever decides to touch this enum: In order to keep the571 comparisons involving FirstOnline and LastOnline pseudo-states valid,572 the numeric values of these states must be correspondingly updated if573 needed: for any online VM state, the condition574 <tt>FirstOnline <= state <= LastOnline</tt> must be575 <tt>true</tt>.576 </note>577 </desc>578 </const>579 <const name="LastOnline" value="10" wsmap="suppress"> <!-- Restoring -->580 <desc>581 Pseudo-state: last online state (for use in relational expressions).582 <note internal="yes">583 For whoever decides to touch this enum: In order to keep the584 comparisons involving FirstOnline and LastOnline pseudo-states valid,585 the numeric values of these states must be correspondingly updated if586 needed: for any online VM state, the condition587 <tt>FirstOnline <= state <= LastOnline</tt> must be588 <tt>true</tt>.589 </note>590 </desc>591 </const>592 593 485 </enum> 594 486 … … 600 492 Session state. This enumeration represents possible values of 601 493 <link to="IMachine::sessionState"/> and <link to="ISession::state"/> 602 attributes. See individual enumerator descriptions for the meaning for603 every value.494 attributes. Individual value descriptions contain the appropriate 495 meaning for every case. 604 496 </desc> 605 497 606 498 <const name="Null" value="0"> 607 <desc> Null value (never used by the API).</desc>499 <desc><tt>null</tt> value. Never used by the API.</desc> 608 500 </const> 609 501 <const name="Closed" value="1"> … … 647 539 648 540 <const name="Null" value="0"> 649 <desc> Null value (never used by the API).</desc>541 <desc><tt>null</tt> value. Never used by the API.</desc> 650 542 </const> 651 543 <const name="Direct" value="1"> … … 678 570 <const name="Null" value="0"> 679 571 <desc> 680 Null value, may also mean "no device" (not allowed for 681 <link to="IConsole::getDeviceActivity"/>). 572 <tt>null</tt> value which may also mean "no device". 573 <note> 574 This value is not allowed for 575 <link to="IConsole::getDeviceActivity"/> 576 </note> 682 577 </desc> 683 578 </const> … … 723 618 724 619 <const name="Null" value="0"> 725 <desc> Null value (never used by the API).</desc>620 <desc><tt>null</tt> value. Never used by the API.</desc> 726 621 </const> 727 622 … … 878 773 879 774 <const name="Null" value="0"> 880 <desc> Null value (never used by the API).</desc>775 <desc><tt>null</tt> value. Never used by the API.</desc> 881 776 </const> 882 777 <const name="PIIX3" value="1"/> … … 889 784 > 890 785 <const name="Null" value="0"> 891 <desc> Null value (never used by the API).</desc>786 <desc><tt>null</tt> value. Never used by the API.</desc> 892 787 </const> 893 788 <const name="NotMounted" value="1"/> … … 1110 1005 1111 1006 <ul> 1112 <li><link to="DeviceType _HardDisk"/>: the media is a hard disk1007 <li><link to="DeviceType::HardDisk"/>: the media is a hard disk 1113 1008 that, if registered, can be obtained using the 1114 1009 <link to="IVirtualBox::getHardDisk2()"/> call.</li> 1115 <li><link to="DeviceType _DVD"/>: the media is a CD/DVD image1010 <li><link to="DeviceType::DVD"/>: the media is a CD/DVD image 1116 1011 that, if registered, can be obtained using the 1117 1012 <link to="IVirtualBox::getDVDImage()"/> call.</li> 1118 <li><link to="DeviceType _Floppy"/>: the media is a Floppy image1013 <li><link to="DeviceType::Floppy"/>: the media is a Floppy image 1119 1014 that, if registered, can be obtained using the 1120 1015 <link to="IVirtualBox::getFloppyImage()"/> call.</li> … … 1740 1635 </ul> 1741 1636 1742 Some hard disk attributes, such as <link to=" IHardDisk2::id"/>, may1743 remain uninitialized until the hard disk storage unit is successfully1744 createdby one of the above methods.1637 Some hard disk attributes, such as <link to="#id"/>, may remain 1638 uninitialized until the hard disk storage unit is successfully created 1639 by one of the above methods. 1745 1640 1746 1641 After the storage unit is successfully created, the hard disk gets … … 3567 3462 <desc> 3568 3463 Full path to the file that stores the execution state of 3569 the machine when it is in the <link to="MachineState_Saved"/> state. 3464 the machine when it is in the <link to="MachineState::Saved"/> 3465 state. 3570 3466 <note> 3571 3467 When the machine is not in the Saved state, this attribute … … 3671 3567 3672 3568 To indicate that no device is associated with the given position, 3673 <link to="DeviceType _Null"/> should be used.3569 <link to="DeviceType::Null"/> should be used. 3674 3570 3675 3571 @todo setHardDiskBootOrder(), setNetworkBootOrder() … … 3708 3604 3709 3605 If here are no devices at the given position, then 3710 <link to="DeviceType _Null"/> is returned.3606 <link to="DeviceType::Null"/> is returned. 3711 3607 3712 3608 @todo getHardDiskBootOrder(), getNetworkBootOrder() … … 4733 4629 The @a scope argument defines one of three scopes: 4734 4630 <link to="IVirtualBox::sharedFolders">global shared folders</link> 4735 (<link to="Scope _Global">Global</link>),4631 (<link to="Scope::Global">Global</link>), 4736 4632 <link to="IMachine::sharedFolders">permanent shared folders</link> of 4737 the machine (<link to="Scope _Machine">Machine</link>) or <link4633 the machine (<link to="Scope::Machine">Machine</link>) or <link 4738 4634 to="IConsole::sharedFolders">transient shared folders</link> of the 4739 machine (<link to="Scope _Session">Session</link>). Interested callees4635 machine (<link to="Scope::Session">Session</link>). Interested callees 4740 4636 should use query the corresponding collections to find out what has 4741 4637 changed. … … 5128 5024 powered on). 5129 5025 5130 If the machine is in the <link to="MachineState _Saved"/> state,5026 If the machine is in the <link to="MachineState::Saved"/> state, 5131 5027 it will continue its execution the point where the state has 5132 5028 been saved. … … 5163 5059 <desc> 5164 5060 Identical to powerUp except that the VM will enter the 5165 <link to="MachineState _Paused"/> state, instead of5166 <link to="MachineState _Running"/>.5061 <link to="MachineState::Paused"/> state, instead of 5062 <link to="MachineState::Running"/>. 5167 5063 5168 5064 <see>#powerUp</see> … … 5402 5298 5403 5299 The device needs to be in one of the following states: 5404 <link to="USBDeviceState _Busy"/>,5405 <link to="USBDeviceState _Available"/> or5406 <link to="USBDeviceState _Held"/>,5300 <link to="USBDeviceState::Busy">Busy</link>, 5301 <link to="USBDeviceState::Available">Available</link> or 5302 <link to="USBDeviceState::Held">Held</link>, 5407 5303 otherwise an error is immediately returned. 5408 5304 5409 5305 When the device state is 5410 <link to="USBDeviceState _Busy">Busy</link>, an error may also5306 <link to="USBDeviceState::Busy">Busy</link>, an error may also 5411 5307 be returned if the host computer refuses to release it for some reason. 5412 5308 … … 5560 5456 5561 5457 You cannot discard the snapshot if it 5562 stores <link to="HardDiskType _Normal">normal</link> (non-differencing)5458 stores <link to="HardDiskType::Normal">normal</link> (non-differencing) 5563 5459 hard disks that have differencing hard disks based on them. Snapshots of 5564 5460 such kind can be discarded only when every normal hard disk has either … … 5585 5481 5586 5482 The virtual machine is put to 5587 the <link to="MachineState _Discarding">Discarding</link> state until5483 the <link to="MachineState::Discarding">Discarding</link> state until 5588 5484 the discard operation is completed. 5589 5485 … … 5636 5532 5637 5533 If the current snapshot of the machine is an online snapshot, the 5638 machine will go to the <link to="MachineState _Saved"> saved5534 machine will go to the <link to="MachineState::Saved"> saved 5639 5535 state</link>, so that the next time it is powered on, the execution 5640 5536 state will be restored from the current snapshot. … … 5645 5541 5646 5542 <note> 5647 If the machine state is <link to="MachineState _Saved">Saved</link>5543 If the machine state is <link to="MachineState::Saved">Saved</link> 5648 5544 prior to this operation, the saved state file will be implicitly 5649 5545 discarded (as if <link to="IConsole::discardSavedState()"/> were … … 5691 5587 5692 5588 <note> 5693 If the machine state is <link to="MachineState _Saved">Saved</link>5589 If the machine state is <link to="MachineState::Saved">Saved</link> 5694 5590 prior to this operation, the saved state file will be implicitly 5695 5591 discarded (as if <link to="#discardSavedState()"/> were … … 6461 6357 6462 6358 The list of supported hard disk formats may be obtained by the 6463 <link to="# hardDiskFormats"/> call. Note that the default hard disk6464 format must have a capability to create differencing hard disks;6465 otherwise opeartions that create hard disks implicitly may fail6359 <link to="#defaultHardDiskFormats"/> call. Note that the default 6360 hard disk format must have a capability to create differencing hard 6361 disks; otherwise opeartions that create hard disks implicitly may fail 6466 6362 unexpectedly. 6467 6363 … … 6476 6372 <see> 6477 6373 <link to="#hardDiskFormats"/>, 6478 <link to="IHardDiskFormat: :id"/>,6374 <link to="IHardDiskFormat:id"/>, 6479 6375 <link to="IVirtualBox::createHardDisk2()"/> 6480 6376 </see> … … 6993 6889 The current machine state also includes the current execution state. 6994 6890 If the machine is being currently executed 6995 (<link to="IMachine::state"/> is <link to="MachineState _Running"/>6891 (<link to="IMachine::state"/> is <link to="MachineState::Running"/> 6996 6892 and above), its execution state is just what's happening now. 6997 If it is powered off (<link to="MachineState _PoweredOff"/> or6998 <link to="MachineState _Aborted"/>), it has a zero execution state.6999 If the machine is saved (<link to="MachineState _Saved"/>), its6893 If it is powered off (<link to="MachineState::PoweredOff"/> or 6894 <link to="MachineState::Aborted"/>), it has a zero execution state. 6895 If the machine is saved (<link to="MachineState::Saved"/>), its 7000 6896 execution state is what saved in the execution state file 7001 6897 (<link to="IMachine::stateFilePath"/>). … … 7243 7139 The given medium (with the created storage unit) is considered to be 7244 7140 <i>accessible</i> when its storage unit can be successfully read from. 7245 Accessible media are indicated by the <link to="MediaState _Created"/>7141 Accessible media are indicated by the <link to="MediaState::Created"/> 7246 7142 value of the <link to="#state"/> attribute. When the storage unit cannot 7247 7143 be read (for example, because it is located on a disconnected network 7248 7144 resource, or was accidentally deleted outside VirtualBox), the medium is 7249 7145 considered to be <i>inaccessible</i> which is indicated by the 7250 <link to="MediaState _Inaccessible"/> state. The details about the reason7146 <link to="MediaState::Inaccessible"/> state. The details about the reason 7251 7147 of being inaccessible can be obtained using the 7252 7148 <link to="#lastAccessError"/> attribute. … … 7261 7157 Note that when VirtualBox starts up (e.g. the VirtualBox object gets 7262 7158 created for the first time), all known media are in the 7263 <link to="MediaState _Inaccessible"/> state but the value of the <link7159 <link to="MediaState::Inaccessible"/> state but the value of the <link 7264 7160 to="#lastAccessError"/> attribute is <tt>null</tt> because no actual 7265 7161 accessibility check is made on startup. This is done to make the … … 7275 7171 7276 7172 <note> 7277 For media in one of MediaState _NotCreated, MediaState_Creating or7278 MediaState _Deleting states, the value of this property is undefined7173 For media in one of MediaState::NotCreated, MediaState::Creating or 7174 MediaState::Deleting states, the value of this property is undefined 7279 7175 and will most likely be an empty UUID. 7280 7176 </note> … … 7293 7189 For some storage types, reading this attribute may return an outdated 7294 7190 (last known) value when <link to="#state"/> is <link 7295 to="MediaState _Inaccessible"/> or <link7296 to="MediaState _LockedWrite"/> because the value of this attribute is7191 to="MediaState::Inaccessible"/> or <link 7192 to="MediaState::LockedWrite"/> because the value of this attribute is 7297 7193 stored within the storage unit itself. Also note that changing the 7298 7194 attribute value is not possible in such case, as well as when the 7299 medium is the <link to="MediaState _LockedRead"/> state.7195 medium is the <link to="MediaState::LockedRead"/> state. 7300 7196 </note> 7301 7197 </desc> … … 7314 7210 operation expires. 7315 7211 7316 If the last known state of the medium is <link to="MediaState _Created"/>7212 If the last known state of the medium is <link to="MediaState::Created"/> 7317 7213 and the accessibility check fails then the state would be set to 7318 <link to="MediaState _Inaccessible"/> and <link to="#lastAccessError"/>7214 <link to="MediaState::Inaccessible"/> and <link to="#lastAccessError"/> 7319 7215 may be used to get more details about the failure. If the state of the 7320 medium is <link to="MediaState _LockedRead"/> or7321 <link to="MediaState _LockedWrite"/> then it remains the same, and a7216 medium is <link to="MediaState::LockedRead"/> or 7217 <link to="MediaState::LockedWrite"/> then it remains the same, and a 7322 7218 non-null value of <link to="#lastAccessError"/> will indicate a failed 7323 7219 accessibility check in this case. 7324 7220 7325 7221 Note that not all media states are applicable to certain media types. 7326 For example, states <link to="MediaState _NotCreated"/>,7327 <link to="MediaState _LockedWrite"/>, <link to="MediaState_Creating"/>,7328 <link to="MediaState _Deleting"/> are meaningless for IDVDImage2 and7222 For example, states <link to="MediaState::NotCreated"/>, 7223 <link to="MediaState::LockedWrite"/>, <link to="MediaState::Creating"/>, 7224 <link to="MediaState::Deleting"/> are meaningless for IDVDImage2 and 7329 7225 IFloppyImage2 media. 7330 7226 </desc> … … 7379 7275 <note> 7380 7276 For media whose <link to="#state"/> is <link 7381 to="MediaState _Inaccessible"/>, the value of this property is the7382 last known size. For <link to="MediaState _NotCreated"/> media,7277 to="MediaState::Inaccessible"/>, the value of this property is the 7278 last known size. For <link to="MediaState::NotCreated"/> media, 7383 7279 the returned value is zero. 7384 7280 </note> … … 7469 7365 7470 7366 This method sets the media state to <link 7471 to="MediaState _LockedRead"/> on success. The state prior to7472 this call must be <link to="MediaState _Created"/>, <link7473 to="MediaState _Inaccessible"/> or <link7474 to="MediaState _LockedRead"/>. As you can see, inaccessible7367 to="MediaState::LockedRead"/> on success. The state prior to 7368 this call must be <link to="MediaState::Created"/>, <link 7369 to="MediaState::Inaccessible"/> or <link 7370 to="MediaState::LockedRead"/>. As you can see, inaccessible 7475 7371 media can be locked too. This is not an error; this method 7476 7372 performs a logical lock that prevents modifications of this … … 7541 7437 7542 7438 This method sets the media state to <link 7543 to="MediaState _LockedWrite"/> on success. The state prior to7544 this call must be <link to="MediaState _Created"/> or <link7545 to="MediaState _Inaccessible"/>. As you can see, inaccessible7439 to="MediaState::LockedWrite"/> on success. The state prior to 7440 this call must be <link to="MediaState::Created"/> or <link 7441 to="MediaState::Inaccessible"/>. As you can see, inaccessible 7546 7442 media can be locked too. This is not an error; this method 7547 7443 performs a logical lock that prevents modifications of this … … 7713 7609 7714 7610 There are three types of hard disks: 7715 <link to="HardDiskType _Normal">Normal</link>,7716 <link to="HardDiskType _Immutable">Immutable</link> and7717 <link to="HardDiskType _Writethrough">Writethrough</link>. The type of the7611 <link to="HardDiskType::Normal">Normal</link>, 7612 <link to="HardDiskType::Immutable">Immutable</link> and 7613 <link to="HardDiskType::Writethrough">Writethrough</link>. The type of the 7718 7614 hard disk defines how the hard disk is attached to a virtual machine and 7719 7615 what happens when a <link to="ISnapshot">snapshot</link> of the virtual … … 7745 7641 7746 7642 Note that the type of all differencing hard disks is 7747 <link to="HardDiskType _Normal">Normal</link>; all other values are7643 <link to="HardDiskType::Normal">Normal</link>; all other values are 7748 7644 meaningless for them. Base hard disks may be of any type. 7749 7645 … … 7782 7678 there is a possibility to cause VirtualBox to compose a unique value for 7783 7679 the file name part of the location using the UUID of the hard disk. This 7784 applies only to hard disks in <link to="MediaState _NotCreated"/> state,7680 applies only to hard disks in <link to="MediaState::NotCreated"/> state, 7785 7681 e.g. before the storage unit is created, and works as follows. You set the 7786 7682 value of the <link to="IMedium::location"/> attribute to a location … … 8003 7899 </li> 8004 7900 <li>As long as the hard disk has children, its type cannot be set 8005 to <link to="HardDiskType _Writethrough"/>.7901 to <link to="HardDiskType::Writethrough"/>. 8006 7902 </li> 8007 7903 <li>The type of all differencing hard disks is 8008 <link to="HardDiskType _Normal"/> and cannot be changed.7904 <link to="HardDiskType::Normal"/> and cannot be changed. 8009 7905 </li> 8010 7906 </ul> 8011 7907 8012 7908 The type of a newly created or opened hard disk is set to 8013 <link to="HardDiskType _Normal"/>.7909 <link to="HardDiskType::Normal"/>. 8014 7910 </desc> 8015 7911 </attribute> … … 8063 7959 disk for that. See the interface description for more information. 8064 7960 8065 Note that all <link to="HardDiskType _Immutable">Immutable</link> hard7961 Note that all <link to="HardDiskType::Immutable">Immutable</link> hard 8066 7962 disks are always read-only while all 8067 <link to="HardDiskType _Writethrough">Writethrough</link> hard disks are7963 <link to="HardDiskType::Writethrough">Writethrough</link> hard disks are 8068 7964 always not. 8069 7965 … … 8090 7986 <note> 8091 7987 For hard disks whose state is <link to="#state"/> is <link 8092 to="MediaState _Inaccessible"/>, the value of this property is the8093 last known logical size. For <link to="MediaState _NotCreated"/> hard7988 to="MediaState::Inaccessible"/>, the value of this property is the 7989 last known logical size. For <link to="MediaState::NotCreated"/> hard 8094 7990 disks, the returned value is zero. 8095 7991 </note> … … 8226 8122 8227 8123 Before the operation starts, the hard disk is placed in 8228 <link to="MediaState _Creating"/> state. If the create operation8229 fails, the media will be placed back in <link to="MediaState _NotCreated"/>8124 <link to="MediaState::Creating"/> state. If the create operation 8125 fails, the media will be placed back in <link to="MediaState::NotCreated"/> 8230 8126 state. 8231 8127 8232 8128 After the returned progress object reports that the operation has 8233 8129 successfully completed, the media state will be set to <link 8234 to="MediaState _Created"/>, the hard disk will be remembered by this8130 to="MediaState::Created"/>, the hard disk will be remembered by this 8235 8131 VirtualBox installation and may be attached to virtual machines. 8236 8132 … … 8256 8152 8257 8153 Before the operation starts, the hard disk is placed to 8258 <link to="MediaState _Creating"/> state. If the create operation8259 fails, the media will placed back to <link to="MediaState _NotCreated"/>8154 <link to="MediaState::Creating"/> state. If the create operation 8155 fails, the media will placed back to <link to="MediaState::NotCreated"/> 8260 8156 state. 8261 8157 8262 8158 After the returned progress object reports that the operation is 8263 8159 successfully complete, the media state will be set to <link 8264 to="MediaState _Created"/>, the hard disk will be remembered by this8160 to="MediaState::Created"/>, the hard disk will be remembered by this 8265 8161 VirtualBox installation and may be attached to virtual machines. 8266 8162 … … 8287 8183 is already in progress, or if the hard disk is being in use (locked for 8288 8184 read or for write) or inaccessible. Therefore, the only valid state for 8289 this operation to succeed is <link to="MediaState _Created"/>.8185 this operation to succeed is <link to="MediaState::Created"/>. 8290 8186 8291 8187 Before the operation starts, the hard disk is placed to 8292 <link to="MediaState _Deleting"/> state and gets removed from the list8188 <link to="MediaState::Deleting"/> state and gets removed from the list 8293 8189 of remembered hard disks (media registry). If the delete operation 8294 8190 fails, the media will be remembered again and placed back to 8295 <link to="MediaState _Created"/> state.8191 <link to="MediaState::Created"/> state. 8296 8192 8297 8193 After the returned progress object reports that the operation is 8298 8194 complete, the media state will be set to 8299 <link to="MediaState _NotCreated"/> and you will be able to use one of8195 <link to="MediaState::NotCreated"/> and you will be able to use one of 8300 8196 the storage creation methods to create it again. 8301 8197 … … 8330 8226 argument. 8331 8227 8332 The target hard disk must be in <link to="MediaState _NotCreated"/>8228 The target hard disk must be in <link to="MediaState::NotCreated"/> 8333 8229 state (i.e. must not have an existing storage unit). Upon successful 8334 8230 completion, this operation will set the type of the target hard disk to 8335 <link to="HardDiskType _Normal"/> and create a storage unit necessary to8231 <link to="HardDiskType::Normal"/> and create a storage unit necessary to 8336 8232 represent the differencing hard disk data in the given format (according 8337 8233 to the storage format of the target object). … … 8342 8238 8343 8239 <note> 8344 The hard disk will be set to <link to="MediaState _LockedRead"/>8240 The hard disk will be set to <link to="MediaState::LockedRead"/> 8345 8241 state for the duration of this operation. 8346 8242 </note> … … 8404 8300 <li> 8405 8301 Neither the source hard disk nor the target hard disk is an 8406 <link to="HardDiskType _Immutable"/> hard disk.8302 <link to="HardDiskType::Immutable"/> hard disk. 8407 8303 </li> 8408 8304 <li> … … 8417 8313 <li> 8418 8314 None of the involved hard disks are in 8419 <link to="MediaState _LockedRead"/> or8420 <link to="MediaState _LockedWrite"/> state.8315 <link to="MediaState::LockedRead"/> or 8316 <link to="MediaState::LockedWrite"/> state. 8421 8317 </li> 8422 8318 </ul> … … 8424 8320 <note> 8425 8321 This (source) hard disk and all intermediates will be placed to <link 8426 to="MediaState _Deleting"/> state and the target hard disk will be8427 placed to <link to="MediaState _LockedWrite"/> state and for the8322 to="MediaState::Deleting"/> state and the target hard disk will be 8323 placed to <link to="MediaState::LockedWrite"/> state and for the 8428 8324 duration of this operation. 8429 8325 </note> … … 8444 8340 location defined by the @a target argument. 8445 8341 8446 The target hard disk must be in <link to="MediaState _NotCreated"/>8342 The target hard disk must be in <link to="MediaState::NotCreated"/> 8447 8343 state (i.e. must not have an existing storage unit). Upon successful 8448 8344 completion, the cloned hard disk will contain exactly the same sector … … 8459 8355 </note> 8460 8356 <note> 8461 This hard disk will be placed to <link to="MediaState _LockedRead"/>8357 This hard disk will be placed to <link to="MediaState::LockedRead"/> 8462 8358 state for the duration of this operation. 8463 8359 </note> … … 8492 8388 <note> 8493 8389 This hard disk and all its parent hard disks will be placed to <link 8494 to="MediaState _LockedRead"/> state for the duration of this8390 to="MediaState::LockedRead"/> state for the duration of this 8495 8391 operation. 8496 8392 </note> … … 8580 8476 <const name="File" value="0x40"> 8581 8477 <desc> 8582 The format backend operates on files (the <link to="IMedium::location"/>8478 The format backend operates on files. The <link to="IMedium::location"/> 8583 8479 attribute of the hard disk specifies a file used to store hard disk 8584 data ; for a list of supported file extensions see8585 <link to="IHardDiskFormat::fileExtensions"/> ).8480 data. For a list of supported file extensions see 8481 <link to="IHardDiskFormat::fileExtensions"/>. 8586 8482 </desc> 8587 8483 </const> … … 8590 8486 <desc> 8591 8487 The format backend uses the property interface to configure the storage 8592 location and properties (the <link to="IHardDiskFormat::describeProperties"/>8488 location and properties. The <link to="IHardDiskFormat::describeProperties"/> 8593 8489 method is used to get access to properties supported by the given hard 8594 disk format ).8490 disk format. 8595 8491 </desc> 8596 8492 </const> … … 8674 8570 8675 8571 The returned arrays are not empty only if the 8676 <link to="HardDiskFormatCapabilities _Properties"/> flag is set.8572 <link to="HardDiskFormatCapabilities::Properties"/> flag is set. 8677 8573 8678 8574 <see>DataType</see> … … 9051 8947 <const name="Opaque" value="0xFFFFFFFF"> 9052 8948 <desc> 9053 Unknown buffer format (the user may not assume any particular format of9054 the buffer).8949 Unknown buffer format. The user may not assume any particular 8950 format of the buffer. 9055 8951 </desc> 9056 8952 </const> 9057 8953 <const name="FOURCC_RGB" value="0x32424752"> 9058 8954 <desc> 9059 Basic RGB format (<link to="IFramebuffer::bitsPerPixel"/> determines the9060 bit layout).8955 Basic RGB format. <link to="IFramebuffer::bitsPerPixel"/> determines 8956 the bit layout. 9061 8957 </desc> 9062 8958 </const> … … 9083 8979 <desc> 9084 8980 Color depth, in bits per pixel. When <link to="#pixelFormat"/> is <link 9085 to="FramebufferPixelFormat _FOURCC_RGB">FOURCC_RGB</link>, valid values8981 to="FramebufferPixelFormat::FOURCC_RGB">FOURCC_RGB</link>, valid values 9086 8982 are: 8, 15, 16, 24 and 32. 9087 8983 </desc> … … 9091 8987 <desc> 9092 8988 Scan line size, in bytes. When <link to="#pixelFormat"/> is <link 9093 to="FramebufferPixelFormat _FOURCC_RGB">FOURCC_RGB</link>, the8989 to="FramebufferPixelFormat::FOURCC_RGB">FOURCC_RGB</link>, the 9094 8990 size of the scan line must be aligned to 32 bits. 9095 8991 </desc> … … 9102 8998 <note> 9103 8999 This attribute must never return <link 9104 to=" FramebufferPixelFormat_Opaque"/> -- the format of the buffer9000 to="PixelFormat::Opaque"/> -- the format of the buffer 9105 9001 <link to="#address"/> points to must be always known. 9106 9002 </note> … … 9209 9105 The @a pixelFormat parameter defines whether the direct mode is 9210 9106 available or not. If @a pixelFormat is <link 9211 to=" FramebufferPixelFormat_Opaque"/> then direct access to the guest9107 to="PixelFormat::Opaque"/> then direct access to the guest 9212 9108 VRAM buffer is not available -- the @a VRAM, @a bitsPerPixel and @a 9213 9109 bytesPerLine parameters must be ignored and the implementation must use … … 9250 9146 value must always correlate with <link to="#pixelFormat"/>. Note that 9251 9147 the <link to="#pixelFormat"/> attribute must never return <link 9252 to=" FramebufferPixelFormat_Opaque"/> regardless of the selected mode.9148 to="PixelFormat::Opaque"/> regardless of the selected mode. 9253 9149 9254 9150 <note> … … 9629 9525 9630 9526 <const name="Null" value="0"> 9631 <desc> Null value, also means "not attached".</desc>9527 <desc><tt>null</tt> value. Also means "not attached".</desc> 9632 9528 </const> 9633 9529 <const name="NAT" value="1"/> … … 9645 9541 9646 9542 <const name="Null" value="0"> 9647 <desc> Null value (never used by the API).</desc>9543 <desc><tt>null</tt> value. Never used by the API.</desc> 9648 9544 </const> 9649 9545 <const name="Am79C970A" value="1"/> … … 9888 9784 Flag whether this serial port acts as a server (creates a new pipe on 9889 9785 the host) or as a client (uses the existing pipe). This attribute is 9890 used only when <link to="#hostMode"/> is PortMode _HostPipe.9786 used only when <link to="#hostMode"/> is PortMode::HostPipe. 9891 9787 </desc> 9892 9788 </attribute> … … 9895 9791 <desc> 9896 9792 Path to the serial port's pipe on the host when <link to="#hostMode"/> is 9897 PortMode _HostPipe, or the host serial device name when9898 <link to="#hostMode"/> is PortMode _HostDevice. In either of the above9793 PortMode::HostPipe, or the host serial device name when 9794 <link to="#hostMode"/> is PortMode::HostDevice. In either of the above 9899 9795 cases, setting a @c null or an empty string as the attribute's value 9900 9796 will result into an error. Otherwise, the value of this property is … … 10132 10028 They are run against a list of all currently available USB 10133 10029 devices (in states 10134 <link to="USBDeviceState _Available"/>,10135 <link to="USBDeviceState _Busy"/>,10136 <link to="USBDeviceState _Held"/>) that were not previously10030 <link to="USBDeviceState::Available">Available</link>, 10031 <link to="USBDeviceState::Busy">Busy</link>, 10032 <link to="USBDeviceState::Held">Held</link>) that were not previously 10137 10033 ignored by global filters. 10138 10034 … … 10553 10449 Once a supported USB device is attached to the host, global USB 10554 10450 filters (<link to="IHost::USBDeviceFilters"/>) are activated. They can 10555 either ignore the device, or put it to USBDeviceState_Held state, or do10556 nothing. Unless the device is ignored by global filters, filters of all10557 currently running guests (<link to="IUSBController::deviceFilters"/>) are10558 activated that can put it to USBDeviceState_Captured state.10451 either ignore the device, or put it to #Held state, or do nothing. Unless 10452 the device is ignored by global filters, filters of all currently running 10453 guests (<link to="IUSBController::deviceFilters"/>) are activated that can 10454 put it to #Captured state. 10559 10455 10560 10456 If the device was ignored by global filters, or didn't match 10561 10457 any filters at all (including guest ones), it is handled by the host 10562 10458 in a normal way. In this case, the device state is determined by 10563 the host and can be one of USBDeviceState_Unavailable, USBDeviceState_Busy10564 or USBDeviceState_Available, depending onthe current device usage.10459 the host and can be one of #Unavailable, #Busy or #Available, depending on 10460 the current device usage. 10565 10461 10566 10462 Besides auto-capturing based on filters, the device can be manually 10567 10463 captured by guests (<link to="IConsole::attachUSBDevice()"/>) if its 10568 state is USBDeviceState_Busy, USBDeviceState_Available or 10569 USBDeviceState_Held. 10464 state is #Busy, #Available or #Held. 10570 10465 10571 10466 <note> 10572 10467 Due to differences in USB stack implementations in Linux and Win32, 10573 states USBDeviceState_Busy and USBDeviceState_vailable are applicable10574 only to the Linux version ofthe product. This also means that (<link10575 to="IConsole::attachUSBDevice()"/>) can only succeed on Win32 if the10576 device state is USBDeviceState_Held.10468 states #Busy and #Available are applicable only to the Linux version of 10469 the product. This also means that (<link 10470 to="IConsole::attachUSBDevice()"/>) can only succeed on Win32 if 10471 the device state is #Held. 10577 10472 </note> 10578 10473 … … 10598 10493 <const name="Available" value="3"> 10599 10494 <desc> 10600 Not used by the host computer, available to guests (the host computer10601 can also start using the device at any time).10495 Not used by the host computer, available to guests. 10496 The host computer can also start using the device at any time. 10602 10497 </desc> 10603 10498 </const> … … 10709 10604 10710 10605 <const name="Null" value="0"> 10711 <desc> Null value (never used by the API).</desc>10606 <desc><tt>null</tt> value. Never used by the API.</desc> 10712 10607 </const> 10713 10608 <const name="Ignore" value="1"> … … 10777 10672 10778 10673 <const name="Null" value="0"> 10779 <desc> Null value, also means "dummy audio driver".</desc>10674 <desc><tt>null</tt> value. Also means "dummy audio driver".</desc> 10780 10675 </const> 10781 10676 <const name="WinMM" value="1"/> … … 10845 10740 10846 10741 <const name="Null" value="0"> 10847 <desc> Null value, also means "no authentication".</desc>10742 <desc><tt>null</tt> value. Also means "no authentication".</desc> 10848 10743 </const> 10849 10744 <const name="External" value="1"/> … … 11320 11215 <desc> 11321 11216 Type of this session. The value of this attribute is valid only 11322 if the session is currently open (i.e. its #state is 11323 SessionType_SessionOpen),otherwise an error will be returned.11217 if the session is currently open (i.e. its #state is SessionType::SessionOpen), 11218 otherwise an error will be returned. 11324 11219 </desc> 11325 11220 </attribute> … … 11349 11244 <link to="IVirtualBox::openSession()"/> is not explicitly closed 11350 11245 when the application terminates, the state of the machine will 11351 be set to <link to="MachineState _Aborted" /> on the server.11246 be set to <link to="MachineState::Aborted" /> on the server. 11352 11247 11353 11248 Generally, it is recommended to close all open sessions explicitly
Note:
See TracChangeset
for help on using the changeset viewer.