home *** CD-ROM | disk | FTP | other *** search
/ Tricks of the Windows Gam…ming Gurus (2nd Edition) / Disc2.iso / msdn_vcb / samples / vc98 / sdk / com / tutsamp / marshal2 / micars.idl < prev   
Text File  |  1997-08-05  |  2KB  |  69 lines

  1. /*+==========================================================================
  2.   File:      MICARS.IDL
  3.  
  4.   Summary:   Interface definition file for use by the MIDL compiler.
  5.              Specifies the following custom interfaces: ICar, IUtility,
  6.              and ICruise. Part of the MARSHAL and MARSHAL2 code samples
  7.              which is used by later code samples in the series (eg, the
  8.              LOCSERVE, LOCCLIEN, APTSERVE, APTCLIEN, and REMCLIEN
  9.              samples).
  10.  
  11.              Compilation of this file using the MIDL.EXE compiler
  12.              generates additional source files MICARS.H, MICARS_I.C,
  13.              MICARS_P.C, and DLLDATA.C.  They are in turn compiled in the
  14.              Makefile to produce the marshaling server which is used by
  15.              later code samples to provide standard marshaling for the
  16.              ICar, IUtility, and ICruise custom interfaces.
  17.  
  18.   Origin:    6-9-97: atrent - Revised for MARSHAL and MARSHAL2.
  19.  
  20. ----------------------------------------------------------------------------
  21.   This file is part of the Microsoft COM Tutorial Code Samples.
  22.  
  23.   Copyright (C) Microsoft Corporation, 1997.  All rights reserved.
  24.  
  25.   This source code is intended only as a supplement to Microsoft
  26.   Development Tools and/or on-line documentation.  See these other
  27.   materials for detailed information regarding Microsoft code samples.
  28.  
  29.   THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY
  30.   KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
  31.   IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A
  32.   PARTICULAR PURPOSE.
  33. ==========================================================================+*/
  34.  
  35. [uuid(0002da00-0000-0000-c000-000000000046),
  36.     object
  37. ]
  38. interface ICar : IUnknown
  39. {
  40.   import "unknwn.idl";
  41.  
  42.   HRESULT Shift([in] short nGear);
  43.   HRESULT Clutch([in] short nEngaged);
  44.   HRESULT Speed([in] short nMph);
  45.   HRESULT Steer([in] short nAngle);
  46. }
  47.  
  48. [uuid(0002da01-0000-0000-c000-000000000046),
  49.     object
  50. ]
  51. interface IUtility : IUnknown
  52. {
  53.   import "unknwn.idl";
  54.  
  55.   HRESULT Offroad([in] short nGear);
  56.   HRESULT Winch([in] short nRpm);
  57. }
  58.  
  59. [uuid(0002da02-0000-0000-c000-000000000046),
  60.     object
  61. ]
  62. interface ICruise : IUnknown
  63. {
  64.   import "unknwn.idl";
  65.  
  66.   HRESULT Engage([in] BOOL bOnOff);
  67.   HRESULT Adjust([in] BOOL bUpDown);
  68. }
  69.