Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

61 lines
1.3 KiB

  1. // Base class
  2. [abstract]
  3. class __COMTaxonomy
  4. {
  5. };
  6. // Used by GetCLSIDArrayForIID
  7. class __COMInterfaceSet : __COMTaxonomy // what was __ComMethodSet (otherwise unchanged)
  8. {
  9. [key]
  10. string CLSID;
  11. string Name;
  12. string IID[];
  13. string IIDNames[];
  14. };
  15. // Used by GetCLSIDArrayForNames
  16. class __COMDispatchElement : __COMTaxonomy // this models a DispatchId/Name mapping
  17. {
  18. [key]
  19. string CLSID;
  20. [key]
  21. string dispID; // the Dispatch ID of the Method
  22. [description("")]
  23. string sName; // Name (description is the localizable equivalent)
  24. string sNamedArguments []; // for named method args only
  25. string sArgumentDispIDs []; // Dispatch IDs of named args
  26. };
  27. // Used by GetCLSIDArrayForIID
  28. // ASSOCIATORS OF Path WHERE RETURNCLASS="__COMInterfaceSet"
  29. [assocation]
  30. class __COMInterfaceSetToClassBinding
  31. {
  32. [key]
  33. __COMInterfaceSet ref interfaceSet;
  34. [key]
  35. object ref TargetClass;
  36. };
  37. // Used by GetCLSIDArrayForNames
  38. // ASSOCIATORS OF Path WHERE RETURNCLASS="__COMDispatchElement"
  39. [association]
  40. class __COMDispatchElementToClassBinding // models binding of a late-bound property/method to a class
  41. {
  42. [key]
  43. __COMDispatchElement ref dispatchElement;
  44. [key]
  45. object ref TargetClass;
  46. };
  47. // Used by GetCLSIDArrayForNames
  48. // SAFEARRAY will contain array of instances of this class
  49. class __COMDispatchInfo
  50. {
  51. [key]
  52. string CLSID;
  53. [key]
  54. string dispID;
  55. string sArgumentDispIDs[];
  56. };