Changeset 9400 for trunk/src/ole32/storage32.h
- Timestamp:
- Nov 12, 2002, 6:07:48 PM (23 years ago)
- File:
-
- 1 edited
-
trunk/src/ole32/storage32.h (modified) (25 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/ole32/storage32.h
r8441 r9400 7 7 * 8 8 * This include file contains definitions of types and function 9 * prototypes that are used in the many files implementing the 9 * prototypes that are used in the many files implementing the 10 10 * storage functionality 11 11 * … … 43 43 static const ULONG OFFSET_ROOTSTARTBLOCK = 0x00000030; 44 44 static const ULONG OFFSET_SBDEPOTSTART = 0x0000003C; 45 static const ULONG OFFSET_SBDEPOTCOUNT = 0x00000040; 45 46 static const ULONG OFFSET_EXTBBDEPOTSTART = 0x00000044; 46 47 static const ULONG OFFSET_EXTBBDEPOTCOUNT = 0x00000048; … … 50 51 static const ULONG OFFSET_PS_PROPERTYTYPE = 0x00000042; 51 52 static const ULONG OFFSET_PS_PREVIOUSPROP = 0x00000044; 52 static const ULONG OFFSET_PS_NEXTPROP = 0x00000048; 53 static const ULONG OFFSET_PS_NEXTPROP = 0x00000048; 53 54 static const ULONG OFFSET_PS_DIRPROP = 0x0000004C; 54 55 static const ULONG OFFSET_PS_GUID = 0x00000050; … … 57 58 static const ULONG OFFSET_PS_TSS2 = 0x0000006C; 58 59 static const ULONG OFFSET_PS_TSD2 = 0x00000070; 59 static const ULONG OFFSET_PS_STARTBLOCK = 0x00000074; 60 static const ULONG OFFSET_PS_SIZE = 0x00000078; 60 static const ULONG OFFSET_PS_STARTBLOCK = 0x00000074; 61 static const ULONG OFFSET_PS_SIZE = 0x00000078; 61 62 static const WORD DEF_BIG_BLOCK_SIZE_BITS = 0x0009; 62 63 static const WORD DEF_SMALL_BLOCK_SIZE_BITS = 0x0006; … … 70 71 71 72 #define PROPERTY_NAME_MAX_LEN 0x20 72 #define PROPERTY_NAME_BUFFER_LEN 0x40 73 #define PROPERTY_NAME_BUFFER_LEN 0x40 73 74 74 75 #define PROPSET_BLOCK_SIZE 0x00000080 … … 142 143 * 143 144 * The big block file is an abstraction of a flat file separated in 144 * same sized blocks. The implementation for the methods described in 145 * same sized blocks. The implementation for the methods described in 145 146 * this section appear in stg_bigblockfile.c 146 147 */ … … 209 210 */ 210 211 ULONG ref; 211 212 /* 213 * Ancestor storage (top level) 214 */ 215 StorageImpl* ancestorStorage; 216 212 213 /* 214 * Ancestor storage (top level) 215 */ 216 StorageImpl* ancestorStorage; 217 217 218 /* 218 219 * Index of the property for the root of … … 220 221 */ 221 222 ULONG rootPropertySetIndex; 222 223 /* 223 224 /* 224 225 * virtual Destructor method. 225 226 */ … … 235 236 REFIID riid, 236 237 void** ppvObject); 237 238 ULONG WINAPI StorageBaseImpl_AddRef( 238 239 ULONG WINAPI StorageBaseImpl_AddRef( 239 240 IStorage* iface); 240 241 ULONG WINAPI StorageBaseImpl_Release( 241 242 ULONG WINAPI StorageBaseImpl_Release( 242 243 IStorage* iface); 243 244 HRESULT WINAPI StorageBaseImpl_OpenStream( 244 245 HRESULT WINAPI StorageBaseImpl_OpenStream( 245 246 IStorage* iface, 246 247 const OLECHAR* pwcsName, /* [string][in] */ 247 248 void* reserved1, /* [unique][in] */ 248 DWORD grfMode, /* [in] */ 249 DWORD reserved2, /* [in] */ 250 IStream** ppstm); /* [out] */ 251 252 HRESULT WINAPI StorageBaseImpl_OpenStorage( 249 DWORD grfMode, /* [in] */ 250 DWORD reserved2, /* [in] */ 251 IStream** ppstm); /* [out] */ 252 253 HRESULT WINAPI StorageBaseImpl_OpenStorage( 253 254 IStorage* iface, 254 const OLECHAR* pwcsName, /* [string][unique][in] */ 255 IStorage* pstgPriority, /* [unique][in] */ 256 DWORD grfMode, /* [in] */ 257 SNB snbExclude, /* [unique][in] */ 258 DWORD reserved, /* [in] */ 259 IStorage** ppstg); /* [out] */ 260 261 HRESULT WINAPI StorageBaseImpl_EnumElements( 255 const OLECHAR* pwcsName, /* [string][unique][in] */ 256 IStorage* pstgPriority, /* [unique][in] */ 257 DWORD grfMode, /* [in] */ 258 SNB snbExclude, /* [unique][in] */ 259 DWORD reserved, /* [in] */ 260 IStorage** ppstg); /* [out] */ 261 262 HRESULT WINAPI StorageBaseImpl_EnumElements( 262 263 IStorage* iface, 263 DWORD reserved1, /* [in] */ 264 void* reserved2, /* [size_is][unique][in] */ 265 DWORD reserved3, /* [in] */ 266 IEnumSTATSTG** ppenum); /* [out] */ 267 268 HRESULT WINAPI StorageBaseImpl_Stat( 264 DWORD reserved1, /* [in] */ 265 void* reserved2, /* [size_is][unique][in] */ 266 DWORD reserved3, /* [in] */ 267 IEnumSTATSTG** ppenum); /* [out] */ 268 269 HRESULT WINAPI StorageBaseImpl_Stat( 269 270 IStorage* iface, 270 STATSTG* pstatstg, /* [out] */ 271 DWORD grfStatFlag); /* [in] */ 271 STATSTG* pstatstg, /* [out] */ 272 DWORD grfStatFlag); /* [in] */ 272 273 273 274 HRESULT WINAPI StorageBaseImpl_RenameElement( … … 304 305 */ 305 306 ULONG ref; 306 struct StorageImpl* ancestorStorage; 307 struct StorageImpl* ancestorStorage; 307 308 ULONG rootPropertySetIndex; 308 309 void (*v_destructor)(struct StorageImpl*); 309 310 310 311 /* 311 312 * The following data members are specific to the Storage32Impl … … 341 342 BlockChainStream* rootBlockChain; 342 343 BlockChainStream* smallBlockDepotChain; 343 BlockChainStream* smallBlockRootChain; 344 BlockChainStream* smallBlockRootChain; 344 345 345 346 /* 346 347 * Pointer to the big block file abstraction 347 348 */ 348 BigBlockFile* bigBlockFile; 349 BigBlockFile* bigBlockFile; 349 350 }; 350 351 351 352 /* 352 353 * Method declaration for the Storage32Impl class 353 */ 354 355 HRESULT WINAPI StorageImpl_CreateStorage( 354 */ 355 356 HRESULT WINAPI StorageImpl_CreateStorage( 356 357 IStorage* iface, 357 const OLECHAR* pwcsName, /* [string][in] */ 358 DWORD grfMode, /* [in] */ 359 DWORD dwStgFmt, /* [in] */ 360 DWORD reserved2, /* [in] */ 361 IStorage** ppstg); /* [out] */ 362 363 HRESULT WINAPI StorageImpl_CopyTo( 358 const OLECHAR* pwcsName, /* [string][in] */ 359 DWORD grfMode, /* [in] */ 360 DWORD dwStgFmt, /* [in] */ 361 DWORD reserved2, /* [in] */ 362 IStorage** ppstg); /* [out] */ 363 364 HRESULT WINAPI StorageImpl_CopyTo( 364 365 IStorage* iface, 365 DWORD ciidExclude, /* [in] */ 366 const IID* rgiidExclude, /* [size_is][unique][in] */ 367 SNB snbExclude, /* [unique][in] */ 368 IStorage* pstgDest); /* [unique][in] */ 369 370 HRESULT WINAPI StorageImpl_MoveElementTo( 366 DWORD ciidExclude, /* [in] */ 367 const IID* rgiidExclude, /* [size_is][unique][in] */ 368 SNB snbExclude, /* [unique][in] */ 369 IStorage* pstgDest); /* [unique][in] */ 370 371 HRESULT WINAPI StorageImpl_MoveElementTo( 371 372 IStorage* iface, 372 const OLECHAR* pwcsName, /* [string][in] */ 373 IStorage* pstgDest, /* [unique][in] */ 374 const OLECHAR* pwcsNewName, /* [string][in] */ 375 DWORD grfFlags); /* [in] */ 376 377 HRESULT WINAPI StorageImpl_Commit( 373 const OLECHAR* pwcsName, /* [string][in] */ 374 IStorage* pstgDest, /* [unique][in] */ 375 const OLECHAR* pwcsNewName, /* [string][in] */ 376 DWORD grfFlags); /* [in] */ 377 378 HRESULT WINAPI StorageImpl_Commit( 378 379 IStorage* iface, 379 DWORD grfCommitFlags); /* [in] */ 380 381 HRESULT WINAPI StorageImpl_Revert( 380 DWORD grfCommitFlags); /* [in] */ 381 382 HRESULT WINAPI StorageImpl_Revert( 382 383 IStorage* iface); 383 384 HRESULT WINAPI StorageImpl_DestroyElement( 384 385 HRESULT WINAPI StorageImpl_DestroyElement( 385 386 IStorage* iface, 386 const OLECHAR* pwcsName); /* [string][in] */ 387 388 HRESULT WINAPI StorageImpl_SetElementTimes( 387 const OLECHAR* pwcsName); /* [string][in] */ 388 389 HRESULT WINAPI StorageImpl_SetElementTimes( 389 390 IStorage* iface, 390 const OLECHAR* pwcsName, /* [string][in] */ 391 const FILETIME* pctime, /* [in] */ 392 const FILETIME* patime, /* [in] */ 393 const FILETIME* pmtime); /* [in] */ 394 395 HRESULT WINAPI StorageImpl_SetStateBits( 391 const OLECHAR* pwcsName, /* [string][in] */ 392 const FILETIME* pctime, /* [in] */ 393 const FILETIME* patime, /* [in] */ 394 const FILETIME* pmtime); /* [in] */ 395 396 HRESULT WINAPI StorageImpl_SetStateBits( 396 397 IStorage* iface, 397 DWORD grfStateBits, /* [in] */ 398 DWORD grfMask); /* [in] */ 398 DWORD grfStateBits, /* [in] */ 399 DWORD grfMask); /* [in] */ 399 400 400 401 HRESULT WINAPI StorageImpl_Stat(IStorage* iface, … … 443 444 ULONG blockIndex); 444 445 445 ULONG StorageImpl_GetNextBlockInChain( 446 StorageImpl* This, 447 ULONG blockIndex); 446 HRESULT StorageImpl_GetNextBlockInChain( 447 StorageImpl* This, 448 ULONG blockIndex, 449 ULONG* nextBlockIndex); 448 450 449 451 void StorageImpl_SetNextBlockInChain( 450 452 StorageImpl* This, 451 453 ULONG blockIndex, 452 ULONG nextBlock);454 ULONG nextBlock); 453 455 454 456 HRESULT StorageImpl_LoadFileHeader( … … 503 505 */ 504 506 ULONG ref; 505 struct StorageImpl* ancestorStorage; 507 struct StorageImpl* ancestorStorage; 506 508 ULONG rootPropertySetIndex; 507 509 void (*v_destructor)(struct StorageInternalImpl*); … … 516 518 */ 517 519 StorageInternalImpl* StorageInternalImpl_Construct( 518 StorageImpl* ancestorStorage, 520 StorageImpl* ancestorStorage, 519 521 ULONG rootTropertyIndex); 520 522 … … 522 524 StorageInternalImpl* This); 523 525 524 HRESULT WINAPI StorageInternalImpl_Commit( 526 HRESULT WINAPI StorageInternalImpl_Commit( 525 527 IStorage* iface, 526 DWORD grfCommitFlags); /* [in] */ 527 528 HRESULT WINAPI StorageInternalImpl_Revert( 528 DWORD grfCommitFlags); /* [in] */ 529 530 HRESULT WINAPI StorageInternalImpl_Revert( 529 531 IStorage* iface); 530 532 … … 541 543 ICOM_VFIELD(IEnumSTATSTG); /* Needs to be the first item in the struct 542 544 * since we want to cast this in a IEnumSTATSTG pointer */ 543 545 544 546 ULONG ref; /* Reference count */ 545 547 StorageImpl* parentStorage; /* Reference to the parent storage */ … … 565 567 REFIID riid, 566 568 void** ppvObject); 567 569 568 570 ULONG WINAPI IEnumSTATSTGImpl_AddRef( 569 IEnumSTATSTG* iface); 570 571 IEnumSTATSTG* iface); 572 571 573 ULONG WINAPI IEnumSTATSTGImpl_Release( 572 574 IEnumSTATSTG* iface); 573 575 574 576 HRESULT WINAPI IEnumSTATSTGImpl_Next( 575 577 IEnumSTATSTG* iface, … … 577 579 STATSTG* rgelt, 578 580 ULONG* pceltFetched); 579 581 580 582 HRESULT WINAPI IEnumSTATSTGImpl_Skip( 581 583 IEnumSTATSTG* iface, 582 584 ULONG celt); 583 585 584 586 HRESULT WINAPI IEnumSTATSTGImpl_Reset( 585 587 IEnumSTATSTG* iface); 586 588 587 589 HRESULT WINAPI IEnumSTATSTGImpl_Clone( 588 590 IEnumSTATSTG* iface, … … 626 628 ICOM_VFIELD(IStream); /* Needs to be the first item in the struct 627 629 * since we want to cast this in a IStream pointer */ 628 630 629 631 /* 630 632 * Reference count … … 656 658 */ 657 659 ULARGE_INTEGER currentPosition; 658 660 659 661 /* 660 662 * The information in the stream is represented by a chain of small blocks … … 682 684 HRESULT WINAPI StgStreamImpl_QueryInterface( 683 685 IStream* iface, 684 REFIID riid, /* [in] */ 685 void** ppvObject); /* [iid_is][out] */ 686 686 REFIID riid, /* [in] */ 687 void** ppvObject); /* [iid_is][out] */ 688 687 689 ULONG WINAPI StgStreamImpl_AddRef( 688 690 IStream* iface); 689 691 690 692 ULONG WINAPI StgStreamImpl_Release( 691 693 IStream* iface); 692 693 HRESULT WINAPI StgStreamImpl_Read( 694 695 HRESULT WINAPI StgStreamImpl_Read( 694 696 IStream* iface, 695 697 void* pv, /* [length_is][size_is][out] */ 696 ULONG cb, /* [in] */ 697 ULONG* pcbRead); /* [out] */ 698 698 ULONG cb, /* [in] */ 699 ULONG* pcbRead); /* [out] */ 700 699 701 HRESULT WINAPI StgStreamImpl_Write( 700 702 IStream* iface, 701 const void* pv, /* [size_is][in] */ 702 ULONG cb, /* [in] */ 703 ULONG* pcbWritten); /* [out] */ 704 705 HRESULT WINAPI StgStreamImpl_Seek( 703 const void* pv, /* [size_is][in] */ 704 ULONG cb, /* [in] */ 705 ULONG* pcbWritten); /* [out] */ 706 707 HRESULT WINAPI StgStreamImpl_Seek( 706 708 IStream* iface, 707 LARGE_INTEGER dlibMove, /* [in] */ 708 DWORD dwOrigin, /* [in] */ 709 LARGE_INTEGER dlibMove, /* [in] */ 710 DWORD dwOrigin, /* [in] */ 709 711 ULARGE_INTEGER* plibNewPosition); /* [out] */ 710 711 HRESULT WINAPI StgStreamImpl_SetSize( 712 713 HRESULT WINAPI StgStreamImpl_SetSize( 712 714 IStream* iface, 713 ULARGE_INTEGER libNewSize); /* [in] */ 714 715 HRESULT WINAPI StgStreamImpl_CopyTo( 715 ULARGE_INTEGER libNewSize); /* [in] */ 716 717 HRESULT WINAPI StgStreamImpl_CopyTo( 716 718 IStream* iface, 717 IStream* pstm, /* [unique][in] */ 718 ULARGE_INTEGER cb, /* [in] */ 719 ULARGE_INTEGER* pcbRead, /* [out] */ 720 ULARGE_INTEGER* pcbWritten); /* [out] */ 721 722 HRESULT WINAPI StgStreamImpl_Commit( 719 IStream* pstm, /* [unique][in] */ 720 ULARGE_INTEGER cb, /* [in] */ 721 ULARGE_INTEGER* pcbRead, /* [out] */ 722 ULARGE_INTEGER* pcbWritten); /* [out] */ 723 724 HRESULT WINAPI StgStreamImpl_Commit( 723 725 IStream* iface, 724 DWORD grfCommitFlags); /* [in] */ 725 726 HRESULT WINAPI StgStreamImpl_Revert( 726 DWORD grfCommitFlags); /* [in] */ 727 728 HRESULT WINAPI StgStreamImpl_Revert( 727 729 IStream* iface); 728 729 HRESULT WINAPI StgStreamImpl_LockRegion( 730 731 HRESULT WINAPI StgStreamImpl_LockRegion( 730 732 IStream* iface, 731 ULARGE_INTEGER libOffset, /* [in] */ 732 ULARGE_INTEGER cb, /* [in] */ 733 DWORD dwLockType); /* [in] */ 734 735 HRESULT WINAPI StgStreamImpl_UnlockRegion( 733 ULARGE_INTEGER libOffset, /* [in] */ 734 ULARGE_INTEGER cb, /* [in] */ 735 DWORD dwLockType); /* [in] */ 736 737 HRESULT WINAPI StgStreamImpl_UnlockRegion( 736 738 IStream* iface, 737 ULARGE_INTEGER libOffset, /* [in] */ 738 ULARGE_INTEGER cb, /* [in] */ 739 DWORD dwLockType); /* [in] */ 740 741 HRESULT WINAPI StgStreamImpl_Stat( 739 ULARGE_INTEGER libOffset, /* [in] */ 740 ULARGE_INTEGER cb, /* [in] */ 741 DWORD dwLockType); /* [in] */ 742 743 HRESULT WINAPI StgStreamImpl_Stat( 742 744 IStream* iface, 743 745 STATSTG* pstatstg, /* [out] */ 744 DWORD grfStatFlag); /* [in] */ 745 746 HRESULT WINAPI StgStreamImpl_Clone( 746 DWORD grfStatFlag); /* [in] */ 747 748 HRESULT WINAPI StgStreamImpl_Clone( 747 749 IStream* iface, 748 IStream** ppstm); /* [out] */ 750 IStream** ppstm); /* [out] */ 749 751 750 752 751 753 /******************************************************************************** 752 754 * The StorageUtl_ functions are miscelaneous utility functions. Most of which are 753 * abstractions used to read values from file buffers without having to worry 755 * abstractions used to read values from file buffers without having to worry 754 756 * about bit order 755 757 */ … … 785 787 */ 786 788 BlockChainStream* BlockChainStream_Construct( 787 StorageImpl* parentStorage, 789 StorageImpl* parentStorage, 788 790 ULONG* headOfStreamPlaceHolder, 789 791 ULONG propertyIndex); … … 835 837 */ 836 838 SmallBlockChainStream* SmallBlockChainStream_Construct( 837 StorageImpl* parentStorage, 839 StorageImpl* parentStorage, 838 840 ULONG propertyIndex); 839 841 … … 844 846 SmallBlockChainStream* This); 845 847 846 ULONGSmallBlockChainStream_GetNextBlockInChain(848 HRESULT SmallBlockChainStream_GetNextBlockInChain( 847 849 SmallBlockChainStream* This, 848 ULONG blockIndex); 850 ULONG blockIndex, 851 ULONG* nextBlockIndex); 849 852 850 853 void SmallBlockChainStream_SetNextBlockInChain( … … 886 889 887 890 #endif /* __STORAGE32_H__ */ 888 889 890
Note:
See TracChangeset
for help on using the changeset viewer.
