VirtualBox

Changeset 7112 in vbox for trunk/include/VBox


Ignore:
Timestamp:
Feb 25, 2008 2:56:30 PM (17 years ago)
Author:
vboxsync
Message:

Removed duplicate docs.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/include/VBox/ssm.h

    r7072 r7112  
    403403
    404404
    405 
    406 /**
    407  * Register a PDM Devices data unit.
    408  *
    409  * @returns VBox status.
    410  * @param   pVM             The VM handle.
    411  * @param   pDevIns         Device instance.
    412  * @param   pszName         Data unit name.
    413  * @param   u32Instance     The instance identifier of the data unit.
    414  *                          This must together with the name be unique.
    415  * @param   u32Version      Data layout version number.
    416  * @param   cbGuess         The approximate amount of data in the unit.
    417  *                          Only for progress indicators.
    418  * @param   pfnSavePrep     Prepare save callback, optional.
    419  * @param   pfnSaveExec     Execute save callback, optional.
    420  * @param   pfnSaveDone     Done save callback, optional.
    421  * @param   pfnLoadPrep     Prepare load callback, optional.
    422  * @param   pfnLoadExec     Execute load callback, optional.
    423  * @param   pfnLoadDone     Done load callback, optional.
    424  */
    425405SSMR3DECL(int) SSMR3Register(PVM pVM, PPDMDEVINS pDevIns, const char *pszName, uint32_t u32Instance, uint32_t u32Version, size_t cbGuess,
    426406    PFNSSMDEVSAVEPREP pfnSavePrep, PFNSSMDEVSAVEEXEC pfnSaveExec, PFNSSMDEVSAVEDONE pfnSaveDone,
    427407    PFNSSMDEVLOADPREP pfnLoadPrep, PFNSSMDEVLOADEXEC pfnLoadExec, PFNSSMDEVLOADDONE pfnLoadDone);
    428 
    429 /**
    430  * Register a PDM driver data unit.
    431  *
    432  * @returns VBox status.
    433  * @param   pVM             The VM handle.
    434  * @param   pDrvIns         Driver instance.
    435  * @param   pszName         Data unit name.
    436  * @param   u32Instance     The instance identifier of the data unit.
    437  *                          This must together with the name be unique.
    438  * @param   u32Version      Data layout version number.
    439  * @param   cbGuess         The approximate amount of data in the unit.
    440  *                          Only for progress indicators.
    441  * @param   pfnSavePrep     Prepare save callback, optional.
    442  * @param   pfnSaveExec     Execute save callback, optional.
    443  * @param   pfnSaveDone     Done save callback, optional.
    444  * @param   pfnLoadPrep     Prepare load callback, optional.
    445  * @param   pfnLoadExec     Execute load callback, optional.
    446  * @param   pfnLoadDone     Done load callback, optional.
    447  */
    448408SSMR3DECL(int) SSMR3RegisterDriver(PVM pVM, PPDMDRVINS pDrvIns, const char *pszName, uint32_t u32Instance, uint32_t u32Version, size_t cbGuess,
    449409    PFNSSMDRVSAVEPREP pfnSavePrep, PFNSSMDRVSAVEEXEC pfnSaveExec, PFNSSMDRVSAVEDONE pfnSaveDone,
    450410    PFNSSMDRVLOADPREP pfnLoadPrep, PFNSSMDRVLOADEXEC pfnLoadExec, PFNSSMDRVLOADDONE pfnLoadDone);
    451 
    452 /**
    453  * Register a internal data unit.
    454  *
    455  * @returns VBox status.
    456  * @param   pVM             The VM handle.
    457  * @param   pszName         Data unit name.
    458  * @param   u32Instance     The instance identifier of the data unit.
    459  *                          This must together with the name be unique.
    460  * @param   u32Version      Data layout version number.
    461  * @param   cbGuess         The approximate amount of data in the unit.
    462  *                          Only for progress indicators.
    463  * @param   pfnSavePrep     Prepare save callback, optional.
    464  * @param   pfnSaveExec     Execute save callback, optional.
    465  * @param   pfnSaveDone     Done save callback, optional.
    466  * @param   pfnLoadPrep     Prepare load callback, optional.
    467  * @param   pfnLoadExec     Execute load callback, optional.
    468  * @param   pfnLoadDone     Done load callback, optional.
    469  */
    470411SSMR3DECL(int) SSMR3RegisterInternal(PVM pVM, const char *pszName, uint32_t u32Instance, uint32_t u32Version, size_t cbGuess,
    471412    PFNSSMINTSAVEPREP pfnSavePrep, PFNSSMINTSAVEEXEC pfnSaveExec, PFNSSMINTSAVEDONE pfnSaveDone,
    472413    PFNSSMINTLOADPREP pfnLoadPrep, PFNSSMINTLOADEXEC pfnLoadExec, PFNSSMINTLOADDONE pfnLoadDone);
    473 
    474 /**
    475  * Register a  unit.
    476  *
    477  * @returns VBox status.
    478  * @param   pVM             The VM handle.
    479  * @param   pszName         Data unit name.
    480  * @param   u32Instance     The instance identifier of the data unit.
    481  *                          This must together with the name be unique.
    482  * @param   u32Version      Data layout version number.
    483  * @param   cbGuess         The approximate amount of data in the unit.
    484  *                          Only for progress indicators.
    485  * @param   pfnSavePrep     Prepare save callback, optional.
    486  * @param   pfnSaveExec     Execute save callback, optional.
    487  * @param   pfnSaveDone     Done save callback, optional.
    488  * @param   pfnLoadPrep     Prepare load callback, optional.
    489  * @param   pfnLoadExec     Execute load callback, optional.
    490  * @param   pfnLoadDone     Done load callback, optional.
    491  * @param   pvUser          User argument.
    492  */
    493414SSMR3DECL(int) SSMR3RegisterExternal(PVM pVM, const char *pszName, uint32_t u32Instance, uint32_t u32Version, size_t cbGuess,
    494415    PFNSSMEXTSAVEPREP pfnSavePrep, PFNSSMEXTSAVEEXEC pfnSaveExec, PFNSSMEXTSAVEDONE pfnSaveDone,
    495416    PFNSSMEXTLOADPREP pfnLoadPrep, PFNSSMEXTLOADEXEC pfnLoadExec, PFNSSMEXTLOADDONE pfnLoadDone, void *pvUser);
    496 
    497 /**
    498  * Deregister one or more PDM Device data units.
    499  *
    500  * @returns VBox status.
    501  * @param   pVM             The VM handle.
    502  * @param   pDevIns         Device instance.
    503  * @param   pszName         Data unit name.
    504  *                          Use NULL to deregister all data units for that device instance.
    505  * @param   u32Instance     The instance identifier of the data unit.
    506  *                          This must together with the name be unique. Ignored if pszName is NULL.
    507  * @remark  Only for dynmaic data units and dynamic unloaded modules.
    508  */
    509417SSMR3DECL(int) SSMR3Deregister(PVM pVM, PPDMDEVINS pDevIns, const char *pszName, uint32_t u32Instance);
    510 
    511 /**
    512  * Deregister one or more PDM Driver data units.
    513  *
    514  * @returns VBox status.
    515  * @param   pVM             The VM handle.
    516  * @param   pDrvIns         Driver instance.
    517  * @param   pszName         Data unit name.
    518  *                          Use NULL to deregister all data units for that driver instance.
    519  * @param   u32Instance     The instance identifier of the data unit.
    520  *                          This must together with the name be unique. Ignored if pszName is NULL.
    521  * @remark  Only for dynmaic data units and dynamic unloaded modules.
    522  */
    523418SSMR3DECL(int) SSMR3DeregisterDriver(PVM pVM, PPDMDRVINS pDrvIns, const char *pszName, uint32_t u32Instance);
    524 
    525 /**
    526  * Deregister a internal data unit.
    527  *
    528  * @returns VBox status.
    529  * @param   pVM             The VM handle.
    530  * @param   pszName         Data unit name.
    531  * @remark  Only for dynmaic data units.
    532  */
    533419SSMR3DECL(int) SSMR3DeregisterInternal(PVM pVM, const char *pszName);
    534 
    535 /**
    536  * Deregister an external data unit.
    537  *
    538  * @returns VBox status.
    539  * @param   pVM             The VM handle.
    540  * @param   pszName         Data unit name.
    541  * @remark  Only for dynmaic data units.
    542  */
    543420SSMR3DECL(int) SSMR3DeregisterExternal(PVM pVM, const char *pszName);
    544 
    545 /**
    546  * Start VM save operation.
    547  *
    548  * The caller must be the emulation thread!
    549  *
    550  * @returns VBox status.
    551  * @param   pVM             The VM handle.
    552  * @param   pszFilename     Name of the file to save the state in.
    553  * @param   enmAfter        What is planned after a successful save operation.
    554  * @param   pfnProgress     Progress callback. Optional.
    555  * @param   pvUser          User argument for the progress callback.
    556  */
    557421SSMR3DECL(int) SSMR3Save(PVM pVM, const char *pszFilename, SSMAFTER enmAfter, PFNVMPROGRESS pfnProgress, void *pvUser);
    558 
    559 /**
    560  * Load VM save operation.
    561  *
    562  * The caller must be the emulation thread!
    563  *
    564  * @returns VBox status.
    565  * @param   pVM             The VM handle.
    566  * @param   pszFilename     Name of the file to save the state in.
    567  * @param   enmAfter        What is planned after a successful load operation.
    568  *                          Only acceptable values are SSMAFTER_RESUME and SSMAFTER_DEBUG_IT.
    569  * @param   pfnProgress     Progress callback. Optional.
    570  * @param   pvUser          User argument for the progress callback.
    571  */
    572422SSMR3DECL(int) SSMR3Load(PVM pVM, const char *pszFilename, SSMAFTER enmAfter, PFNVMPROGRESS pfnProgress, void *pvUser);
    573 
    574 /**
    575  * Validates a file as a validate SSM saved state.
    576  *
    577  * This will only verify the file format, the format and content of individual
    578  * data units are not inspected.
    579  *
    580  * @returns VINF_SUCCESS if valid.
    581  * @returns VBox status code on other failures.
    582  * @param   pszFilename     The path to the file to validate.
    583  */
    584423SSMR3DECL(int) SSMR3ValidateFile(const char *pszFilename);
    585 
    586 /**
    587  * Opens a saved state file for reading.
    588  *
    589  * @returns VBox status code.
    590  * @param   pszFilename     The path to the saved state file.
    591  * @param   fFlags          Open flags. Reserved, must be 0.
    592  * @param   ppSSM           Where to store the SSM handle.
    593  */
    594424SSMR3DECL(int) SSMR3Open(const char *pszFilename, unsigned fFlags, PSSMHANDLE *ppSSM);
    595 
    596 /**
    597  * Closes a saved state file opened by SSMR3Open().
    598  *
    599  * @returns VBox status code.
    600  * @param   pSSM            The SSM handle returned by SSMR3Open().
    601  */
    602425SSMR3DECL(int) SSMR3Close(PSSMHANDLE pSSM);
    603 
    604 /**
    605  * Seeks to a specific data unit.
    606  *
    607  * After seeking it's possible to use the getters to on
    608  * that data unit.
    609  *
    610  * @returns VBox status code.
    611  * @returns VERR_SSM_UNIT_NOT_FOUND if the unit+instance wasn't found.
    612  * @param   pSSM            The SSM handle returned by SSMR3Open().
    613  * @param   pszUnit         The name of the data unit.
    614  * @param   iInstance       The instance number.
    615  * @param   piVersion       Where to store the version number. (Optional)
    616  */
    617426SSMR3DECL(int) SSMR3Seek(PSSMHANDLE pSSM, const char *pszUnit, uint32_t iInstance, uint32_t *piVersion);
     427SSMR3DECL(int) SSMR3HandleGetStatus(PSSMHANDLE pSSM);
     428SSMR3DECL(int) SSMR3HandleSetStatus(PSSMHANDLE pSSM, int iStatus);
     429SSMR3DECL(SSMAFTER) SSMR3HandleGetAfter(PSSMHANDLE pSSM);
    618430
    619431
     
    621433 * @{
    622434 */
    623 
    624 /**
    625  * Puts a structure.
    626  *
    627  * @returns VBox status code.
    628  * @param   pSSM            The saved state handle.
    629  * @param   pvStruct        The structure address.
    630  * @param   paFields        The array of structure fields descriptions.
    631  *                          The array must be terminated by a SSMFIELD_ENTRY_TERM().
    632  */
    633435SSMR3DECL(int) SSMR3PutStruct(PSSMHANDLE pSSM, const void *pvStruct, PCSSMFIELD paFields);
    634 
    635 /**
    636  * Saves a boolean item to the current data unit.
    637  *
    638  * @returns VBox status.
    639  * @param   pSSM            SSM operation handle.
    640  * @param   fBool           Item to save.
    641  */
    642436SSMR3DECL(int) SSMR3PutBool(PSSMHANDLE pSSM, bool fBool);
    643 
    644 /**
    645  * Saves a 8-bit unsigned integer item to the current data unit.
    646  *
    647  * @returns VBox status.
    648  * @param   pSSM            SSM operation handle.
    649  * @param   u8              Item to save.
    650  */
    651437SSMR3DECL(int) SSMR3PutU8(PSSMHANDLE pSSM, uint8_t u8);
    652 
    653 /**
    654  * Saves a 8-bit signed integer item to the current data unit.
    655  *
    656  * @returns VBox status.
    657  * @param   pSSM            SSM operation handle.
    658  * @param   i8              Item to save.
    659  */
    660438SSMR3DECL(int) SSMR3PutS8(PSSMHANDLE pSSM, int8_t i8);
    661 
    662 /**
    663  * Saves a 16-bit unsigned integer item to the current data unit.
    664  *
    665  * @returns VBox status.
    666  * @param   pSSM            SSM operation handle.
    667  * @param   u16             Item to save.
    668  */
    669439SSMR3DECL(int) SSMR3PutU16(PSSMHANDLE pSSM, uint16_t u16);
    670 
    671 /**
    672  * Saves a 16-bit signed integer item to the current data unit.
    673  *
    674  * @returns VBox status.
    675  * @param   pSSM            SSM operation handle.
    676  * @param   i16             Item to save.
    677  */
    678440SSMR3DECL(int) SSMR3PutS16(PSSMHANDLE pSSM, int16_t i16);
    679 
    680 /**
    681  * Saves a 32-bit unsigned integer item to the current data unit.
    682  *
    683  * @returns VBox status.
    684  * @param   pSSM            SSM operation handle.
    685  * @param   u32             Item to save.
    686  */
    687441SSMR3DECL(int) SSMR3PutU32(PSSMHANDLE pSSM, uint32_t u32);
    688 
    689 /**
    690  * Saves a 32-bit signed integer item to the current data unit.
    691  *
    692  * @returns VBox status.
    693  * @param   pSSM            SSM operation handle.
    694  * @param   i32             Item to save.
    695  */
    696442SSMR3DECL(int) SSMR3PutS32(PSSMHANDLE pSSM, int32_t i32);
    697 
    698 /**
    699  * Saves a 64-bit unsigned integer item to the current data unit.
    700  *
    701  * @returns VBox status.
    702  * @param   pSSM            SSM operation handle.
    703  * @param   u64             Item to save.
    704  */
    705443SSMR3DECL(int) SSMR3PutU64(PSSMHANDLE pSSM, uint64_t u64);
    706 
    707 /**
    708  * Saves a 64-bit signed integer item to the current data unit.
    709  *
    710  * @returns VBox status.
    711  * @param   pSSM            SSM operation handle.
    712  * @param   i64             Item to save.
    713  */
    714444SSMR3DECL(int) SSMR3PutS64(PSSMHANDLE pSSM, int64_t i64);
    715 
    716 /**
    717  * Saves a 128-bit unsigned integer item to the current data unit.
    718  *
    719  * @returns VBox status.
    720  * @param   pSSM            SSM operation handle.
    721  * @param   u128            Item to save.
    722  */
    723445SSMR3DECL(int) SSMR3PutU128(PSSMHANDLE pSSM, uint128_t u128);
    724 
    725 /**
    726  * Saves a 128-bit signed integer item to the current data unit.
    727  *
    728  * @returns VBox status.
    729  * @param   pSSM            SSM operation handle.
    730  * @param   i128            Item to save.
    731  */
    732446SSMR3DECL(int) SSMR3PutS128(PSSMHANDLE pSSM, int128_t i128);
    733 
    734 /**
    735  * Saves a VBox unsigned integer item to the current data unit.
    736  *
    737  * @returns VBox status.
    738  * @param   pSSM            SSM operation handle.
    739  * @param   u               Item to save.
    740  */
    741447SSMR3DECL(int) SSMR3PutUInt(PSSMHANDLE pSSM, RTUINT u);
    742 
    743 /**
    744  * Saves a VBox signed integer item to the current data unit.
    745  *
    746  * @returns VBox status.
    747  * @param   pSSM            SSM operation handle.
    748  * @param   i               Item to save.
    749  */
    750448SSMR3DECL(int) SSMR3PutSInt(PSSMHANDLE pSSM, RTINT i);
    751 
    752 /**
    753  * Saves a GC natural unsigned integer item to the current data unit.
    754  *
    755  * @returns VBox status.
    756  * @param   pSSM            SSM operation handle.
    757  * @param   u               Item to save.
    758  */
    759449SSMR3DECL(int) SSMR3PutGCUInt(PSSMHANDLE pSSM, RTGCUINT u);
    760 
    761 /**
    762  * Saves a GC natural signed integer item to the current data unit.
    763  *
    764  * @returns VBox status.
    765  * @param   pSSM            SSM operation handle.
    766  * @param   i               Item to save.
    767  */
    768450SSMR3DECL(int) SSMR3PutGCSInt(PSSMHANDLE pSSM, RTGCINT i);
    769 
    770 /**
    771  * Saves a 32 bits GC physical address item to the current data unit.
    772  *
    773  * @returns VBox status.
    774  * @param   pSSM            SSM operation handle.
    775  * @param   GCPhys          The item to save
    776  */
    777451SSMR3DECL(int) SSMR3PutGCPhys32(PSSMHANDLE pSSM, RTGCPHYS32 GCPhys);
    778 
    779 /**
    780  * Saves a GC physical address item to the current data unit.
    781  *
    782  * @returns VBox status.
    783  * @param   pSSM            SSM operation handle.
    784  * @param   GCPhys          The item to save
    785  */
    786452SSMR3DECL(int) SSMR3PutGCPhys(PSSMHANDLE pSSM, RTGCPHYS GCPhys);
    787 
    788 /**
    789  * Saves a GC virtual address item to the current data unit.
    790  *
    791  * @returns VBox status.
    792  * @param   pSSM            SSM operation handle.
    793  * @param   GCPtr           The item to save.
    794  */
    795453SSMR3DECL(int) SSMR3PutGCPtr(PSSMHANDLE pSSM, RTGCPTR GCPtr);
    796 
    797 /**
    798  * Saves a GC virtual address (represented as an unsigned integer) item to the current data unit.
    799  *
    800  * @returns VBox status.
    801  * @param   pSSM            SSM operation handle.
    802  * @param   GCPtr           The item to save.
    803  */
    804454SSMR3DECL(int) SSMR3PutGCUIntPtr(PSSMHANDLE pSSM, RTGCUINTPTR GCPtr);
    805 
    806 /**
    807  * Saves a HC natural unsigned integer item to the current data unit.
    808  *
    809  * @returns VBox status.
    810  * @param   pSSM            SSM operation handle.
    811  * @param   u               Item to save.
    812  */
    813455SSMR3DECL(int) SSMR3PutHCUInt(PSSMHANDLE pSSM, RTHCUINT u);
    814 
    815 /**
    816  * Saves a HC natural signed integer item to the current data unit.
    817  *
    818  * @returns VBox status.
    819  * @param   pSSM            SSM operation handle.
    820  * @param   i               Item to save.
    821  */
    822456SSMR3DECL(int) SSMR3PutHCSInt(PSSMHANDLE pSSM, RTHCINT i);
    823 
    824 /**
    825  * Saves a I/O port address item to the current data unit.
    826  *
    827  * @returns VBox status.
    828  * @param   pSSM            SSM operation handle.
    829  * @param   IOPort          The item to save.
    830  */
    831457SSMR3DECL(int) SSMR3PutIOPort(PSSMHANDLE pSSM, RTIOPORT IOPort);
    832 
    833 /**
    834  * Saves a selector item to the current data unit.
    835  *
    836  * @returns VBox status.
    837  * @param   pSSM            SSM operation handle.
    838  * @param   Sel             The item to save.
    839  */
    840458SSMR3DECL(int) SSMR3PutSel(PSSMHANDLE pSSM, RTSEL Sel);
    841 
    842 /**
    843  * Saves a memory item to the current data unit.
    844  *
    845  * @returns VBox status.
    846  * @param   pSSM            SSM operation handle.
    847  * @param   pv              Item to save.
    848  * @param   cb              Size of the item.
    849  */
    850459SSMR3DECL(int) SSMR3PutMem(PSSMHANDLE pSSM, const void *pv, size_t cb);
    851 
    852 /**
    853  * Saves a zero terminated string item to the current data unit.
    854  *
    855  * @returns VBox status.
    856  * @param   pSSM            SSM operation handle.
    857  * @param   psz             Item to save.
    858  */
    859460SSMR3DECL(int) SSMR3PutStrZ(PSSMHANDLE pSSM, const char *psz);
    860 
    861461/** @} */
    862462
     
    866466 * @{
    867467 */
    868 
    869 /**
    870  * Gets a structure.
    871  *
    872  * @returns VBox status code.
    873  * @param   pSSM            The saved state handle.
    874  * @param   pvStruct        The structure address.
    875  * @param   paFields        The array of structure fields descriptions.
    876  *                          The array must be terminated by a SSMFIELD_ENTRY_TERM().
    877  */
    878468SSMR3DECL(int) SSMR3GetStruct(PSSMHANDLE pSSM, void *pvStruct, PCSSMFIELD paFields);
    879 
    880 /**
    881  * Loads a boolean item from the current data unit.
    882  *
    883  * @returns VBox status.
    884  * @param   pSSM            SSM operation handle.
    885  * @param   pfBool          Where to store the item.
    886  */
    887469SSMR3DECL(int) SSMR3GetBool(PSSMHANDLE pSSM, bool *pfBool);
    888 
    889 /**
    890  * Loads a 8-bit unsigned integer item from the current data unit.
    891  *
    892  * @returns VBox status.
    893  * @param   pSSM            SSM operation handle.
    894  * @param   pu8             Where to store the item.
    895  */
    896470SSMR3DECL(int) SSMR3GetU8(PSSMHANDLE pSSM, uint8_t *pu8);
    897 
    898 /**
    899  * Loads a 8-bit signed integer item from the current data unit.
    900  *
    901  * @returns VBox status.
    902  * @param   pSSM            SSM operation handle.
    903  * @param   pi8             Where to store the item.
    904  */
    905471SSMR3DECL(int) SSMR3GetS8(PSSMHANDLE pSSM, int8_t *pi8);
    906 
    907 /**
    908  * Loads a 16-bit unsigned integer item from the current data unit.
    909  *
    910  * @returns VBox status.
    911  * @param   pSSM            SSM operation handle.
    912  * @param   pu16            Where to store the item.
    913  */
    914472SSMR3DECL(int) SSMR3GetU16(PSSMHANDLE pSSM, uint16_t *pu16);
    915 
    916 /**
    917  * Loads a 16-bit signed integer item from the current data unit.
    918  *
    919  * @returns VBox status.
    920  * @param   pSSM            SSM operation handle.
    921  * @param   pi16            Where to store the item.
    922  */
    923473SSMR3DECL(int) SSMR3GetS16(PSSMHANDLE pSSM, int16_t *pi16);
    924 
    925 /**
    926  * Loads a 32-bit unsigned integer item from the current data unit.
    927  *
    928  * @returns VBox status.
    929  * @param   pSSM            SSM operation handle.
    930  * @param   pu32            Where to store the item.
    931  */
    932474SSMR3DECL(int) SSMR3GetU32(PSSMHANDLE pSSM, uint32_t *pu32);
    933 
    934 /**
    935  * Loads a 32-bit signed integer item from the current data unit.
    936  *
    937  * @returns VBox status.
    938  * @param   pSSM            SSM operation handle.
    939  * @param   pi32            Where to store the item.
    940  */
    941475SSMR3DECL(int) SSMR3GetS32(PSSMHANDLE pSSM, int32_t *pi32);
    942 
    943 /**
    944  * Loads a 64-bit unsigned integer item from the current data unit.
    945  *
    946  * @returns VBox status.
    947  * @param   pSSM            SSM operation handle.
    948  * @param   pu64            Where to store the item.
    949  */
    950476SSMR3DECL(int) SSMR3GetU64(PSSMHANDLE pSSM, uint64_t *pu64);
    951 
    952 /**
    953  * Loads a 64-bit signed integer item from the current data unit.
    954  *
    955  * @returns VBox status.
    956  * @param   pSSM            SSM operation handle.
    957  * @param   pi64            Where to store the item.
    958  */
    959477SSMR3DECL(int) SSMR3GetS64(PSSMHANDLE pSSM, int64_t *pi64);
    960 
    961 /**
    962  * Loads a 128-bit unsigned integer item from the current data unit.
    963  *
    964  * @returns VBox status.
    965  * @param   pSSM            SSM operation handle.
    966  * @param   pu128           Where to store the item.
    967  */
    968478SSMR3DECL(int) SSMR3GetU128(PSSMHANDLE pSSM, uint128_t *pu128);
    969 
    970 /**
    971  * Loads a 128-bit signed integer item from the current data unit.
    972  *
    973  * @returns VBox status.
    974  * @param   pSSM            SSM operation handle.
    975  * @param   pi128           Where to store the item.
    976  */
    977479SSMR3DECL(int) SSMR3GetS128(PSSMHANDLE pSSM, int128_t *pi128);
    978 
    979 /**
    980  * Loads a VBox unsigned integer item from the current data unit.
    981  *
    982  * @returns VBox status.
    983  * @param   pSSM            SSM operation handle.
    984  * @param   pu              Where to store the integer.
    985  */
    986480SSMR3DECL(int) SSMR3GetUInt(PSSMHANDLE pSSM, PRTUINT pu);
    987 
    988 /**
    989  * Loads a VBox signed integer item from the current data unit.
    990  *
    991  * @returns VBox status.
    992  * @param   pSSM            SSM operation handle.
    993  * @param   pi              Where to store the integer.
    994  */
    995481SSMR3DECL(int) SSMR3GetSInt(PSSMHANDLE pSSM, PRTINT pi);
    996 
    997 /**
    998  * Loads a GC natural unsigned integer item from the current data unit.
    999  *
    1000  * @returns VBox status.
    1001  * @param   pSSM            SSM operation handle.
    1002  * @param   pu              Where to store the integer.
    1003  */
    1004482SSMR3DECL(int) SSMR3GetGCUInt(PSSMHANDLE pSSM, PRTGCUINT pu);
    1005 
    1006 /**
    1007  * Loads a GC natural signed integer item from the current data unit.
    1008  *
    1009  * @returns VBox status.
    1010  * @param   pSSM            SSM operation handle.
    1011  * @param   pi              Where to store the integer.
    1012  */
    1013483SSMR3DECL(int) SSMR3GetGCSInt(PSSMHANDLE pSSM, PRTGCINT pi);
    1014 
    1015 /**
    1016  * Loads a GC physical address item from the current data unit.
    1017  *
    1018  * @returns VBox status.
    1019  * @param   pSSM            SSM operation handle.
    1020  * @param   pGCPhys         Where to store the GC physical address.
    1021  */
    1022484SSMR3DECL(int) SSMR3GetGCPhys32(PSSMHANDLE pSSM, PRTGCPHYS32 pGCPhys);
    1023 
    1024 /**
    1025  * Loads a GC physical address item from the current data unit.
    1026  *
    1027  * @returns VBox status.
    1028  * @param   pSSM            SSM operation handle.
    1029  * @param   pGCPhys         Where to store the GC physical address.
    1030  */
    1031485SSMR3DECL(int) SSMR3GetGCPhys(PSSMHANDLE pSSM, PRTGCPHYS pGCPhys);
    1032 
    1033 /**
    1034  * Loads a GC virtual address item from the current data unit.
    1035  *
    1036  * @returns VBox status.
    1037  * @param   pSSM            SSM operation handle.
    1038  * @param   pGCPtr          Where to store the GC virtual address.
    1039  */
    1040486SSMR3DECL(int) SSMR3GetGCPtr(PSSMHANDLE pSSM, PRTGCPTR pGCPtr);
    1041 
    1042 /**
    1043  * Loads a GC virtual address (represented as unsigned integer) item from the current data unit.
    1044  *
    1045  * @returns VBox status.
    1046  * @param   pSSM            SSM operation handle.
    1047  * @param   pGCPtr          Where to store the GC virtual address.
    1048  */
    1049487SSMR3DECL(int) SSMR3GetGCUIntPtr(PSSMHANDLE pSSM, PRTGCUINTPTR pGCPtr);
    1050 
    1051 /**
    1052  * Loads a I/O port address item from the current data unit.
    1053  *
    1054  * @returns VBox status.
    1055  * @param   pSSM            SSM operation handle.
    1056  * @param   pIOPort         Where to store the I/O port address.
    1057  */
    1058488SSMR3DECL(int) SSMR3GetIOPort(PSSMHANDLE pSSM, PRTIOPORT pIOPort);
    1059 
    1060 /**
    1061  * Loads a HC natural unsigned integer item from the current data unit.
    1062  *
    1063  * @returns VBox status.
    1064  * @param   pSSM            SSM operation handle.
    1065  * @param   pu              Where to store the integer.
    1066  */
    1067489SSMR3DECL(int) SSMR3GetHCUInt(PSSMHANDLE pSSM, PRTHCUINT pu);
    1068 
    1069 /**
    1070  * Loads a HC natural signed integer item from the current data unit.
    1071  *
    1072  * @returns VBox status.
    1073  * @param   pSSM            SSM operation handle.
    1074  * @param   pi              Where to store the integer.
    1075  */
    1076490SSMR3DECL(int) SSMR3GetHCSInt(PSSMHANDLE pSSM, PRTHCINT pi);
    1077 
    1078 /**
    1079  * Loads a selector item from the current data unit.
    1080  *
    1081  * @returns VBox status.
    1082  * @param   pSSM            SSM operation handle.
    1083  * @param   pSel            Where to store the selector.
    1084  */
    1085491SSMR3DECL(int) SSMR3GetSel(PSSMHANDLE pSSM, PRTSEL pSel);
    1086 
    1087 /**
    1088  * Loads a memory item from the current data unit.
    1089  *
    1090  * @returns VBox status.
    1091  * @param   pSSM            SSM operation handle.
    1092  * @param   pv              Where to store the item.
    1093  * @param   cb              Size of the item.
    1094  */
    1095492SSMR3DECL(int) SSMR3GetMem(PSSMHANDLE pSSM, void *pv, size_t cb);
    1096 
    1097 /**
    1098  * Loads a string item from the current data unit.
    1099  *
    1100  * @returns VBox status.
    1101  * @param   pSSM            SSM operation handle.
    1102  * @param   psz             Where to store the item.
    1103  * @param   cbMax           Max size of the item (including '\\0').
    1104  */
    1105493SSMR3DECL(int) SSMR3GetStrZ(PSSMHANDLE pSSM, char *psz, size_t cbMax);
    1106 
    1107 /**
    1108  * Loads a string item from the current data unit.
    1109  *
    1110  * @returns VBox status.
    1111  * @param   pSSM            SSM operation handle.
    1112  * @param   psz             Where to store the item.
    1113  * @param   cbMax           Max size of the item (including '\\0').
    1114  * @param   pcbStr          The length of the loaded string excluding the '\\0'. (optional)
    1115  */
    1116494SSMR3DECL(int) SSMR3GetStrZEx(PSSMHANDLE pSSM, char *psz, size_t cbMax, size_t *pcbStr);
    1117 
    1118 /**
    1119  * Loads a timer item from the current data unit.
    1120  *
    1121  * @returns VBox status.
    1122  * @param   pSSM            SSM operation handle.
    1123  * @param   PTMTIMER        Where to store the item.
    1124  */
    1125495SSMR3DECL(int) SSMR3GetTimer(PSSMHANDLE pSSM, PTMTIMER pTimer);
    1126496
    1127497/** @} */
    1128498
    1129 
    1130 
    1131 /**
    1132  * Query what the VBox status code of the operation is.
    1133  *
    1134  * This can be used for putting and getting a batch of values
    1135  * without bother checking the result till all the calls have
    1136  * been made.
    1137  *
    1138  * @returns VBox status code.
    1139  * @param   pSSM            SSM operation handle.
    1140  */
    1141 SSMR3DECL(int) SSMR3HandleGetStatus(PSSMHANDLE pSSM);
    1142 
    1143 /**
    1144  * Fail the load operation.
    1145  *
    1146  * This is mainly intended for sub item loaders (like timers) which
    1147  * return code isn't necessarily heeded by the caller but is important
    1148  * to SSM.
    1149  *
    1150  * @returns SSMAFTER enum value.
    1151  * @param   pSSM            SSM operation handle.
    1152  * @param   iStatus         Failure status code. This MUST be a VERR_*.
    1153  */
    1154 SSMR3DECL(int) SSMR3HandleSetStatus(PSSMHANDLE pSSM, int iStatus);
    1155 
    1156 /**
    1157  * Query what to do after this operation.
    1158  *
    1159  * @returns SSMAFTER enum value.
    1160  * @param   pSSM            SSM operation handle.
    1161  */
    1162 SSMR3DECL(SSMAFTER) SSMR3HandleGetAfter(PSSMHANDLE pSSM);
    1163 
    1164499/** @} */
    1165500#endif /* IN_RING3 */
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette