home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / odtlktv4.zip / ODTLKT / TOOLKIT / IDL / SEMTINTF.IDL < prev    next >
Text File  |  1995-12-13  |  8KB  |  203 lines

  1. /********************************************************************/
  2. /*  Licensed Materials - Property of IBM                            */
  3. /*                                                                  */
  4. /*                                                                  */
  5. /* Copyright (C) International Business Machines Corp., 1994.       */
  6. /* Copyright (C) Apple Computer, Inc., 1994                         */
  7. /*                                                                  */
  8. /*  US Government Users Restricted Rights -                         */
  9. /*  Use, duplication, or disclosure restricted                      */
  10. /*  by GSA ADP Schedule Contract with IBM Corp.                     */
  11. /*                                                                  */
  12. /*                                                                  */
  13. /********************************************************************/
  14.  
  15.  
  16. #ifndef _SEMTINTF_
  17. #define _SEMTINTF_
  18.  
  19. #ifndef _SEMTINTB_
  20. #include "SemtIntB.idl"
  21. #endif
  22.  
  23. #ifndef _ODTYPESM_
  24. #include "ODTypesM.idl"
  25. #endif
  26.  
  27. #ifndef _CMSU_
  28. #include <CMSU.idl>
  29. #endif
  30.  
  31. //==============================================================================
  32. // Classes defined in this interface
  33. //==============================================================================
  34.  
  35. interface   ODSemanticInterface;
  36.  
  37. //==============================================================================
  38. // Classes used by this interface
  39. //==============================================================================
  40.  
  41. interface   ODPart;
  42. interface   ODHandler;
  43. interface   ODSession;
  44. interface   ODNameResolver;
  45.  
  46. //==============================================================================
  47. // Structs defined by this class
  48. //==============================================================================
  49.  
  50. //===============================================================================
  51. // Implementation Types
  52. //===============================================================================
  53.  typedef ODULong       AEKeyword;
  54.  typedef ODULong       ODEventHandlerUPP;
  55.  typedef ODULong       ODCoercionHandlerUPP;
  56.  typedef ODULong       ODObjectAccessorUPP;
  57.  typedef ODULong       ODSpecialHandlerUPP;
  58.  typedef ODULong       ODCountUPP;
  59.  typedef ODULong       ODCompareUPP;
  60.  typedef ODULong       ODDisposeTokenUPP;
  61.  typedef ODULong       ODGetErrDescUPP;
  62.  typedef ODULong       ODGetMarkTokenUPP;
  63.  typedef ODULong       ODMarkUPP;
  64.  typedef ODULong       ODAdjustMarksUPP;
  65.  typedef ODULong       ODPreDispatchUPP;
  66.  typedef ODULong       UniversalProcPtr;
  67. // typedef ULONG         DescType;
  68.  
  69. //==============================================================================
  70. // ODSemanticInterface
  71. //==============================================================================
  72.  
  73. interface ODSemanticInterface : ODBaseSemanticInterface
  74. {
  75.   void InitSemanticInterface     (in    ODPart                       base,
  76.                                   in    ODSession                    session);
  77.  
  78. #ifdef _PLATFORM_OS2_
  79.   void InstallEventHandler       (in    ODEventClass                 theAEEventClass,
  80.                                   in    ODEventID                    theAEEventID,
  81.                                   in    ODEventHandlerUPP            handler,
  82.                                   in    ODSLong                      handlerRefCon);
  83.  
  84.   void InstallCoercionHandler    (in    ODDescType                   fromType,
  85.                                   in    ODDescType                   toType,
  86.                                   in    ODCoercionHandlerUPP         handler,
  87.                                   in    ODSLong                      handlerRefCon,
  88.                                   in    ODBoolean                    fromTypeIsDesc);
  89.  
  90.   void InstallObjectAccessor     (in    ODDescType                   desiredClass,
  91.                                   in    ODDescType                   containerType,
  92.                                   in    ODObjectAccessorUPP          theAccessor,
  93.                                   in    ODSLong                      accessorRefcon);
  94.  
  95.   void InstallSpecialHandler     (in    AEKeyword                    functionClass,
  96.                                   in    ODSpecialHandlerUPP          handler,
  97.                                   in    ODSLong                      refCon);
  98.   void      RemoveEventHandler   (in    ODEventClass                 theAEEventClass,
  99.                                   in    ODEventID                    theAEEventID,
  100.                                   in    ODEventHandlerUPP            handler);
  101.   void      RemoveSpecialHandler (in    AEKeyword                    functionClass,
  102.                                   in    ODSpecialHandlerUPP          handler);
  103.   void      RemoveObjectAccessor (in    ODDescType                   desiredClass,
  104.                                   in    ODDescType                   containerType,
  105.                                   in    ODObjectAccessorUPP          theAccessor);
  106.   void      RemoveCoercionHandler(in    ODDescType                   fromType,
  107.                                   in    ODDescType                   toType,
  108.                                   in    ODCoercionHandlerUPP         handler);
  109.   void InstallCompareProc        (in  ODCompareUPP       compareProc,      in ODSLong  refCon);
  110.   void InstallCountProc          (in  ODCountUPP         countProc,        in ODSLong  refCon);
  111.   void InstallDisposeTokenProc   (in  ODDisposeTokenUPP  disposeTokenProc, in ODSLong  refCon);
  112.   void InstallGetErrDescProc     (in  ODGetErrDescUPP    errorDescProc,    in ODSLong  refCon);
  113.   void InstallGetMarkTokenProc   (in  ODGetMarkTokenUPP  getMarkTokenProc, in ODSLong  refCon);
  114.   void InstallMarkProc           (in  ODMarkUPP          markProc,         in ODSLong  refCon);
  115.   void InstallAdjustMarksProc    (in  ODAdjustMarksUPP   adjustMarksProc,  in ODSLong  refCon);
  116.  
  117.  
  118. #endif    // _PLATFORM_OS2_
  119.  
  120. #ifdef __SOMIDL__
  121.   implementation
  122.   {
  123.       functionprefix = ODSemanticInterface;
  124.     override:
  125.       somInit,
  126.       somUninit,
  127.       CallEventHandler,
  128.       CallCoercionHandler,
  129.       CallObjectAccessor,
  130.       CallPredispatchProc,
  131.       CallCompareProc,
  132.       CallCountProc,
  133.       CallDisposeTokenProc,
  134.       CallGetErrDescProc,
  135.       CallGetMarkTokenProc,
  136.       CallMarkProc,
  137.       CallAdjustMarksProc;
  138.     releaseorder:
  139.       InitSemanticInterface,
  140. #ifdef _PLATFORM_OS2_
  141.       InstallEventHandler,
  142.       InstallCoercionHandler,
  143.       InstallObjectAccessor,
  144.       InstallSpecialHandler,
  145.       RemoveSpecialHandler,
  146.       RemoveEventHandler,
  147.       RemoveObjectAccessor,
  148.       RemoveCoercionHandler,
  149.       InstallCompareProc,
  150.       InstallCountProc,
  151.       InstallDisposeTokenProc,
  152.       InstallGetErrDescProc,
  153.       InstallGetMarkTokenProc,
  154.       InstallMarkProc,
  155.       InstallAdjustMarksProc,
  156.       Reserved1,
  157.       Reserved2,
  158.       Reserved3,
  159.       Reserved4,
  160.       Reserved5,
  161.       Reserved6,
  162.       Reserved7,
  163.       Reserved8,
  164.       Reserved9,
  165.       Reserved10,
  166.       Reserved11,
  167.       Reserved12;
  168.  
  169. #endif // _PLATFORM_OS2_
  170.  
  171. #ifdef _PLATFORM_OS2_
  172.     passthru  C_xh  =  ""
  173. "#ifndef _ODTYPES_"
  174. "#include <ODTypes.h>"
  175. "#endif"
  176. "#include <sitypes.h>"
  177. "// end of passthru statements";
  178.  
  179.     passthru  C_hh  =  ""
  180. "#ifndef _ODTYPES_"
  181. "#include <ODTypes.h>"
  182. "#endif"
  183. "#include <sitypes.h>"
  184. "// end of passthru statements";
  185.  
  186. //      InstallPredispatchHandler,
  187. //      InstallCompareHandler,
  188. //      InstallCountHandler,
  189. //      InstallDisposeTokenHandler,
  190. //      InstallGetErrDescHandler,
  191. //      InstallGetMarkTokenHandler,
  192. //      InstallMarkHandler,
  193. //      InstallAdjustMarksHandler,
  194.  
  195.  
  196. #endif // _PLATFORM_OS2_
  197.  
  198.    };
  199. #endif // __SOMIDL__
  200. };
  201.  
  202. #endif // _SEMTINTF_
  203.