home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / opendc12.zip / od124os2.exe / od12otk1.exe / include / StorageU.idl < prev    next >
Text File  |  1997-04-02  |  7KB  |  238 lines

  1. /* @(#)Z 1.4 com/src/storage/idl/StorageU.idl, odstorage, od96os2, odos29712d 97/03/21 17:20:14 (96/10/29 09:33:16) */
  2. //#====START_GENERATED_PROLOG======================================
  3. //#
  4. //#
  5. //#   COMPONENT_NAME: odstorage
  6. //#
  7. //#   CLASSES: none
  8. //#
  9. //#   ORIGINS: 82,27
  10. //#
  11. //#
  12. //#   (C) COPYRIGHT International Business Machines Corp. 1995,1996
  13. //#   All Rights Reserved
  14. //#   Licensed Materials - Property of IBM
  15. //#   US Government Users Restricted Rights - Use, duplication or
  16. //#   disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
  17. //#       
  18. //#   IBM DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
  19. //#   ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
  20. //#   PURPOSE. IN NO EVENT SHALL IBM BE LIABLE FOR ANY SPECIAL, INDIRECT OR
  21. //#   CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF
  22. //#   USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
  23. //#   OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE
  24. //#   OR PERFORMANCE OF THIS SOFTWARE.
  25. //#
  26. //#====END_GENERATED_PROLOG========================================
  27. //#
  28.  
  29. //#    Copyright:    (r) 1993-1994 by Apple Computer, Inc., all rights reserved.
  30.  
  31. #ifndef _STORAGEU_
  32. #define _STORAGEU_
  33.  
  34. #ifndef _REFCTOBJ_
  35. #include "RefCtObj.idl"
  36. #endif
  37.  
  38. //==============================================================================
  39. // Classes defined in this interface
  40. //==============================================================================
  41. interface   ODStorageUnit;
  42.  
  43. //==============================================================================
  44. // Classes used by this interface
  45. //==============================================================================
  46. interface   ODDraft;
  47. interface   ODSession;
  48. interface   ODPart;
  49. interface   ODStorageUnitCursor;
  50. interface   ODStorageUnitView;
  51. interface   ODStorageUnitRefIterator;
  52.  
  53. //==============================================================================
  54. // ODStorageUnit
  55. //==============================================================================
  56.  
  57. interface ODStorageUnit :  ODRefCntObject 
  58. {
  59.     ODDraft        GetDraft();
  60.     
  61.     ODSession    GetSession();
  62.     
  63.     ODBoolean    Exists(in ODPropertyName propertyName,
  64.                     in ODValueType valueType, 
  65.                     in ODValueIndex valueIndex);
  66.     
  67.     ODBoolean  ExistsWithCursor(in ODStorageUnitCursor cursor);
  68.     
  69.     ODULong  CountProperties();
  70.     
  71.     ODULong  CountValues();
  72.     
  73.     ODStorageUnit   Focus(in ODPropertyName propertyName,
  74.                             in ODPositionCode propertyPosCode,
  75.                             in ODValueType valueType,
  76.                             in ODValueIndex valueIndex,
  77.                             in ODPositionCode  valuePosCode);
  78.     
  79.     ODStorageUnit   FocusWithCursor(in ODStorageUnitCursor cursor);
  80.         
  81.     ODStorageUnit   Externalize();
  82.     
  83.     ODStorageUnit   Internalize();
  84.     
  85.     ODID      GetID();
  86.     
  87.     ODStorageUnitName GetName();
  88.     
  89.     void SetName(in ODStorageUnitName name);
  90.     
  91.     ODStorageUnit   AddProperty(in ODPropertyName propertyName);
  92.     
  93.     ODStorageUnit  AddValue(in ODValueType type);
  94.     
  95.     ODStorageUnit   Remove();
  96.     
  97.     void      CloneInto(in ODDraftKey key,
  98.                         in ODStorageUnit destStorageUnit,
  99.                         in ODID scopeID);
  100.     
  101.     ODStorageUnitView   CreateView();
  102.     
  103.     ODStorageUnitCursor    CreateCursorWithFocus();
  104.     
  105.     ODStorageUnitCursor CreateCursor(in ODPropertyName propertyName,
  106.                                     in ODValueType valueType,
  107.                                     in ODValueIndex valueIndex);
  108.     
  109.     ODPropertyName  GetProperty();
  110.     
  111.     ODValueType  GetType();
  112.     
  113.     void      SetType(in ODValueType valueType);
  114.     
  115.     void      SetOffset(in ODULong offset);
  116.     
  117.     ODULong    GetOffset();
  118.     
  119.     ODULong    GetValue(in ODULong length, out ODByteArray value);
  120.     
  121.     void      SetValue(in ODByteArray value);
  122.     
  123.     void      InsertValue(in ODByteArray value);
  124.     
  125.     void      DeleteValue(in ODULong length);
  126.     
  127.     ODULong    GetSize();
  128.     
  129.     ODBoolean    IsValidStorageUnitRef(in ODStorageUnitRef aRef);
  130.     
  131.     void GetStrongStorageUnitRef(in ODStorageUnitID embeddedSUID, out ODStorageUnitRef strongRef);
  132.     
  133.     void GetWeakStorageUnitRef(in ODStorageUnitID embeddedSUID, out ODStorageUnitRef weakRef);
  134.     
  135.     ODBoolean    IsStrongStorageUnitRef(in ODStorageUnitRef ref);
  136.     
  137.     ODBoolean    IsWeakStorageUnitRef(in ODStorageUnitRef ref);
  138.     
  139.     ODStorageUnit   RemoveStorageUnitRef(in ODStorageUnitRef aRef);
  140.     
  141.     ODStorageUnitID  GetIDFromStorageUnitRef(in ODStorageUnitRef aRef);
  142.     
  143.     ODStorageUnitRefIterator  CreateStorageUnitRefIterator();
  144.  
  145.     void     SetStorageUnitRef(in ODStorageUnitID embeddedSUID,
  146.                                             in ODStorageUnitRef ref);
  147.     
  148.     ODULong      GetGenerationNumber();
  149.     
  150.     ODULong      IncrementGenerationNumber();
  151.     
  152.     ODBoolean  IsPromiseValue();
  153.     
  154.     void    SetPromiseValue(in ODValueType valueType, 
  155.                             in ODULong offset,
  156.                             in ODByteArray value, 
  157.                               in ODPart sourcePart);
  158.     
  159.     ODULong  GetPromiseValue(in ODValueType valueType,
  160.                             in ODULong offset,
  161.                             in ODULong length,
  162.                             out ODByteArray value,
  163.                             out ODPart sourcePart);
  164.     
  165.     void    ClearAllPromises();
  166.     
  167.     void    ResolveAllPromises();
  168.     
  169.     ODStorageUnitKey  Lock(in ODStorageUnitKey key);
  170.     
  171.     void        Unlock(in ODStorageUnitKey key);
  172. #ifdef __SOMIDL__
  173.   implementation
  174.   {
  175.     majorversion = 1; minorversion = 0;
  176.       functionprefix = ODStorageUnit;
  177.     override:
  178.         somUninit,
  179.         Acquire,
  180.         Release,
  181.         Purge;
  182.     releaseorder:
  183.         reserved1,
  184.         GetDraft,
  185.         GetSession,
  186.         Exists,
  187.         ExistsWithCursor,
  188.         CountProperties,
  189.         CountValues,
  190.         Focus,
  191.         FocusWithCursor,
  192.         Externalize,
  193.         Internalize,
  194.         GetID,
  195.         GetName,
  196.         SetName,
  197.         AddProperty,
  198.         AddValue,
  199.         Remove,
  200.         CloneInto,
  201.         CreateView,
  202.         CreateCursor,
  203.         CreateCursorWithFocus,
  204.         GetProperty,
  205.         GetType,
  206.         SetType,
  207.         SetOffset,
  208.         GetOffset,
  209.         GetValue,
  210.         SetValue,
  211.         InsertValue,
  212.         DeleteValue,
  213.         GetSize,
  214.         IsValidStorageUnitRef,
  215.         GetStrongStorageUnitRef,
  216.         GetWeakStorageUnitRef,
  217.         IsStrongStorageUnitRef,
  218.         IsWeakStorageUnitRef,
  219.         RemoveStorageUnitRef,
  220.         GetIDFromStorageUnitRef,
  221.         CreateStorageUnitRefIterator,
  222.          SetStorageUnitRef,
  223.         GetGenerationNumber,
  224.         IncrementGenerationNumber,
  225.         IsPromiseValue,
  226.         SetPromiseValue,
  227.         GetPromiseValue,
  228.         ClearAllPromises,
  229.         ResolveAllPromises,
  230.         Lock,
  231.         Unlock;
  232.   };
  233. #endif
  234. };
  235.  
  236. #endif  // _STORAGEU_
  237.  
  238.